06:14:38.856 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 06:14:38.856 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 06:14:38.856 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 06:14:38.857 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 06:14:38.857 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 06:14:38.860 [debug] QUERY OK source="oban_jobs" db=0.7ms queue=20.1ms idle=0.0ms UPDATE "oban_jobs" AS o0 SET "state" = ? WHERE (o0."state" = 'executing') ["retryable"] 06:14:38.860 [info] Reset 0 executing jobs 06:14:38.861 [info] Creating blank file: /config/extras/cookies.txt 06:14:38.865 [info] Creating blank file: /config/extras/yt-dlp-configs/base-config.txt 06:14:38.867 [info] Creating blank file and making it executable: /config/extras/user-scripts/lifecycle 06:14:38.872 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 06:14:40.071 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2025.09.26 06:14:40.071 [info] [command_wrapper]: /usr/local/bin/apprise called with: --version 06:14:40.306 [debug] [command_wrapper]: /usr/local/bin/apprise called with: --version exited: 0 with: Apprise v1.9.4 Copyright (C) 2025 Chris Caron This code is licensed under the BSD 2-Clause License. 06:14:40.308 [debug] QUERY OK source="settings" db=1.1ms queue=0.1ms idle=1447.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:40.311 [debug] QUERY OK source="settings" db=2.8ms queue=0.1ms idle=1449.0ms UPDATE "settings" SET "yt_dlp_version" = ? WHERE "id" = ? ["2025.09.26", 1] 06:14:40.313 [debug] QUERY OK source="settings" db=1.7ms queue=0.1ms idle=1452.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:40.316 [debug] QUERY OK source="settings" db=1.7ms queue=0.7ms idle=1454.5ms UPDATE "settings" SET "apprise_version" = ? WHERE "id" = ? ["v1.9.4", 1] 06:14:40.318 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:14:40.323 [info] {"message":"notifier only receiving messages from its own node, functionality may be degraded","source":"oban","event":"notifier:switch","connectivity_status":"solitary"} 06:14:40.344 [info] Running PinchflatWeb.Endpoint with cowboy 2.13.0 at 0.0.0.0:8945 (http) 06:14:40.346 [info] Access PinchflatWeb.Endpoint at http://localhost:8945 06:14:40.362 [info] {"args":{},"id":1,"meta":{},"system_time":1773033280362433044,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","event":"job:start","attempt":1,"tags":["local_data"]} 06:14:40.362 [info] Updating yt-dlp 06:14:40.362 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update 06:14:41.083 [info] GET / 06:14:41.083 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 06:14:41.086 [debug] QUERY OK source="settings" db=2.1ms idle=772.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:41.087 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=773.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:41.088 [debug] QUERY OK source="media_profiles" db=0.3ms idle=771.2ms SELECT 1 FROM "media_profiles" AS m0 LIMIT 1 [] 06:14:41.088 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=737.0ms SELECT 1 FROM "sources" AS s0 LIMIT 1 [] 06:14:41.089 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=727.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:41.090 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=3.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:41.094 [info] Sent 200 in 10ms 06:14:41.834 [debug] Tzdata polling for update. 06:14:42.009 [info] tzdata release in place is from a file last modified Thu, 16 Jan 2025 17:10:51 GMT. Release file on server was last modified Mon, 02 Mar 2026 15:21:37 GMT. 06:14:42.010 [debug] Tzdata downloading new data from https://data.iana.org/time-zones/tzdata-latest.tar.gz 06:14:42.199 [debug] Tzdata data downloaded. Release version 2026a. 06:14:43.047 [info] Tzdata has updated the release from 2025a to 2026a 06:14:43.047 [debug] Tzdata deleting ETS table for version 2025a 06:14:43.049 [debug] Tzdata deleting ETS table file for version 2025a 06:14:44.800 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update exited: 0 with: Current version: stable@2025.09.26 from yt-dlp/yt-dlp Latest version: stable@2026.03.03 from yt-dlp/yt-dlp Current Build Hash: d2f07382138f4bd882254996502636f5a67a8c5ee5ab8a25807e2784a4878642 Updating to stable@2026.03.03 from yt-dlp/yt-dlp ... Updated yt-dlp to stable@2026.03.03 from yt-dlp/yt-dlp 06:14:44.800 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 06:14:45.611 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2026.03.03 06:14:45.611 [debug] QUERY OK source="settings" db=0.2ms idle=772.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:45.612 [debug] QUERY OK source="settings" db=0.5ms idle=773.1ms UPDATE "settings" SET "yt_dlp_version" = ? WHERE "id" = ? ["2026.03.03", 1] 06:14:45.614 [info] {"args":{},"id":1,"meta":{},"state":"success","max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","duration":5249838,"event":"job:stop","queue_time":358414,"attempt":1,"tags":["local_data"]} 06:14:50.149 [info] GET /media_profiles/new 06:14:50.149 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.new/2 Parameters: %{} Pipelines: [:browser] 06:14:50.150 [debug] QUERY OK source="settings" db=0.6ms idle=1311.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:50.151 [debug] QUERY OK source="settings" db=0.1ms idle=1312.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:50.151 [debug] QUERY OK source="settings" db=0.3ms idle=1312.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:50.152 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1313.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:14:50.155 [info] Sent 200 in 5ms 06:15:00.325 [info] {"source":"oban","duration":309,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:15:10.325 [info] {"source":"oban","duration":670,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:15:40.326 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:00.324 [info] {"source":"oban","duration":200,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:16:10.327 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:31.213 [info] POST /media_profiles 06:16:31.214 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.create/2 Parameters: %{"_csrf_token" => "VD87ECI9OQx6VQs9XHcjIC5MMH0mMxs2fLhHvEVOWensq1DOj4T7TeDz", "media_profile" => %{"audio_track" => "", "download_auto_subs" => "false", "download_metadata" => "true", "download_nfo" => "true", "download_source_images" => "true", "download_subs" => "true", "download_thumbnail" => "true", "embed_metadata" => "true", "embed_subs" => "true", "embed_thumbnail" => "true", "livestream_behaviour" => "exclude", "media_container" => "", "name" => "Youtube", "output_path_template" => "/youtube/{{ source_custom_name }}/{{ season_by_year__episode_by_date_and_index }} - {{ title }}.{{ ext }}", "preferred_resolution" => "1080p", "redownload_delay_days" => "1", "shorts_behaviour" => "exclude", "sponsorblock_behaviour" => "disabled", "sub_langs" => "en"}, "media_profile_preset" => ""} Pipelines: [:browser] 06:16:31.215 [debug] QUERY OK source="media_profiles" db=1.2ms idle=1296.8ms INSERT INTO "media_profiles" ("name","output_path_template","sponsorblock_categories","sponsorblock_behaviour","download_thumbnail","embed_thumbnail","download_auto_subs","download_subs","embed_subs","sub_langs","preferred_resolution","download_metadata","embed_metadata","download_nfo","download_source_images","livestream_behaviour","redownload_delay_days","shorts_behaviour","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18,?19,?20) RETURNING "id" ["Youtube", "/youtube/{{ source_custom_name }}/{{ season_by_year__episode_by_date_and_index }} - {{ title }}.{{ ext }}", [], :disabled, true, true, false, true, true, "en", :"1080p", true, true, true, true, :exclude, 1, :exclude, ~U[2026-03-09 05:16:31Z], ~U[2026-03-09 05:16:31Z]] 06:16:31.216 [debug] QUERY OK source="settings" db=0.2ms idle=1298.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:16:31.216 [info] Sent 302 in 2ms 06:16:31.221 [info] GET / 06:16:31.221 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{"onboarding" => "1"} Pipelines: [:browser] 06:16:31.221 [debug] QUERY OK source="settings" db=0.2ms idle=1304.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:16:31.222 [debug] QUERY OK source="media_profiles" db=0.4ms idle=1304.5ms SELECT 1 FROM "media_profiles" AS m0 LIMIT 1 [] 06:16:31.223 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=612.0ms SELECT 1 FROM "sources" AS s0 LIMIT 1 [] 06:16:31.223 [debug] QUERY OK source="settings" db=0.0ms idle=7.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:16:31.223 [debug] QUERY OK source="settings" db=0.1ms idle=7.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:16:31.225 [info] Sent 200 in 3ms 06:16:40.409 [info] {"source":"oban","duration":704,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:40.837 [info] GET /sources/new 06:16:40.837 [debug] Processing with PinchflatWeb.Sources.SourceController.new/2 Parameters: %{} Pipelines: [:browser] 06:16:40.837 [debug] QUERY OK source="media_profiles" db=0.1ms queue=0.1ms idle=1920.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 06:16:40.838 [debug] QUERY OK source="settings" db=0.3ms idle=1920.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:16:40.838 [debug] QUERY OK source="settings" db=0.1ms idle=1210.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:16:40.839 [debug] QUERY OK source="settings" db=0.2ms idle=429.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:16:40.839 [debug] QUERY OK source="settings" db=0.1ms idle=210.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:16:40.842 [info] Sent 200 in 5ms 06:17:00.405 [info] {"source":"oban","duration":247,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:17:10.410 [info] {"source":"oban","duration":917,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:17:40.411 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:18:00.404 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:18:10.412 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:18:40.414 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:19:00.404 [info] {"source":"oban","duration":801,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:19:10.415 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:19:40.416 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:00.403 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:20:10.416 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:40.416 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:21:00.403 [info] {"source":"oban","duration":435,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:21:10.419 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:21:40.419 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:00.402 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:22:10.419 [info] {"source":"oban","duration":452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:14.549 [info] POST /sources 06:22:14.550 [debug] Processing with PinchflatWeb.Sources.SourceController.create/2 Parameters: %{"_csrf_token" => "fx8yFWE5CyIcZjo-FDJRGTwnMAsRAAAbMlaM5Ada1V_p9t6vx_TAcV_W", "download_cutoff_date_preset" => "", "source" => %{"cookie_behaviour" => "disabled", "custom_name" => "Requiem", "download_cutoff_date" => "", "download_media" => "true", "fast_index" => "false", "index_frequency_minutes" => "1440", "max_duration_seconds" => "", "media_profile_id" => "1", "min_duration_seconds" => "", "original_url" => "https://www.youtube.com/watch?v=c2LMN62NYdY&list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k", "output_path_template_override" => "", "retention_period_days" => "", "title_filter_regex" => ""}} Pipelines: [:browser] 06:22:14.551 [debug] QUERY OK source="media_profiles" db=0.6ms queue=0.1ms idle=598.0ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 06:22:14.552 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=599.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:14.552 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=599.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:14.552 [debug] QUERY OK source="settings" db=0.0ms queue=0.1ms idle=600.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:14.553 [debug] QUERY OK source="settings" db=0.0ms idle=276.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:14.555 [info] Sent 200 in 6ms 06:22:40.420 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:47.537 [info] POST /sources 06:22:47.538 [debug] Processing with PinchflatWeb.Sources.SourceController.create/2 Parameters: %{"_csrf_token" => "XxpkdQwMNyljCCEPQw5UFX0NAi9AHCoOmi7-XtXjN8DAnH3z9ufe2JuB", "download_cutoff_date_preset" => "", "source" => %{"cookie_behaviour" => "disabled", "custom_name" => "Requiem", "download_cutoff_date" => "", "download_media" => "true", "fast_index" => "false", "index_frequency_minutes" => "1440", "max_duration_seconds" => "", "media_profile_id" => "1", "min_duration_seconds" => "", "original_url" => "https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg", "output_path_template_override" => "", "retention_period_days" => "", "title_filter_regex" => ""}} Pipelines: [:browser] 06:22:47.538 [debug] Running yt-dlp command for action: get_source_details 06:22:47.540 [debug] QUERY OK source="settings" db=0.1ms idle=1589.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:47.540 [debug] QUERY OK source="settings" db=0.2ms idle=1589.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:47.541 [debug] QUERY OK source="settings" db=0.1ms idle=1590.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:47.541 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg --simulate --skip-download --ignore-no-formats-error --playlist-end 1 --print-to-file %(.{channel,channel_id,playlist_id,playlist_title,filename})j /tmp/pinchflat/data/10/59/1059691bb901b0c8022d21a5bc42c77cf8280a06a8d61b545358e52310c4c966.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:22:51.454 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg --simulate --skip-download --ignore-no-formats-error --playlist-end 1 --print-to-file %(.{channel,channel_id,playlist_id,playlist_title,filename})j /tmp/pinchflat/data/10/59/1059691bb901b0c8022d21a5bc42c77cf8280a06a8d61b545358e52310c4c966.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:22:51.458 [debug] QUERY OK source="sources" db=3.3ms idle=1110.0ms INSERT INTO "sources" ("enabled","uuid","fast_index","download_media","collection_id","original_url","media_profile_id","custom_name","collection_name","collection_type","index_frequency_minutes","cookie_behaviour","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14) RETURNING "id" [true, "91371044-2e1d-4fe4-8fe7-eae989cebf36", false, true, "PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k", "https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg", 1, "Requiem", "Resident Evil Requiem", :playlist, 1440, :disabled, ~U[2026-03-09 05:22:51Z], ~U[2026-03-09 05:22:51Z]] 06:22:51.459 [debug] QUERY OK source="tasks" db=0.4ms idle=508.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."worker" LIKE ?) AND (o1."state" IN (?,?,?,?)) [1, "%.MediaCollectionIndexingWorker", "available", "scheduled", "retryable", "executing"] 06:22:51.464 [debug] QUERY OK source="tasks" db=3.1ms idle=115.1ms INSERT INTO "tasks" ("job_id","source_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2, 1, ~U[2026-03-09 05:22:51Z], ~U[2026-03-09 05:22:51Z]] 06:22:51.468 [debug] QUERY OK source="tasks" db=2.2ms idle=6.8ms INSERT INTO "tasks" ("job_id","source_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [3, 1, ~U[2026-03-09 05:22:51Z], ~U[2026-03-09 05:22:51Z]] 06:22:51.468 [debug] QUERY OK source="settings" db=0.2ms idle=8.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:51.468 [info] Sent 302 in 3931ms 06:22:51.473 [info] {"args":{"id":1},"id":3,"meta":{},"system_time":1773033771476486485,"max_attempts":3,"queue":"remote_metadata","worker":"Pinchflat.Metadata.SourceMetadataStorageWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_source","source_metadata","remote_metadata","show_in_dashboard"]} 06:22:51.474 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=9.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:22:51.474 [info] GET / 06:22:51.474 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{"onboarding" => "1"} Pipelines: [:browser] 06:22:51.475 [debug] QUERY OK source="source_metadata" db=0.1ms queue=0.2ms idle=6.3ms SELECT s0."id", s0."metadata_filepath", s0."fanart_filepath", s0."poster_filepath", s0."banner_filepath", s0."source_id", s0."inserted_at", s0."updated_at", s0."source_id" FROM "source_metadata" AS s0 WHERE (s0."source_id" = ?) [1] 06:22:51.475 [debug] QUERY OK source="settings" db=0.4ms idle=6.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:51.475 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.5ms idle=8.5ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:22:51.475 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.3ms SELECT 1 FROM "media_profiles" AS m0 LIMIT 1 [] 06:22:51.476 [debug] Running yt-dlp command for action: get_source_details 06:22:51.476 [debug] QUERY OK source="sources" db=0.5ms idle=1.8ms SELECT 1 FROM "sources" AS s0 LIMIT 1 [] 06:22:51.477 [debug] QUERY OK source="settings" db=0.1ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:51.477 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:51.477 [debug] QUERY OK source="settings" db=0.2ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:51.478 [info] Sent 200 in 4ms 06:22:51.478 [debug] QUERY OK source="settings" db=0.8ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:51.479 [debug] QUERY OK source="settings" db=0.1ms idle=2.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:51.479 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg --simulate --skip-download --ignore-no-formats-error --playlist-end 1 --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file %(.{channel,channel_id,playlist_id,playlist_title,filename})j /tmp/pinchflat/data/3a/b7/3ab700237bd3bce93386458086657cc4233d7e6dbf67bc1c422815adefe0b91d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:22:52.355 [info] {"args":{"id":1},"id":2,"meta":{},"system_time":1773033772358641879,"max_attempts":20,"queue":"media_collection_indexing","worker":"Pinchflat.SlowIndexing.MediaCollectionIndexingWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_source","media_collection_indexing","show_in_dashboard"]} 06:22:52.355 [debug] QUERY OK source="sources" db=0.1ms idle=877.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:22:52.356 [debug] QUERY OK source="settings" db=0.2ms idle=877.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:52.357 [debug] QUERY OK source="media_items" db=0.2ms queue=0.2ms idle=877.4ms SELECT count(*) FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:22:52.357 [debug] QUERY OK source="media_items" db=0.0ms queue=0.1ms idle=8.0ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 06:22:52.357 [debug] QUERY OK source="media_profiles" db=0.2ms idle=2.0ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:22:52.358 [debug] QUERY OK source="settings" db=0.2ms idle=2.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:52.358 [debug] QUERY OK source="settings" db=0.1ms idle=2.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:52.360 [debug] Running yt-dlp command for action: get_media_attributes_for_collection 06:22:52.360 [debug] Current batch of media processed. Will check again in 1000ms 06:22:52.360 [debug] QUERY OK source="settings" db=0.3ms queue=0.2ms idle=3.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:52.361 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=3.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:52.361 [debug] QUERY OK source="settings" db=0.2ms idle=3.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:52.361 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --print-to-file %(.{id,title,live_status,original_url,description,aspect_ratio,duration,upload_date,timestamp,playlist_index,filename})j /tmp/pinchflat/data/0d/86/0d86a6bb39848d56d749ed97028d7c981f7402c6d38661bdf11beba470d1e32a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:22:53.361 [debug] Current batch of media processed. Will check again in 1000ms 06:22:54.362 [debug] Current batch of media processed. Will check again in 1000ms 06:22:55.363 [debug] Current batch of media processed. Will check again in 1000ms 06:22:55.702 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg --simulate --skip-download --ignore-no-formats-error --playlist-end 1 --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file %(.{channel,channel_id,playlist_id,playlist_title,filename})j /tmp/pinchflat/data/3a/b7/3ab700237bd3bce93386458086657cc4233d7e6dbf67bc1c422815adefe0b91d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:22:55.702 [debug] Running yt-dlp command for action: get_source_metadata 06:22:55.703 [debug] QUERY OK source="settings" db=0.1ms idle=1752.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:55.703 [debug] QUERY OK source="settings" db=0.1ms idle=1753.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:55.704 [debug] QUERY OK source="settings" db=0.2ms idle=1753.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:55.704 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg --skip-download --convert-thumbnails jpg --output /tmp/pinchflat/data/772a643ace585a8d/source_image.%(ext)S --write-thumbnail --playlist-items 1 --print-to-file playlist:%()j /tmp/pinchflat/data/21/2c/212ca96572c23b9ec9699f4a3854fce2d1d98e0adcf6c8dbc878f0c2f00e56f2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:22:56.364 [debug] Current batch of media processed. Will check again in 1000ms 06:22:57.366 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "Resident Evil Requiem Remake Walkhthrough Gameplay Part 4 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "duration" => 5565, "filename" => "/downloads/youtube/Requiem/Season 2026/s2026e030100 - Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT.mp4", "id" => "c2LMN62NYdY", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=c2LMN62NYdY", "playlist_index" => 1, "timestamp" => 1772393512, "title" => "Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT", "upload_date" => "20260301"} 06:22:57.366 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1010.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" IN (?)) [1] 06:22:57.367 [debug] QUERY OK source="sources" db=0.1ms idle=416.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:22:57.367 [debug] QUERY OK source="media_items" db=0.1ms queue=0.2ms idle=416.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-03-01 19:31:52Z], 1] 06:22:57.375 [debug] QUERY OK source="media_items" db=7.0ms idle=417.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","media_id","duration_seconds","livestream","original_url","playlist_index","predicted_media_filepath","prevent_culling","prevent_download","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "original_url" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Resident Evil Requiem Remake Walkhthrough Gameplay Part 4 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT", "f47bef4a-5ce1-408e-8969-3cda2e2bd020", "c2LMN62NYdY", 5565, false, "https://www.youtube.com/watch?v=c2LMN62NYdY", 1, "/downloads/youtube/Requiem/Season 2026/s2026e030100 - Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT.mp4", false, false, false, 1, [], 0, ~U[2026-03-01 19:31:52Z], ~U[2026-03-09 05:22:57Z], ~U[2026-03-09 05:22:57Z], "Resident Evil Requiem Remake Walkhthrough Gameplay Part 4 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT", "c2LMN62NYdY", 5565, false, "https://www.youtube.com/watch?v=c2LMN62NYdY", "/downloads/youtube/Requiem/Season 2026/s2026e030100 - Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT.mp4", false, 1, ~U[2026-03-01 19:31:52Z]] 06:22:57.376 [debug] QUERY OK source="sources" db=0.2ms idle=16.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:22:57.376 [debug] QUERY OK source="media_profiles" db=0.1ms idle=9.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:22:57.377 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=9.3ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [1] 06:22:57.377 [info] Kicking off download for media item #1 (c2LMN62NYdY) 06:22:57.382 [debug] QUERY OK source="tasks" db=2.1ms idle=3.6ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [4, 1, ~U[2026-03-09 05:22:57Z], ~U[2026-03-09 05:22:57Z]] 06:22:57.382 [debug] Current batch of media processed. Will check again in 1000ms 06:22:57.387 [info] {"args":{"id":1},"id":4,"meta":{},"system_time":1773033777390241311,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:22:57.387 [debug] QUERY OK source="media_items" db=0.0ms queue=0.1ms idle=9.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [1] 06:22:57.404 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:22:57.405 [debug] QUERY OK source="sources" db=0.2ms idle=26.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:22:57.405 [debug] QUERY OK source="media_profiles" db=0.2ms idle=25.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:22:57.406 [debug] QUERY OK source="media_items" db=0.3ms idle=24.0ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [1] 06:22:57.407 [debug] QUERY OK source="media_metadata" db=0.0ms idle=20.2ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [1] 06:22:57.407 [debug] QUERY OK source="media_profiles" db=0.2ms idle=20.0ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:22:57.408 [debug] QUERY OK source="settings" db=0.0ms idle=2.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:57.408 [debug] QUERY OK source="settings" db=0.0ms idle=2.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:57.418 [debug] Running yt-dlp command for action: get_downloadable_status 06:22:57.419 [debug] QUERY OK source="settings" db=0.0ms idle=12.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:57.419 [debug] QUERY OK source="settings" db=0.2ms idle=12.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:57.419 [debug] QUERY OK source="settings" db=0.0ms idle=12.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:57.420 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=c2LMN62NYdY --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/78/12/7812ec3214ccc2655ac8284d14708ccc3b6522f93776990f46b0751b60e0a2b4.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:22:58.383 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "Resident Evil Requiem Remake Walkhthrough Gameplay Part 3 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "duration" => 9038, "filename" => "/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.NA", "id" => "yhGhv6TRUcA", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=yhGhv6TRUcA", "playlist_index" => 2, "timestamp" => 1772302241, "title" => "Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY", "upload_date" => "20260228"} 06:22:58.383 [debug] QUERY OK source="sources" db=0.4ms idle=974.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" IN (?)) [1] 06:22:58.384 [debug] QUERY OK source="sources" db=0.2ms idle=964.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:22:58.384 [debug] QUERY OK source="media_items" db=0.4ms idle=964.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-02-28 18:10:41Z], 1] 06:22:58.393 [debug] QUERY OK source="media_items" db=8.5ms idle=965.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","media_id","duration_seconds","livestream","original_url","playlist_index","predicted_media_filepath","prevent_culling","prevent_download","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "original_url" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Resident Evil Requiem Remake Walkhthrough Gameplay Part 3 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY", "5f4dff14-59dc-4a77-92bf-87d712b5a38a", "yhGhv6TRUcA", 9038, false, "https://www.youtube.com/watch?v=yhGhv6TRUcA", 2, "/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.NA", false, false, false, 1, [], 0, ~U[2026-02-28 18:10:41Z], ~U[2026-03-09 05:22:58Z], ~U[2026-03-09 05:22:58Z], "Resident Evil Requiem Remake Walkhthrough Gameplay Part 3 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY", "yhGhv6TRUcA", 9038, false, "https://www.youtube.com/watch?v=yhGhv6TRUcA", "/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.NA", false, 1, ~U[2026-02-28 18:10:41Z]] 06:22:58.394 [debug] QUERY OK source="sources" db=0.3ms idle=33.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:22:58.394 [debug] QUERY OK source="media_profiles" db=0.1ms idle=10.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:22:58.395 [debug] QUERY OK source="media_items" db=0.4ms idle=10.6ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [2] 06:22:58.395 [info] Kicking off download for media item #2 (yhGhv6TRUcA) 06:22:58.400 [debug] QUERY OK source="tasks" db=2.3ms queue=0.1ms idle=3.2ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [5, 2, ~U[2026-03-09 05:22:58Z], ~U[2026-03-09 05:22:58Z]] 06:22:58.400 [debug] Current batch of media processed. Will check again in 1000ms 06:22:58.405 [info] {"args":{"id":2},"id":5,"meta":{},"system_time":1773033778408232971,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:22:58.405 [debug] QUERY OK source="media_items" db=0.3ms idle=9.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 06:22:58.406 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:22:58.406 [debug] QUERY OK source="sources" db=0.1ms idle=9.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:22:58.406 [debug] QUERY OK source="media_profiles" db=0.2ms idle=8.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:22:58.407 [debug] QUERY OK source="media_items" db=0.2ms idle=6.8ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [2] 06:22:58.408 [debug] QUERY OK source="media_metadata" db=0.1ms queue=0.1ms idle=3.1ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [2] 06:22:58.408 [debug] QUERY OK source="media_profiles" db=0.3ms idle=2.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:22:58.409 [debug] QUERY OK source="settings" db=0.2ms idle=2.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:58.409 [debug] QUERY OK source="settings" db=0.1ms idle=2.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:58.410 [debug] Running yt-dlp command for action: get_downloadable_status 06:22:58.411 [debug] QUERY OK source="settings" db=0.2ms idle=4.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:58.412 [debug] QUERY OK source="settings" db=0.1ms idle=3.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:58.412 [debug] QUERY OK source="settings" db=0.1ms idle=3.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:58.412 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f2/36/f236880805524d29e07cd0ba306a8aea1035b18ee482d6f3a07f28e3148af032.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:22:59.400 [debug] Current batch of media processed. Will check again in 1000ms 06:23:00.267 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg --skip-download --convert-thumbnails jpg --output /tmp/pinchflat/data/772a643ace585a8d/source_image.%(ext)S --write-thumbnail --playlist-items 1 --print-to-file playlist:%()j /tmp/pinchflat/data/21/2c/212ca96572c23b9ec9699f4a3854fce2d1d98e0adcf6c8dbc878f0c2f00e56f2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:23:00.338 [debug] QUERY OK db=0.0ms queue=0.1ms idle=974.9ms begin [] 06:23:00.338 [debug] QUERY OK source="sources" db=0.1ms UPDATE "sources" SET "nfo_filepath" = ?, "poster_filepath" = ?, "series_directory" = ?, "updated_at" = ? WHERE "id" = ? ["/downloads/youtube/Requiem/tvshow.nfo", "/downloads/youtube/Requiem/poster.jpg", "/downloads/youtube/Requiem", ~U[2026-03-09 05:23:00Z], 1] 06:23:00.338 [debug] QUERY OK source="source_metadata" db=0.4ms INSERT INTO "source_metadata" ("metadata_filepath","source_id","poster_filepath","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5) RETURNING "id" ["/config/metadata/sources/1/metadata.json.gz", 1, "/config/metadata/sources/1/poster.jpg", ~U[2026-03-09 05:23:00Z], ~U[2026-03-09 05:23:00Z]] 06:23:00.342 [debug] QUERY OK db=2.9ms commit [] 06:23:00.343 [info] {"args":{"id":1},"id":3,"meta":{},"state":"success","max_attempts":3,"queue":"remote_metadata","worker":"Pinchflat.Metadata.SourceMetadataStorageWorker","source":"oban","duration":8868808,"event":"job:stop","queue_time":471637,"attempt":1,"tags":["media_source","source_metadata","remote_metadata","show_in_dashboard"]} 06:23:00.401 [debug] Current batch of media processed. Will check again in 1000ms 06:23:00.401 [info] {"source":"oban","duration":195,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:23:00.813 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f2/36/f236880805524d29e07cd0ba306a8aea1035b18ee482d6f3a07f28e3148af032.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:23:00.813 [error] yt-dlp download error for media item #2: "ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies\n" 06:23:00.820 [debug] QUERY OK source="media_items" db=6.6ms queue=0.1ms idle=471.9ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies\n", ~U[2026-03-09 05:23:00Z], 2] 06:23:00.820 [error] yt-dlp download will not be retried: "ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies\n" 06:23:00.822 [info] {"args":{"id":2},"id":5,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2415948,"event":"job:stop","queue_time":403731,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:23:01.310 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=c2LMN62NYdY --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/78/12/7812ec3214ccc2655ac8284d14708ccc3b6522f93776990f46b0751b60e0a2b4.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:23:01.310 [debug] Running yt-dlp command for action: download 06:23:01.311 [debug] QUERY OK source="settings" db=0.2ms idle=946.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:01.311 [debug] QUERY OK source="settings" db=0.2ms idle=909.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:01.311 [debug] QUERY OK source="settings" db=0.1ms idle=490.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:01.312 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=c2LMN62NYdY --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/a9/7c/a97cc766f31353ac14a95b9d8f7b285d4cd1d680fe675e83eecf4a822176412f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:23:01.402 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "Resident Evil Requiem Remake Walkhthrough Gameplay Part 2 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "duration" => 6041, "filename" => "/downloads/youtube/Requiem/Season 2026/s2026e022700 - Resident Evil Requiem - Part 2 - THE GIRL.mp4", "id" => "DH-S91JmVvs", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=DH-S91JmVvs", "playlist_index" => 3, "timestamp" => 1772210236, "title" => "Resident Evil Requiem - Part 2 - THE GIRL", "upload_date" => "20260227"} 06:23:01.403 [debug] QUERY OK source="sources" db=0.6ms idle=573.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" IN (?)) [1] 06:23:01.404 [debug] QUERY OK source="sources" db=0.2ms idle=92.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:23:01.404 [debug] QUERY OK source="media_items" db=0.4ms idle=92.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-02-27 16:37:16Z], 1] 06:23:01.414 [debug] QUERY OK source="media_items" db=9.4ms idle=93.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","media_id","duration_seconds","livestream","original_url","playlist_index","predicted_media_filepath","prevent_culling","prevent_download","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "original_url" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Resident Evil Requiem Remake Walkhthrough Gameplay Part 2 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 2 - THE GIRL", "994b1fdf-df7f-482d-95aa-3afd2f1243ff", "DH-S91JmVvs", 6041, false, "https://www.youtube.com/watch?v=DH-S91JmVvs", 3, "/downloads/youtube/Requiem/Season 2026/s2026e022700 - Resident Evil Requiem - Part 2 - THE GIRL.mp4", false, false, false, 1, [], 0, ~U[2026-02-27 16:37:16Z], ~U[2026-03-09 05:23:01Z], ~U[2026-03-09 05:23:01Z], "Resident Evil Requiem Remake Walkhthrough Gameplay Part 2 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 2 - THE GIRL", "DH-S91JmVvs", 6041, false, "https://www.youtube.com/watch?v=DH-S91JmVvs", "/downloads/youtube/Requiem/Season 2026/s2026e022700 - Resident Evil Requiem - Part 2 - THE GIRL.mp4", false, 1, ~U[2026-02-27 16:37:16Z]] 06:23:01.415 [debug] QUERY OK source="sources" db=0.4ms idle=49.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:23:01.415 [debug] QUERY OK source="media_profiles" db=0.1ms idle=11.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:23:01.417 [debug] QUERY OK source="media_items" db=0.9ms idle=11.8ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [3] 06:23:01.417 [info] Kicking off download for media item #3 (DH-S91JmVvs) 06:23:01.422 [debug] QUERY OK source="tasks" db=2.3ms idle=4.1ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [6, 3, ~U[2026-03-09 05:23:01Z], ~U[2026-03-09 05:23:01Z]] 06:23:01.422 [debug] Current batch of media processed. Will check again in 1000ms 06:23:01.427 [info] {"args":{"id":3},"id":6,"meta":{},"system_time":1773033781430170981,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:23:01.427 [debug] QUERY OK source="media_items" db=0.1ms idle=10.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [3] 06:23:01.427 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:23:01.428 [debug] QUERY OK source="sources" db=0.2ms idle=10.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:23:01.428 [debug] QUERY OK source="media_profiles" db=0.2ms idle=8.8ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:23:01.429 [debug] QUERY OK source="media_items" db=0.2ms idle=6.8ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [3] 06:23:01.430 [debug] QUERY OK source="media_metadata" db=0.0ms idle=3.1ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [3] 06:23:01.430 [debug] QUERY OK source="media_profiles" db=0.4ms idle=2.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:23:01.431 [debug] QUERY OK source="settings" db=0.2ms idle=2.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:01.431 [debug] QUERY OK source="settings" db=0.1ms idle=2.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:01.432 [debug] Running yt-dlp command for action: get_downloadable_status 06:23:01.434 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=4.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:01.434 [debug] QUERY OK source="settings" db=0.1ms idle=3.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:01.434 [debug] QUERY OK source="settings" db=0.0ms idle=3.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:01.434 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=DH-S91JmVvs --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/11/f7/11f7ade4a93dc420b6b072a334c8fe9f30821272af7d63077469600a8af79a3f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:23:02.422 [debug] Current batch of media processed. Will check again in 1000ms 06:23:03.423 [debug] Current batch of media processed. Will check again in 1000ms 06:23:04.424 [debug] Current batch of media processed. Will check again in 1000ms 06:23:04.629 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --print-to-file %(.{id,title,live_status,original_url,description,aspect_ratio,duration,upload_date,timestamp,playlist_index,filename})j /tmp/pinchflat/data/0d/86/0d86a6bb39848d56d749ed97028d7c981f7402c6d38661bdf11beba470d1e32a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:23:04.629 [debug] Gracefully stopping file follower 06:23:04.630 [debug] QUERY OK source="sources" db=0.3ms idle=1679.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" IN (?)) [1] 06:23:04.630 [debug] QUERY OK source="sources" db=0.4ms idle=1679.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:23:04.632 [debug] QUERY OK source="media_items" db=1.0ms idle=1680.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-03-01 19:31:52Z], 1] 06:23:04.642 [debug] QUERY OK source="media_items" db=9.4ms idle=1262.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","media_id","duration_seconds","livestream","original_url","playlist_index","predicted_media_filepath","prevent_culling","prevent_download","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "original_url" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Resident Evil Requiem Remake Walkhthrough Gameplay Part 4 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT", "cff761aa-ab29-48f5-9f3e-c30b1e81e5da", "c2LMN62NYdY", 5565, false, "https://www.youtube.com/watch?v=c2LMN62NYdY", 1, "/downloads/youtube/Requiem/Season 2026/s2026e030100 - Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT.mp4", false, false, false, 1, [], 1, ~U[2026-03-01 19:31:52Z], ~U[2026-03-09 05:23:04Z], ~U[2026-03-09 05:23:04Z], "Resident Evil Requiem Remake Walkhthrough Gameplay Part 4 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT", "c2LMN62NYdY", 5565, false, "https://www.youtube.com/watch?v=c2LMN62NYdY", "/downloads/youtube/Requiem/Season 2026/s2026e030100 - Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT.mp4", false, 1, ~U[2026-03-01 19:31:52Z]] 06:23:04.643 [debug] QUERY OK source="sources" db=0.6ms idle=271.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:23:04.643 [debug] QUERY OK source="media_items" db=0.7ms idle=12.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-02-28 18:10:41Z], 1] 06:23:04.652 [debug] QUERY OK source="media_items" db=7.6ms idle=13.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","media_id","duration_seconds","livestream","original_url","playlist_index","predicted_media_filepath","prevent_culling","prevent_download","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "original_url" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Resident Evil Requiem Remake Walkhthrough Gameplay Part 3 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY", "4c8c6597-d46e-46c1-ab4e-58e132db3b32", "yhGhv6TRUcA", 9038, false, "https://www.youtube.com/watch?v=yhGhv6TRUcA", 2, "/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.NA", false, false, false, 1, [], 1, ~U[2026-02-28 18:10:41Z], ~U[2026-03-09 05:23:04Z], ~U[2026-03-09 05:23:04Z], "Resident Evil Requiem Remake Walkhthrough Gameplay Part 3 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY", "yhGhv6TRUcA", 9038, false, "https://www.youtube.com/watch?v=yhGhv6TRUcA", "/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.NA", false, 1, ~U[2026-02-28 18:10:41Z]] 06:23:04.652 [debug] QUERY OK source="sources" db=0.5ms idle=20.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:23:04.653 [debug] QUERY OK source="media_items" db=0.5ms idle=11.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-02-27 16:37:16Z], 1] 06:23:04.663 [debug] QUERY OK source="media_items" db=8.8ms idle=11.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","media_id","duration_seconds","livestream","original_url","playlist_index","predicted_media_filepath","prevent_culling","prevent_download","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "original_url" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Resident Evil Requiem Remake Walkhthrough Gameplay Part 2 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 2 - THE GIRL", "170841c7-e1df-444d-ac7d-6ea782287f38", "DH-S91JmVvs", 6041, false, "https://www.youtube.com/watch?v=DH-S91JmVvs", 3, "/downloads/youtube/Requiem/Season 2026/s2026e022700 - Resident Evil Requiem - Part 2 - THE GIRL.mp4", false, false, false, 1, [], 1, ~U[2026-02-27 16:37:16Z], ~U[2026-03-09 05:23:04Z], ~U[2026-03-09 05:23:04Z], "Resident Evil Requiem Remake Walkhthrough Gameplay Part 2 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 2 - THE GIRL", "DH-S91JmVvs", 6041, false, "https://www.youtube.com/watch?v=DH-S91JmVvs", "/downloads/youtube/Requiem/Season 2026/s2026e022700 - Resident Evil Requiem - Part 2 - THE GIRL.mp4", false, 1, ~U[2026-02-27 16:37:16Z]] 06:23:04.664 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=19.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:23:04.664 [debug] QUERY OK source="media_items" db=0.5ms idle=12.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-02-26 13:15:01Z], 1] 06:23:04.674 [debug] QUERY OK source="media_items" db=8.5ms idle=12.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","media_id","duration_seconds","livestream","original_url","playlist_index","predicted_media_filepath","prevent_culling","prevent_download","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "original_url" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Resident Evil Requiem Remake Walkhthrough Gameplay Part 1 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 1 - A NEW HORROR BEGINS..", "a0c06a8a-9894-4d12-83cf-d077fa8eb3e7", "B-dIs7yb1EQ", 10144, false, "https://www.youtube.com/watch?v=B-dIs7yb1EQ", 4, "/downloads/youtube/Requiem/Season 2026/s2026e022600 - Resident Evil Requiem - Part 1 - A NEW HORROR BEGINS...mp4", false, false, false, 1, [], 0, ~U[2026-02-26 13:15:01Z], ~U[2026-03-09 05:23:04Z], ~U[2026-03-09 05:23:04Z], "Resident Evil Requiem Remake Walkhthrough Gameplay Part 1 (Full Game) 4K 60FPS. Resident Evil Requiem full game walkthrough from beginning to ending which includes full game review, first impressions, all upgrades, all weapons, all boss fights, all cutscenes and more.\n\nResident Evil Requiem Full Playlist:\nhttps://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=95DsMkAUZpof_Et2\n\nThank you Capcom For The Free Copy.\n\nReturn once again to the city of disaster and despair.\nA midwestern city in the United States and the headquarters for the former global pharmaceutical company, Umbrella.\nIn the face of the zombie outbreak in 1998, the government approved a sterilization operation, a missile strike on the city in an attempt to quickly bring the situation under control—but this was swiftly covered up.\n\n\nSubscribe: http://bit.ly/sub2hollowpoiint\nTwitter: https://twitter.com/HollowPoiint\nInstagram: http://instagram.com/HollowPoiint\nFacebook: https://Facebook.com/HollowPoiint\n\nGfuel: Use code HOLLOW at https://gfuel.com/\nAstro Headsets: Use code HOLLOW at https://astro.family/HollowPoiint\nLogitech: Click Link For Discount http://bit.ly/2Lnqkjd\nKontrol Freek: Use code HOLLOW at http://kontrolfreek.pro/hKRFoO\n#ResidentEvil4Remake #ResidentEvil4 #Walkthrough\n▶FAN MAIL Address:\n6800 SW 40th St Number 282 \nMiami FL 33155", "Resident Evil Requiem - Part 1 - A NEW HORROR BEGINS..", "B-dIs7yb1EQ", 10144, false, "https://www.youtube.com/watch?v=B-dIs7yb1EQ", "/downloads/youtube/Requiem/Season 2026/s2026e022600 - Resident Evil Requiem - Part 1 - A NEW HORROR BEGINS...mp4", false, 1, ~U[2026-02-26 13:15:01Z]] 06:23:04.675 [debug] QUERY OK source="sources" db=1.0ms idle=20.6ms UPDATE "sources" SET "last_indexed_at" = ?, "updated_at" = ? WHERE "id" = ? [~U[2026-03-09 05:23:04Z], ~U[2026-03-09 05:23:04Z], 1] 06:23:04.677 [debug] QUERY OK source="media_items" db=1.1ms queue=0.2ms idle=12.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:23:04.683 [debug] QUERY OK source="tasks" db=3.0ms idle=5.2ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [7, 2, ~U[2026-03-09 05:23:04Z], ~U[2026-03-09 05:23:04Z]] 06:23:04.690 [debug] QUERY OK source="tasks" db=2.9ms idle=6.6ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [8, 7, ~U[2026-03-09 05:23:04Z], ~U[2026-03-09 05:23:04Z]] 06:23:04.690 [debug] QUERY OK source="media_items" db=0.3ms idle=6.4ms SELECT count(*) FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:23:04.691 [debug] QUERY OK source="media_items" db=0.4ms idle=5.9ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 06:23:04.691 [info] No notification servers provided for source 1 06:23:04.697 [debug] QUERY OK source="tasks" db=2.6ms idle=4.4ms INSERT INTO "tasks" ("job_id","source_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [9, 1, ~U[2026-03-09 05:23:04Z], ~U[2026-03-09 05:23:04Z]] 06:23:04.698 [info] {"args":{"id":1},"id":2,"meta":{},"state":"success","max_attempts":20,"queue":"media_collection_indexing","worker":"Pinchflat.SlowIndexing.MediaCollectionIndexingWorker","source":"oban","duration":12341997,"event":"job:stop","queue_time":894115,"attempt":1,"tags":["media_source","media_collection_indexing","show_in_dashboard"]} 06:23:05.448 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=DH-S91JmVvs --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/11/f7/11f7ade4a93dc420b6b072a334c8fe9f30821272af7d63077469600a8af79a3f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:23:05.448 [debug] Running yt-dlp command for action: download 06:23:05.449 [debug] QUERY OK source="settings" db=0.3ms idle=754.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:05.449 [debug] QUERY OK source="settings" db=0.1ms idle=751.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:05.449 [debug] QUERY OK source="settings" db=0.3ms idle=750.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:05.450 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=DH-S91JmVvs --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/61/a0/61a061394841ec1602e0919bd07f79e513691cc4b6fc729bcf2f3ac673c21ace.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:23:10.420 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:23:14.430 [info] GET / 06:23:14.430 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{"onboarding" => "0"} Pipelines: [:browser] 06:23:14.431 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=1479.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:14.434 [debug] QUERY OK source="settings" db=2.8ms idle=1042.1ms UPDATE "settings" SET "onboarding" = ? WHERE "id" = ? [false, 1] 06:23:14.435 [debug] QUERY OK source="settings" db=0.3ms idle=483.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:14.435 [debug] QUERY OK source="media_profiles" db=0.0ms queue=0.1ms idle=484.3ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 06:23:14.435 [debug] QUERY OK source="sources" db=0.0ms queue=0.1ms idle=44.3ms SELECT count(s0."id") FROM "sources" AS s0 [] 06:23:14.436 [debug] QUERY OK source="media_items" db=0.0ms queue=0.1ms idle=4.4ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:23:14.436 [debug] QUERY OK source="media_items" db=0.2ms queue=0.2ms idle=1.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:23:14.437 [debug] QUERY OK source="settings" db=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:14.437 [debug] QUERY OK source="settings" db=0.2ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:14.438 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=2.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:14.441 [debug] QUERY OK source="tasks" db=2.6ms idle=3.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:23:14.442 [debug] QUERY OK source="media_items" db=0.2ms idle=5.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [1, 3] 06:23:14.444 [debug] QUERY OK source="media_items" db=0.0ms queue=0.2ms idle=6.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:23:14.445 [debug] QUERY OK source="media_items" db=0.3ms queue=0.3ms idle=6.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:23:14.446 [debug] QUERY OK source="media_items" db=0.1ms queue=0.2ms idle=7.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:23:14.447 [debug] QUERY OK source="media_items" db=0.4ms queue=0.3ms idle=4.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:23:14.447 [debug] QUERY OK source="sources" db=0.2ms idle=5.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:23:14.450 [info] Sent 200 in 20ms 06:23:14.480 [info] CONNECTED TO Phoenix.LiveView.Socket in 41µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "fgAlHWwAKAZ0A10cYDErICAhDTAUZRYILsvE8xGEY38RMwLOdYizf3ID", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:23:14.505 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "downloaded"} 06:23:14.506 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=61.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:23:14.507 [debug] QUERY OK source="media_items" db=0.5ms idle=61.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:23:14.507 [debug] Replied in 1ms 06:23:14.509 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "pending"} 06:23:14.511 [debug] QUERY OK source="media_items" db=1.5ms queue=0.1ms idle=63.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:23:14.512 [debug] QUERY OK source="media_items" db=1.2ms idle=64.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:23:14.514 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=65.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:23:14.514 [debug] Replied in 5ms 06:23:14.519 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:23:14.520 [debug] QUERY OK source="tasks" db=0.4ms idle=13.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:23:14.522 [debug] QUERY OK source="media_items" db=1.0ms queue=0.1ms idle=13.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [1, 3] 06:23:14.522 [debug] Replied in 3ms 06:23:14.526 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:23:14.526 [debug] Replied in 260µs 06:23:40.420 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:00.400 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:24:10.420 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:38.773 [notice] :alarm_handler: {:set, {:system_memory_high_watermark, []}} 06:24:40.422 [info] {"source":"oban","duration":665,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:25:00.400 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:25:10.423 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:25:40.423 [info] {"source":"oban","duration":770,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:26:00.400 [info] {"source":"oban","duration":227,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:26:10.424 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:26:40.425 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:27:00.398 [info] {"source":"oban","duration":239,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:27:10.425 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:27:40.426 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:00.397 [info] {"source":"oban","duration":185,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:28:10.426 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:33.691 [info] GET /settings 06:28:33.691 [debug] Processing with PinchflatWeb.Settings.SettingController.show/2 Parameters: %{} Pipelines: [:browser] 06:28:33.693 [debug] QUERY OK source="settings" db=0.6ms queue=0.1ms idle=1718.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:33.694 [debug] QUERY OK source="settings" db=0.5ms queue=0.2ms idle=1719.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:33.695 [debug] QUERY OK source="settings" db=1.0ms queue=0.2ms idle=1720.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:33.697 [debug] QUERY OK source="settings" db=0.5ms queue=0.2ms idle=1590.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:33.700 [info] Sent 200 in 8ms 06:28:33.747 [info] CONNECTED TO Phoenix.LiveView.Socket in 39µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "YzoVHQ0TBiEfRD8caDYSPXwJVQwcJ2c7QIFEYkib2tZREpuR8q1Fnq8w", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:28:33.759 [debug] MOUNT Pinchflat.Settings.AppriseServerLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "value" => nil} 06:28:33.759 [debug] Replied in 336µs 06:28:33.761 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:28:33.761 [debug] Replied in 188µs 06:28:40.426 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:47.451 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=c2LMN62NYdY --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/a9/7c/a97cc766f31353ac14a95b9d8f7b285d4cd1d680fe675e83eecf4a822176412f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:28:47.479 [debug] Running yt-dlp command for action: download_thumbnail 06:28:47.481 [debug] QUERY OK source="settings" db=0.1ms idle=1346.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:47.481 [debug] QUERY OK source="settings" db=0.3ms idle=508.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:47.482 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=509.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:47.482 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=c2LMN62NYdY --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/1/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/05/d0/05d035ce923e634721f13b8374e90ac615af45de5067ee21a976be0086e53dfa.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:28:52.149 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=c2LMN62NYdY --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/1/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/05/d0/05d035ce923e634721f13b8374e90ac615af45de5067ee21a976be0086e53dfa.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:28:52.149 [debug] QUERY OK db=0.2ms idle=1176.7ms begin [] 06:28:52.200 [debug] QUERY OK source="media_items" db=50.4ms UPDATE "media_items" SET "media_downloaded_at" = ?, "media_filepath" = ?, "metadata_filepath" = ?, "nfo_filepath" = ?, "thumbnail_filepath" = ?, "updated_at" = ? WHERE "id" = ? [~U[2026-03-09 05:28:47Z], "/downloads/youtube/Requiem/Season 2026/s2026e030100 - Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT.mp4", "/downloads/youtube/Requiem/Season 2026/s2026e030100 - Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT.info.json", "/downloads/youtube/Requiem/Season 2026/s2026e030100 - Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT.nfo", "/downloads/youtube/Requiem/Season 2026/s2026e030100 - Resident Evil Requiem - Part 4 - RACOON POLICE DEPARTMENT-thumb.jpg", ~U[2026-03-09 05:28:52Z], 1] 06:28:52.209 [debug] QUERY OK source="media_metadata" db=8.1ms INSERT INTO "media_metadata" ("metadata_filepath","thumbnail_filepath","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5) RETURNING "id" ["/config/metadata/media_items/1/metadata.json.gz", "/config/metadata/media_items/1/thumbnail.jpg", 1, ~U[2026-03-09 05:28:52Z], ~U[2026-03-09 05:28:52Z]] 06:28:52.218 [debug] QUERY OK db=9.5ms commit [] 06:28:52.229 [debug] QUERY OK source="media_items" db=10.0ms idle=1246.8ms UPDATE "media_items" SET "media_size_bytes" = ?, "updated_at" = ? WHERE "id" = ? [2293150419, ~U[2026-03-09 05:28:52Z], 1] 06:28:52.230 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:28:52.232 [info] {"args":{"id":1},"id":4,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":354856658,"event":"job:stop","queue_time":385781,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:28:52.240 [info] {"args":{"id":2},"id":7,"meta":{},"system_time":1773034132245865791,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:28:52.241 [debug] QUERY OK source="media_items" db=0.3ms idle=94.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 06:28:52.241 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:28:52.242 [debug] QUERY OK source="sources" db=0.2ms idle=23.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:28:52.242 [debug] QUERY OK source="media_profiles" db=0.1ms idle=12.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:28:52.243 [debug] QUERY OK source="media_items" db=0.2ms idle=10.1ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [2] 06:28:52.244 [debug] QUERY OK source="media_metadata" db=0.2ms idle=3.5ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [2] 06:28:52.244 [debug] QUERY OK source="media_profiles" db=0.1ms idle=3.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:28:52.245 [debug] QUERY OK source="settings" db=0.1ms idle=2.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:52.245 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=2.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:52.247 [debug] Running yt-dlp command for action: get_downloadable_status 06:28:52.248 [debug] QUERY OK source="settings" db=0.1ms idle=5.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:52.248 [debug] QUERY OK source="settings" db=0.2ms idle=4.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:52.248 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=4.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:52.249 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/a5/47/a547f8aebb264bd93889bef7699a481a28c59a515cef2aa9bd3f19e022b67fb6.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:28:54.482 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/a5/47/a547f8aebb264bd93889bef7699a481a28c59a515cef2aa9bd3f19e022b67fb6.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:28:54.482 [error] yt-dlp download error for media item #2: "ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies\n" 06:28:54.483 [error] yt-dlp download will not be retried: "ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies\n" 06:28:54.484 [info] {"args":{"id":2},"id":7,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2242587,"event":"job:stop","queue_time":348238716,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:28:54.492 [info] {"args":{"id":7},"id":8,"meta":{},"system_time":1773034134498118938,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:28:54.493 [debug] QUERY OK source="media_items" db=0.3ms idle=520.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [7] 06:28:54.493 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:28:54.494 [debug] QUERY OK source="sources" db=0.1ms idle=521.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:28:54.494 [debug] QUERY OK source="media_profiles" db=0.1ms idle=342.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:28:54.496 [debug] QUERY OK source="media_items" db=1.0ms idle=10.1ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [7] 06:28:54.499 [debug] QUERY OK source="media_metadata" db=0.3ms idle=6.6ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [7] 06:28:54.500 [debug] QUERY OK source="media_profiles" db=0.3ms idle=6.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:28:54.501 [debug] QUERY OK source="settings" db=0.4ms idle=7.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:54.502 [debug] QUERY OK source="settings" db=0.1ms idle=7.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:54.503 [debug] Running yt-dlp command for action: get_downloadable_status 06:28:54.505 [debug] QUERY OK source="settings" db=0.2ms idle=8.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:54.505 [debug] QUERY OK source="settings" db=0.4ms idle=5.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:54.506 [debug] QUERY OK source="settings" db=0.1ms idle=5.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:54.506 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=B-dIs7yb1EQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/fb/33/fb33524d2443d18a943567337ec1953dbee5f94137d6a74e1609f6905b4ca24a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:28:59.039 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=B-dIs7yb1EQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/fb/33/fb33524d2443d18a943567337ec1953dbee5f94137d6a74e1609f6905b4ca24a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:28:59.040 [debug] Running yt-dlp command for action: download 06:28:59.040 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=1067.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:59.041 [debug] QUERY OK source="settings" db=0.0ms idle=1067.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:59.041 [debug] QUERY OK source="settings" db=0.1ms idle=1067.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:59.041 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=B-dIs7yb1EQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/a9/3f/a93fb0eafd0379b27a45882d56c444e7f0af1648306b527cc32502db5ff1f170.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:29:00.396 [info] {"source":"oban","duration":202,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:29:08.392 [info] GET /app_info 06:29:08.393 [debug] Processing with PinchflatWeb.Settings.SettingController.app_info/2 Parameters: %{} Pipelines: [:browser] 06:29:08.395 [debug] QUERY OK source="settings" db=0.2ms queue=0.3ms idle=1422.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:08.395 [debug] QUERY OK source="settings" db=0.1ms idle=1218.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:08.396 [debug] QUERY OK source="settings" db=0.4ms idle=423.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:08.399 [debug] QUERY OK source="settings" db=0.8ms queue=0.3ms idle=425.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:08.401 [debug] QUERY OK source="settings" db=0.9ms queue=0.8ms idle=221.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:08.405 [info] Sent 200 in 12ms 06:29:08.422 [info] CONNECTED TO Phoenix.LiveView.Socket in 35µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "VBwmHxVKXBdmAlYCQDUTGi1IAH0TAAA8fouGA23TK23Lmstui0d7aV_p", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:29:08.430 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:29:08.430 [debug] Replied in 354µs 06:29:09.677 [info] GET /settings 06:29:09.677 [debug] Processing with PinchflatWeb.Settings.SettingController.show/2 Parameters: %{} Pipelines: [:browser] 06:29:09.679 [debug] QUERY OK source="settings" db=1.4ms idle=1282.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:09.680 [debug] QUERY OK source="settings" db=0.2ms idle=1283.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:09.680 [debug] QUERY OK source="settings" db=0.2ms idle=1281.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:09.681 [debug] QUERY OK source="settings" db=0.2ms idle=1279.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:09.683 [info] Sent 200 in 6ms 06:29:09.703 [info] CONNECTED TO Phoenix.LiveView.Socket in 31µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "BCw-M2UvXnR-WwMZQh4WXywQIglDDzZ86_mk1W17SkfWoXq0hhFC1Yi0", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:29:09.717 [debug] MOUNT Pinchflat.Settings.AppriseServerLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "value" => nil} 06:29:09.718 [debug] Replied in 270µs 06:29:09.720 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:29:09.720 [debug] Replied in 760µs 06:29:10.427 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:29:11.824 [info] GET /media_profiles 06:29:11.824 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 06:29:11.838 [debug] QUERY OK source="media_profiles" db=13.4ms queue=0.2ms idle=1397.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", (SELECT count(ss0."id") AS "result" FROM "sources" AS ss0 WHERE (ss0."media_profile_id" = m0."id")) FROM "media_profiles" AS m0 WHERE (m0."marked_for_deletion_at" IS NULL) ORDER BY m0."name" [] 06:29:11.839 [debug] QUERY OK source="settings" db=0.1ms idle=866.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:11.839 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=866.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:11.840 [debug] QUERY OK source="settings" db=0.2ms idle=867.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:11.841 [info] Sent 200 in 17ms 06:29:11.873 [info] CONNECTED TO Phoenix.LiveView.Socket in 28µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "SkIiFiIqFjN_WUgNVTckQhUpCQNGBxV7x1qNvRypRi-CxqC-QQmI4QJ7", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:29:11.883 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:29:11.884 [debug] Replied in 97µs 06:29:12.710 [info] GET /sources 06:29:12.710 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 06:29:12.713 [debug] QUERY OK source="settings" db=2.2ms idle=872.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:12.714 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=874.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:12.716 [debug] QUERY OK source="settings" db=1.1ms queue=0.3ms idle=875.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:12.717 [debug] QUERY OK source="settings" db=0.1ms idle=877.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:12.718 [debug] QUERY OK source="settings" db=0.2ms idle=530.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:12.722 [debug] QUERY OK source="sources" db=2.8ms queue=0.7ms idle=6.0ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 06:29:12.726 [debug] QUERY OK source="sources" db=1.9ms queue=0.6ms idle=9.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:29:12.731 [info] Sent 200 in 21ms 06:29:12.757 [info] CONNECTED TO Phoenix.LiveView.Socket in 36µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "akUbMTkMNiplBFcmbBwpNhI-Nx1BIBR-X6HimtYiH42hAZNYVFSW3vK2", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:29:12.770 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 06:29:12.772 [debug] QUERY OK source="sources" db=1.6ms idle=53.7ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 06:29:12.774 [debug] QUERY OK source="sources" db=1.4ms idle=54.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:29:12.774 [debug] Replied in 4ms 06:29:12.776 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:29:12.776 [debug] Replied in 221µs 06:29:20.457 [info] GET /sources/1 06:29:20.457 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 06:29:20.458 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=486.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:29:20.460 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=488.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:29:20.464 [debug] QUERY OK source="tasks" db=3.4ms idle=489.6ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [1, "executing", "available", "scheduled", "retryable"] 06:29:20.465 [debug] QUERY OK source="oban_jobs" db=0.1ms queue=0.5ms idle=493.3ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [9] 06:29:20.466 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=262.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:20.466 [debug] QUERY OK source="settings" db=0.2ms idle=7.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:20.468 [debug] QUERY OK source="settings" db=0.3ms idle=7.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:20.470 [debug] QUERY OK source="sources" db=0.3ms idle=5.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:29:20.471 [debug] QUERY OK source="media_items" db=0.2ms queue=0.2ms idle=5.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:29:20.472 [debug] QUERY OK source="media_items" db=0.5ms queue=0.3ms idle=5.5ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:29:20.473 [debug] QUERY OK source="sources" db=0.1ms idle=6.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:29:20.474 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=5.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 06:29:20.474 [debug] QUERY OK source="media_items" db=0.1ms idle=4.0ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:29:20.475 [debug] QUERY OK source="sources" db=0.4ms idle=4.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:29:20.478 [debug] QUERY OK source="media_items" db=0.2ms queue=0.5ms idle=5.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 06:29:20.480 [debug] QUERY OK source="media_items" db=0.6ms queue=0.4ms idle=5.9ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:29:20.481 [info] Sent 200 in 24ms 06:29:20.521 [info] CONNECTED TO Phoenix.LiveView.Socket in 40µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "ASdlbQVIOSxAHV0vXTwCGx1NFCZHBGYK3T65Q0Vom-8apzetY5pl5R9F", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:29:20.531 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "pending", "source_id" => 1} 06:29:20.532 [debug] QUERY OK source="sources" db=0.6ms idle=57.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:29:20.534 [debug] QUERY OK source="media_items" db=1.1ms idle=58.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:29:20.535 [debug] QUERY OK source="media_items" db=1.0ms queue=0.2ms idle=58.6ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:29:20.535 [debug] Replied in 4ms 06:29:20.538 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "downloaded", "source_id" => 1} 06:29:20.539 [debug] QUERY OK source="sources" db=0.5ms idle=59.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:29:20.540 [debug] QUERY OK source="media_items" db=0.6ms idle=59.1ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 06:29:20.540 [debug] QUERY OK source="media_items" db=0.2ms idle=7.9ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:29:20.540 [debug] Replied in 2ms 06:29:20.544 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "other", "source_id" => 1} 06:29:20.547 [debug] QUERY OK source="sources" db=3.2ms queue=0.1ms idle=10.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:29:20.550 [debug] QUERY OK source="media_items" db=0.7ms queue=0.2ms idle=13.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 06:29:20.551 [debug] QUERY OK source="media_items" db=0.9ms queue=0.2ms idle=11.2ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:29:20.551 [debug] Replied in 8ms 06:29:20.553 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:29:20.553 [debug] Replied in 262µs 06:29:39.613 [info] GET /settings 06:29:39.613 [debug] Processing with PinchflatWeb.Settings.SettingController.show/2 Parameters: %{} Pipelines: [:browser] 06:29:39.614 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1642.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:39.615 [debug] QUERY OK source="settings" db=0.1ms idle=1643.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:39.615 [debug] QUERY OK source="settings" db=0.6ms idle=1643.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:39.616 [debug] QUERY OK source="settings" db=0.2ms idle=1381.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:39.619 [info] Sent 200 in 6ms 06:29:39.643 [info] CONNECTED TO Phoenix.LiveView.Socket in 54µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "XUIhPj9BHzl-dj8lVwQKIRc3IAEhAQsWo1rfk9pzSFZkzBmNSODKSWTZ", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:29:39.689 [debug] MOUNT Pinchflat.Settings.AppriseServerLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "value" => nil} 06:29:39.689 [debug] Replied in 335µs 06:29:39.690 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:29:39.690 [debug] Replied in 151µs 06:29:40.427 [info] {"source":"oban","duration":1083,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:30:00.395 [info] {"source":"oban","duration":181,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:30:10.428 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:30:40.429 [info] {"source":"oban","duration":726,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:00.394 [info] {"source":"oban","duration":256,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:31:10.430 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:14.467 [info] GET /sources 06:31:14.467 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 06:31:14.468 [debug] QUERY OK source="settings" db=0.2ms idle=499.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:14.469 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=500.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:14.470 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=501.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:14.471 [debug] QUERY OK source="settings" db=0.3ms idle=502.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:14.471 [debug] QUERY OK source="settings" db=0.2ms idle=72.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:14.472 [debug] QUERY OK source="sources" db=0.5ms idle=3.8ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 06:31:14.474 [debug] QUERY OK source="sources" db=1.1ms idle=4.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:31:14.477 [info] Sent 200 in 9ms 06:31:14.498 [info] CONNECTED TO Phoenix.LiveView.Socket in 25µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "Yh5rEh00HCliUwsddxkFKiobHXkDNyghPm8JILsjOcnSZ_bEncy3qawm", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:31:14.507 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 06:31:14.508 [debug] QUERY OK source="sources" db=0.5ms idle=37.6ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 06:31:14.509 [debug] QUERY OK source="sources" db=0.8ms idle=37.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:31:14.509 [debug] Replied in 2ms 06:31:14.511 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:31:14.511 [debug] Replied in 151µs 06:31:23.922 [info] GET /sources/1 06:31:23.922 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 06:31:23.923 [debug] QUERY OK source="sources" db=0.2ms idle=1956.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:31:23.924 [debug] QUERY OK source="media_profiles" db=0.5ms idle=1956.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:31:27.841 [info] Exqlite.Connection (#PID<0.2320.0>) disconnected: ** (DBConnection.ConnectionError) client #PID<0.2815.0> exited 06:31:27.861 [info] GET /sources/1/edit 06:31:27.861 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 06:31:27.862 [debug] QUERY OK source="sources" db=0.2ms idle=1444.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:31:27.862 [debug] QUERY OK source="media_profiles" db=0.3ms idle=895.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 06:31:27.863 [debug] QUERY OK source="settings" db=0.2ms idle=895.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:27.863 [debug] QUERY OK source="settings" db=0.1ms idle=444.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:27.865 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:27.870 [info] Sent 200 in 8ms 06:31:27.902 [info] CONNECTED TO Phoenix.LiveView.Socket in 31µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "VTgDKGIcGgt6WTZ7TzQKBBsnEBUrIDQ-gKPp6duHWiS5brmk__t_Yvkr", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:31:27.958 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:31:27.958 [debug] Replied in 163µs 06:31:29.575 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 06:31:40.431 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:47.475 [info] POST /sources/1 06:31:47.475 [debug] Processing with PinchflatWeb.Sources.SourceController.update/2 Parameters: %{"_csrf_token" => "VTgDKGIcGgt6WTZ7TzQKBBsnEBUrIDQ-gKPp6duHWiS5brmk__t_Yvkr", "_method" => "patch", "download_cutoff_date_preset" => "", "id" => "1", "source" => %{"cookie_behaviour" => "when_needed", "custom_name" => "Requiem", "download_cutoff_date" => "", "download_media" => "true", "fast_index" => "false", "index_frequency_minutes" => "1440", "max_duration_seconds" => "", "media_profile_id" => "1", "min_duration_seconds" => "", "original_url" => "https://youtube.com/playlist?list=PLUU9DSgxgRLCLIvDWYgjjFrVa1QkvU78k&si=Y4gImJxy5fPj9pSg", "output_path_template_override" => "", "retention_period_days" => "", "title_filter_regex" => ""}} Pipelines: [:browser] 06:31:47.483 [debug] QUERY OK source="sources" db=6.9ms idle=1018.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:31:47.485 [debug] QUERY OK source="sources" db=1.3ms idle=519.4ms UPDATE "sources" SET "cookie_behaviour" = ?, "updated_at" = ? WHERE "id" = ? [:when_needed, ~U[2026-03-09 05:31:47Z], 1] 06:31:47.485 [info] Sent 302 in 10ms 06:31:47.497 [info] GET /sources/1 06:31:47.497 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 06:31:47.500 [debug] QUERY OK source="sources" db=2.4ms idle=533.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:31:47.522 [debug] QUERY OK source="media_profiles" db=21.4ms idle=536.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:31:47.525 [debug] QUERY OK source="tasks" db=2.0ms queue=0.4ms idle=63.5ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [1, "executing", "available", "scheduled", "retryable"] 06:31:47.527 [debug] QUERY OK source="oban_jobs" db=0.7ms queue=0.9ms idle=42.7ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [9] 06:31:47.528 [debug] QUERY OK source="settings" db=0.6ms queue=0.1ms idle=42.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:47.530 [debug] QUERY OK source="settings" db=1.5ms queue=0.1ms idle=28.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:47.532 [debug] QUERY OK source="settings" db=0.2ms queue=0.2ms idle=8.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:31:47.534 [debug] QUERY OK source="sources" db=0.3ms idle=8.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:31:47.541 [debug] QUERY OK source="media_items" db=6.0ms idle=7.7ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:31:47.543 [debug] QUERY OK source="media_items" db=1.6ms queue=0.3ms idle=13.0ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:31:47.545 [debug] QUERY OK source="sources" db=0.2ms idle=14.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:31:47.546 [debug] QUERY OK source="media_items" db=0.5ms idle=13.8ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 06:31:47.547 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=11.9ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:31:47.548 [debug] QUERY OK source="sources" db=0.3ms queue=0.3ms idle=6.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:31:47.549 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=5.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 06:31:47.550 [debug] QUERY OK source="media_items" db=0.6ms queue=0.2ms idle=4.4ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:31:47.552 [info] Sent 200 in 55ms 06:31:47.585 [info] CONNECTED TO Phoenix.LiveView.Socket in 106µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "BzY_HhI_HzdqfTo4ZT8THgYwBXgwGB4P5ElFFGptGM_vHytqBHa2BNAC", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:31:47.601 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "pending", "source_id" => 1} 06:31:47.602 [debug] QUERY OK source="sources" db=0.4ms idle=55.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:31:47.606 [debug] QUERY OK source="media_items" db=2.7ms idle=56.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:31:47.607 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms idle=57.7ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:31:47.608 [debug] Replied in 6ms 06:31:47.613 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "downloaded", "source_id" => 1} 06:31:47.615 [debug] QUERY OK source="sources" db=1.3ms idle=64.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:31:47.616 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=64.9ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 06:31:47.617 [debug] QUERY OK source="media_items" db=1.0ms idle=14.4ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:31:47.617 [debug] Replied in 5ms 06:31:47.624 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "other", "source_id" => 1} 06:31:47.632 [debug] QUERY OK source="sources" db=1.3ms idle=24.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:31:47.633 [debug] QUERY OK source="media_items" db=0.3ms queue=0.5ms idle=24.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 06:31:47.635 [debug] QUERY OK source="media_items" db=1.7ms idle=18.4ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:31:47.635 [debug] Replied in 10ms 06:31:47.637 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:31:47.637 [debug] Replied in 187µs 06:31:54.125 [debug] HANDLE EVENT "reload_page" in PinchflatWeb.Sources.MediaItemTableLive Parameters: %{"value" => ""} 06:31:54.125 [debug] Replied in 219µs 06:31:54.127 [debug] QUERY OK source="media_items" db=0.8ms queue=0.4ms idle=1161.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 06:31:54.127 [debug] QUERY OK source="media_items" db=0.7ms idle=1162.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:31:54.129 [debug] QUERY OK source="media_items" db=2.5ms queue=0.2ms idle=1162.2ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 06:31:54.129 [debug] QUERY OK source="media_items" db=1.9ms idle=1163.4ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:31:54.130 [debug] QUERY OK source="media_items" db=2.3ms idle=657.1ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:31:54.130 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms idle=1.9ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:32:00.391 [info] {"source":"oban","duration":479,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:32:10.429 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:32:32.842 [info] GET /sources 06:32:32.842 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 06:32:32.843 [debug] QUERY OK source="settings" db=0.1ms idle=875.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:35.153 [info] Exqlite.Connection (#PID<0.2319.0>) disconnected: ** (DBConnection.ConnectionError) client #PID<0.2836.0> exited 06:32:35.168 [info] GET /sources 06:32:35.168 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 06:32:35.169 [debug] QUERY OK source="settings" db=0.2ms idle=1202.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:35.169 [debug] QUERY OK source="settings" db=0.2ms idle=1202.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:35.170 [debug] QUERY OK source="settings" db=0.2ms idle=1203.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:38.299 [info] Exqlite.Connection (#PID<0.2320.0>) disconnected: ** (DBConnection.ConnectionError) client #PID<0.2837.0> exited 06:32:38.312 [info] GET /sources 06:32:38.312 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 06:32:38.313 [debug] QUERY OK source="settings" db=0.3ms idle=3143.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:38.313 [debug] QUERY OK source="settings" db=0.0ms queue=0.1ms idle=3143.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:38.314 [debug] QUERY OK source="settings" db=0.1ms idle=14.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:38.315 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:38.315 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:38.315 [debug] QUERY OK source="sources" db=0.3ms idle=0.9ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 06:32:38.317 [debug] QUERY OK source="sources" db=0.9ms idle=1.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:32:38.318 [info] Sent 200 in 5ms 06:32:38.337 [info] CONNECTED TO Phoenix.LiveView.Socket in 34µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "YBhiLgMQHi54AwkIeyxXXRNJMQdLMBEYRk1vWhqmU3lFVj02W1UM9fNT", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:32:38.346 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 06:32:38.347 [debug] QUERY OK source="sources" db=0.5ms idle=32.0ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 06:32:38.349 [debug] QUERY OK source="sources" db=1.1ms idle=32.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:32:38.349 [debug] Replied in 3ms 06:32:38.351 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:32:38.351 [debug] Replied in 230µs 06:32:40.416 [debug] HANDLE EVENT "update" in PinchflatWeb.Sources.SourceLive.IndexTableLive Component: PinchflatWeb.Sources.SourceLive.SourceEnableToggle Parameters: %{"_target" => ["source", "enabled"], "source" => %{"enabled" => "false"}} 06:32:40.416 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=2066.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:32:41.247 [info] {"source":"oban","duration":1200,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:32:41.312 [debug] QUERY OK source="sources" db=65.9ms queue=0.5ms idle=1944.3ms UPDATE "sources" SET "enabled" = ?, "updated_at" = ? WHERE "id" = ? [false, ~U[2026-03-09 05:32:40Z], 1] 06:32:42.788 [debug] QUERY OK source="media_items" db=1475.0ms idle=65.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:32:42.795 [debug] QUERY OK source="tasks" db=7.4ms idle=1475.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."media_item_id" = ?) AND (o1."state" IN (?,?,?)) [2, "available", "scheduled", "retryable"] 06:32:42.796 [debug] QUERY OK source="tasks" db=0.4ms queue=0.1ms idle=50.9ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."media_item_id" = ?) AND (o1."state" IN (?,?,?)) [3, "available", "scheduled", "retryable"] 06:32:42.796 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 06:32:42.797 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 06:32:42.797 [debug] QUERY OK source="tasks" db=0.6ms idle=8.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."media_item_id" = ?) AND (o1."state" IN (?,?,?)) [7, "available", "scheduled", "retryable"] 06:32:42.801 [debug] QUERY OK source="tasks" db=3.1ms idle=1.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."worker" LIKE ?) AND (o1."state" IN (?,?,?,?)) [1, "%.FastIndexingWorker", "available", "scheduled", "retryable", "executing"] 06:32:42.815 [debug] QUERY OK source="tasks" db=13.6ms queue=0.1ms idle=4.6ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."worker" LIKE ?) AND (o1."state" IN (?,?,?,?)) [1, "%.MediaCollectionIndexingWorker", "available", "scheduled", "retryable", "executing"] 06:32:42.827 [debug] QUERY OK source="tasks" db=3.4ms idle=26.4ms DELETE FROM "tasks" WHERE "id" = ? [8] 06:32:42.829 [debug] QUERY OK source="tasks" db=1.4ms queue=0.1ms idle=27.1ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."worker" LIKE ?) AND (o1."state" IN (?,?,?,?)) [1, "%.FastIndexingWorker", "available", "scheduled", "retryable", "executing"] 06:32:42.829 [debug] Replied in 2413ms 06:32:42.830 [debug] HANDLE EVENT "update" in PinchflatWeb.Sources.SourceLive.IndexTableLive Component: PinchflatWeb.Sources.SourceLive.SourceEnableToggle Parameters: %{"_target" => ["source", "enabled"], "source" => %{"enabled" => "true"}} 06:32:42.830 [debug] QUERY OK source="sources" db=0.2ms idle=15.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:32:42.832 [debug] QUERY OK source="sources" db=1.1ms idle=15.0ms UPDATE "sources" SET "enabled" = ?, "updated_at" = ? WHERE "id" = ? [true, ~U[2026-03-09 05:32:42Z], 1] 06:32:42.835 [debug] QUERY OK source="media_items" db=2.9ms idle=8.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:32:42.855 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=DH-S91JmVvs --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/61/a0/61a061394841ec1602e0919bd07f79e513691cc4b6fc729bcf2f3ac673c21ace.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:32:42.876 [debug] QUERY OK source="tasks" db=35.3ms idle=10.0ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [10, 2, ~U[2026-03-09 05:32:42Z], ~U[2026-03-09 05:32:42Z]] 06:32:42.916 [debug] QUERY OK source="tasks" db=36.5ms queue=0.1ms idle=42.1ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."worker" LIKE ?) AND (o1."state" IN (?,?,?,?)) [1, "%.MediaCollectionIndexingWorker", "available", "scheduled", "retryable", "executing"] 06:32:42.946 [debug] QUERY OK source="tasks" db=4.3ms idle=63.3ms INSERT INTO "tasks" ("job_id","source_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [11, 1, ~U[2026-03-09 05:32:42Z], ~U[2026-03-09 05:32:42Z]] 06:32:42.946 [debug] Replied in 116ms 06:32:42.950 [debug] Running yt-dlp command for action: download_thumbnail 06:32:42.951 [debug] QUERY OK source="settings" db=0.1ms idle=71.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:42.951 [debug] QUERY OK source="settings" db=0.2ms idle=34.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:42.951 [debug] QUERY OK source="settings" db=0.1ms idle=33.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:42.951 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=DH-S91JmVvs --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/3/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/97/d8/97d81e8a7328bb3ec9e820729bffefd4882bf91677332b6e82d50f6d175fe8d4.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:32:45.837 [info] GET /sources/1 06:32:45.837 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 06:32:45.838 [debug] QUERY OK source="sources" db=0.6ms idle=1595.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:32:45.839 [debug] QUERY OK source="media_profiles" db=0.4ms idle=1596.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:32:45.841 [debug] QUERY OK source="tasks" db=1.4ms queue=0.1ms idle=1597.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [1, "executing", "available", "scheduled", "retryable"] 06:32:45.841 [debug] QUERY OK source="oban_jobs" db=0.4ms idle=1095.3ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [11] 06:32:45.842 [debug] QUERY OK source="settings" db=0.1ms idle=94.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:45.843 [debug] QUERY OK source="settings" db=0.3ms idle=4.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:45.844 [debug] QUERY OK source="settings" db=0.5ms idle=4.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:45.846 [debug] QUERY OK source="sources" db=0.3ms idle=5.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:32:45.847 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=5.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:32:45.849 [debug] QUERY OK source="media_items" db=0.7ms idle=5.8ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:32:45.850 [debug] QUERY OK source="sources" db=0.2ms idle=7.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:32:45.851 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=6.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 06:32:45.851 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=4.6ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:32:45.853 [debug] QUERY OK source="sources" db=0.5ms idle=4.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:32:45.854 [debug] QUERY OK source="media_items" db=0.3ms idle=4.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 06:32:45.855 [debug] QUERY OK source="media_items" db=1.0ms idle=3.7ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:32:45.856 [info] Sent 200 in 19ms 06:32:45.898 [info] CONNECTED TO Phoenix.LiveView.Socket in 41µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "dhAaOwQKIgVyBiMsTxxeHXQTUC4lMhg_DcIcPrMF_6FbbZ9r0k4dWdGs", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:32:45.905 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "pending", "source_id" => 1} 06:32:45.906 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=54.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:32:45.907 [debug] QUERY OK source="media_items" db=0.4ms idle=55.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:32:45.910 [debug] QUERY OK source="media_items" db=2.8ms queue=0.2ms idle=54.3ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:32:45.911 [debug] Replied in 5ms 06:32:45.912 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "downloaded", "source_id" => 1} 06:32:45.913 [debug] QUERY OK source="sources" db=0.4ms idle=58.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:32:45.914 [debug] QUERY OK source="media_items" db=0.2ms idle=58.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 06:32:45.915 [debug] QUERY OK source="media_items" db=0.8ms idle=8.0ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:32:45.915 [debug] Replied in 2ms 06:32:45.917 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "other", "source_id" => 1} 06:32:45.917 [debug] QUERY OK source="sources" db=0.3ms idle=10.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:32:45.919 [debug] QUERY OK source="media_items" db=0.7ms idle=7.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 06:32:45.920 [debug] QUERY OK source="media_items" db=0.7ms idle=6.0ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 06:32:45.920 [debug] Replied in 3ms 06:32:45.923 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:32:45.923 [debug] Replied in 222µs 06:32:47.698 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=DH-S91JmVvs --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/3/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/97/d8/97d81e8a7328bb3ec9e820729bffefd4882bf91677332b6e82d50f6d175fe8d4.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:32:47.698 [debug] QUERY OK db=0.2ms idle=948.0ms begin [] 06:32:47.706 [debug] QUERY OK source="media_items" db=7.2ms UPDATE "media_items" SET "media_downloaded_at" = ?, "media_filepath" = ?, "metadata_filepath" = ?, "nfo_filepath" = ?, "thumbnail_filepath" = ?, "updated_at" = ? WHERE "id" = ? [~U[2026-03-09 05:32:42Z], "/downloads/youtube/Requiem/Season 2026/s2026e022700 - Resident Evil Requiem - Part 2 - THE GIRL.mp4", "/downloads/youtube/Requiem/Season 2026/s2026e022700 - Resident Evil Requiem - Part 2 - THE GIRL.info.json", "/downloads/youtube/Requiem/Season 2026/s2026e022700 - Resident Evil Requiem - Part 2 - THE GIRL.nfo", "/downloads/youtube/Requiem/Season 2026/s2026e022700 - Resident Evil Requiem - Part 2 - THE GIRL-thumb.jpg", ~U[2026-03-09 05:32:47Z], 3] 06:32:47.707 [debug] QUERY OK source="media_metadata" db=0.8ms INSERT INTO "media_metadata" ("metadata_filepath","thumbnail_filepath","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5) RETURNING "id" ["/config/metadata/media_items/3/metadata.json.gz", "/config/metadata/media_items/3/thumbnail.jpg", 3, ~U[2026-03-09 05:32:47Z], ~U[2026-03-09 05:32:47Z]] 06:32:47.717 [debug] QUERY OK db=10.0ms commit [] 06:32:47.727 [debug] QUERY OK source="media_items" db=8.8ms idle=476.0ms UPDATE "media_items" SET "media_size_bytes" = ?, "updated_at" = ? WHERE "id" = ? [2941262650, ~U[2026-03-09 05:32:47Z], 3] 06:32:47.728 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:32:47.730 [info] {"args":{"id":3},"id":6,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":586337470,"event":"job:stop","queue_time":425660,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:32:47.739 [info] {"args":{"id":2},"id":10,"meta":{},"system_time":1773034367743367497,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:32:47.741 [debug] QUERY OK source="media_items" db=1.0ms queue=0.3ms idle=496.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 06:32:47.741 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:32:47.742 [debug] QUERY OK source="sources" db=0.2ms queue=0.2ms idle=24.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:32:47.742 [debug] QUERY OK source="media_profiles" db=0.1ms idle=14.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:32:47.743 [debug] QUERY OK source="media_items" db=0.2ms idle=12.3ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [2] 06:32:47.745 [debug] QUERY OK source="media_metadata" db=0.2ms idle=5.6ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [2] 06:32:47.745 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=4.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:32:47.746 [debug] QUERY OK source="settings" db=0.2ms idle=4.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:47.747 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=3.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:47.748 [debug] Running yt-dlp command for action: get_downloadable_status 06:32:47.749 [debug] QUERY OK source="settings" db=0.1ms idle=5.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:47.749 [debug] QUERY OK source="settings" db=0.1ms idle=4.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:47.749 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=3.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:47.750 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/3d/eb/3debe70678dea156871c547488112a38ac6c3810c89404f251dba292149f5178.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:32:50.004 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/3d/eb/3debe70678dea156871c547488112a38ac6c3810c89404f251dba292149f5178.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:32:50.005 [debug] QUERY OK source="settings" db=0.2ms idle=761.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:50.006 [debug] QUERY OK source="settings" db=0.1ms idle=762.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:50.007 [debug] Running yt-dlp command for action: get_downloadable_status 06:32:50.014 [debug] QUERY OK source="settings" db=0.1ms idle=771.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:50.014 [debug] QUERY OK source="settings" db=0.2ms idle=771.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:50.015 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=258.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:50.015 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/33/47/33475e2193329268b84867a828c5b69bd0374937cd428862c5a17d81cb8a2e2a.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:32:53.380 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/33/47/33475e2193329268b84867a828c5b69bd0374937cd428862c5a17d81cb8a2e2a.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:32:53.381 [debug] Running yt-dlp command for action: download 06:32:53.382 [debug] QUERY OK source="settings" db=0.1ms idle=620.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:53.383 [debug] QUERY OK source="settings" db=0.3ms idle=139.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:53.383 [debug] QUERY OK source="settings" db=0.1ms idle=140.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:32:53.384 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/78/98/78980906b6a1c986c4584a7a71dd43809ab4b0dd8da0249f250fcdf7c539782e.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:33:00.378 [info] {"source":"oban","duration":207,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:33:11.244 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:33:21.027 [info] GET / 06:33:21.027 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 06:33:21.028 [debug] QUERY OK source="settings" db=0.3ms idle=1785.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:33:21.031 [debug] QUERY OK source="media_profiles" db=3.2ms idle=1786.3ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 06:33:21.034 [debug] QUERY OK source="sources" db=2.9ms idle=1220.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 06:33:21.036 [debug] QUERY OK source="media_items" db=0.9ms idle=793.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:33:21.036 [debug] QUERY OK source="media_items" db=0.4ms idle=222.2ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:33:21.037 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=8.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:33:21.037 [debug] QUERY OK source="settings" db=0.2ms idle=5.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:33:21.039 [debug] QUERY OK source="settings" db=0.6ms idle=3.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:33:21.040 [debug] QUERY OK source="tasks" db=0.3ms idle=4.1ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:33:21.041 [debug] QUERY OK source="media_items" db=0.2ms idle=4.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [7, 2] 06:33:21.042 [debug] QUERY OK source="media_items" db=0.3ms idle=5.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:33:21.043 [debug] QUERY OK source="media_items" db=0.4ms idle=5.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:33:21.044 [debug] QUERY OK source="sources" db=0.4ms queue=0.3ms idle=4.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:33:21.046 [debug] QUERY OK source="media_items" db=0.4ms idle=5.7ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:33:21.048 [debug] QUERY OK source="media_items" db=0.8ms idle=5.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:33:21.049 [debug] QUERY OK source="sources" db=0.5ms queue=0.2ms idle=5.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:33:21.051 [info] Sent 200 in 24ms 06:33:21.089 [info] CONNECTED TO Phoenix.LiveView.Socket in 95µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "cwcFHTwBDhJeQykRfSwAXjIVMA05ZiYPAtVEhyaQssL_Pjg1vmTGK0yC", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:33:21.106 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "downloaded"} 06:33:21.107 [debug] QUERY OK source="media_items" db=0.3ms idle=63.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:33:21.109 [debug] QUERY OK source="media_items" db=2.0ms idle=63.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:33:21.111 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=63.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:33:21.111 [debug] Replied in 4ms 06:33:21.115 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "pending"} 06:33:21.116 [debug] QUERY OK source="media_items" db=0.5ms idle=68.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:33:21.118 [debug] QUERY OK source="media_items" db=1.1ms idle=68.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:33:21.119 [debug] QUERY OK source="sources" db=0.6ms queue=0.2ms idle=11.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:33:21.119 [debug] Replied in 4ms 06:33:21.123 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:33:21.124 [debug] QUERY OK source="tasks" db=0.7ms idle=13.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:33:21.126 [debug] QUERY OK source="media_items" db=0.9ms queue=0.2ms idle=14.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [7, 2] 06:33:21.126 [debug] Replied in 3ms 06:33:21.129 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:33:21.129 [debug] Replied in 185µs 06:33:41.244 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:00.373 [info] {"source":"oban","duration":191,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:34:11.255 [info] {"source":"oban","duration":12838,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:37.931 [info] GET /media_profiles 06:34:37.931 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 06:34:37.932 [debug] QUERY OK source="media_profiles" db=0.4ms idle=1690.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", (SELECT count(ss0."id") AS "result" FROM "sources" AS ss0 WHERE (ss0."media_profile_id" = m0."id")) FROM "media_profiles" AS m0 WHERE (m0."marked_for_deletion_at" IS NULL) ORDER BY m0."name" [] 06:34:37.932 [debug] QUERY OK source="settings" db=0.2ms queue=0.2ms idle=1690.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:37.933 [debug] QUERY OK source="settings" db=0.1ms idle=1691.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:37.934 [debug] QUERY OK source="settings" db=0.2ms idle=975.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:37.935 [info] Sent 200 in 4ms 06:34:37.954 [info] CONNECTED TO Phoenix.LiveView.Socket in 50µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "fBcCYTAWGSZdfQotWAQ9OjA3HSMQHykbNdQ9dnvepMocuBZUtOyibIvW", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:34:38.001 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:34:38.001 [debug] Replied in 286µs 06:34:40.975 [info] GET / 06:34:40.975 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 06:34:40.977 [debug] QUERY OK source="settings" db=0.5ms queue=0.2ms idle=1734.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:40.977 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1735.6ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 06:34:40.978 [debug] QUERY OK source="sources" db=0.7ms idle=1736.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 06:34:40.979 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=1016.5ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:34:40.979 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=16.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:34:40.980 [debug] QUERY OK source="settings" db=0.2ms idle=2.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:40.981 [debug] QUERY OK source="settings" db=0.1ms idle=3.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:40.982 [debug] QUERY OK source="settings" db=0.5ms idle=3.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:40.985 [debug] QUERY OK source="tasks" db=0.9ms idle=4.9ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:34:40.986 [debug] QUERY OK source="media_items" db=0.3ms idle=6.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [7, 2] 06:34:40.989 [debug] QUERY OK source="media_items" db=0.9ms queue=0.1ms idle=8.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:34:40.991 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms idle=9.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:34:40.992 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=9.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:34:40.998 [debug] QUERY OK source="media_items" db=1.8ms queue=0.1ms idle=11.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:34:41.000 [debug] QUERY OK source="media_items" db=1.4ms queue=0.1ms idle=12.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:34:41.002 [debug] QUERY OK source="sources" db=0.8ms queue=0.4ms idle=11.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:34:41.006 [info] Sent 200 in 30ms 06:34:41.036 [info] CONNECTED TO Phoenix.LiveView.Socket in 62µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "QjoZLx0zAAtbYikmVRksJwYKJS4HMSY4pIJwIKoHvRLhx_KHBrAdugyt", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:34:41.052 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "downloaded"} 06:34:41.054 [debug] QUERY OK source="media_items" db=1.1ms idle=61.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:34:41.056 [debug] QUERY OK source="media_items" db=1.7ms queue=0.2ms idle=61.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:34:41.057 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=58.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:34:41.057 [debug] Replied in 5ms 06:34:41.060 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "pending"} 06:34:41.062 [debug] QUERY OK source="media_items" db=1.2ms idle=60.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:34:41.064 [debug] QUERY OK source="media_items" db=0.9ms idle=60.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:34:41.064 [debug] QUERY OK source="sources" db=0.2ms queue=0.3ms idle=10.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:34:41.065 [debug] Replied in 4ms 06:34:41.068 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:34:41.070 [debug] QUERY OK source="tasks" db=0.9ms idle=12.9ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:34:41.073 [debug] QUERY OK source="media_items" db=1.6ms queue=0.1ms idle=13.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [7, 2] 06:34:41.073 [debug] Replied in 5ms 06:34:41.076 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:34:41.076 [debug] Replied in 145µs 06:34:41.257 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:53.400 [debug] HANDLE EVENT "reload_page" in Pinchflat.Pages.HistoryTableLive Parameters: %{"value" => ""} 06:34:53.402 [debug] QUERY OK source="media_items" db=1.4ms queue=0.1ms idle=1160.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:34:53.402 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=1161.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:34:53.403 [debug] QUERY OK source="sources" db=0.2ms idle=1162.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:34:53.403 [debug] Replied in 3ms 06:34:59.518 [info] GET / 06:34:59.518 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 06:34:59.520 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=532.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:59.520 [debug] QUERY OK source="media_profiles" db=0.3ms idle=280.2ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 06:34:59.521 [debug] QUERY OK source="sources" db=0.1ms idle=280.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 06:34:59.521 [debug] QUERY OK source="media_items" db=0.3ms queue=0.2ms idle=281.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:34:59.523 [debug] QUERY OK source="media_items" db=1.0ms queue=0.3ms idle=281.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:34:59.524 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=3.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:59.524 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=3.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:59.525 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=4.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:34:59.527 [debug] QUERY OK source="tasks" db=0.6ms queue=0.1ms idle=5.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:34:59.529 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=5.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [7, 2] 06:34:59.530 [debug] QUERY OK source="media_items" db=0.3ms idle=6.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:34:59.531 [debug] QUERY OK source="media_items" db=0.4ms idle=6.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:34:59.531 [debug] QUERY OK source="sources" db=0.1ms idle=5.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:34:59.534 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=5.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:34:59.535 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms idle=5.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:34:59.536 [debug] QUERY OK source="sources" db=0.3ms queue=0.2ms idle=5.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:34:59.538 [info] Sent 200 in 19ms 06:34:59.562 [info] CONNECTED TO Phoenix.LiveView.Socket in 42µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "fkQ7IQMWBgh-alwMXDYTHgsiLiYQNzkIL7hyWniKSZ9BqptqOZJlbafD", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:34:59.577 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "downloaded"} 06:34:59.577 [debug] QUERY OK source="media_items" db=0.2ms idle=46.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:34:59.578 [debug] QUERY OK source="media_items" db=0.4ms idle=46.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:34:59.579 [debug] QUERY OK source="sources" db=0.2ms idle=44.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:34:59.579 [debug] Replied in 1ms 06:34:59.583 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "pending"} 06:34:59.584 [debug] QUERY OK source="media_items" db=0.4ms idle=47.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:34:59.585 [debug] QUERY OK source="media_items" db=1.3ms idle=47.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:34:59.586 [debug] QUERY OK source="sources" db=0.3ms idle=8.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:34:59.586 [debug] Replied in 3ms 06:34:59.590 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:34:59.591 [debug] QUERY OK source="tasks" db=0.4ms idle=12.5ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:34:59.592 [debug] QUERY OK source="media_items" db=0.3ms idle=12.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [7, 2] 06:34:59.592 [debug] Replied in 2ms 06:34:59.595 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:34:59.595 [debug] Replied in 253µs 06:35:00.373 [info] {"source":"oban","duration":231,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:35:01.312 [info] GET /sources 06:35:01.312 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 06:35:01.313 [debug] QUERY OK source="settings" db=0.3ms idle=939.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:35:01.313 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=323.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:35:01.314 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=74.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:35:01.315 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=74.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:35:01.315 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=75.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:35:01.317 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=3.0ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 06:35:01.318 [debug] QUERY OK source="sources" db=1.3ms queue=0.1ms idle=3.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:35:01.320 [info] Sent 200 in 8ms 06:35:01.340 [info] CONNECTED TO Phoenix.LiveView.Socket in 44µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "Az4FPTw0BAlaWyINYwc-DQsVXHIxGBwK1MVehLkJwkGCNAYbOm88CNCF", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:35:01.350 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 06:35:01.351 [debug] QUERY OK source="sources" db=0.5ms idle=36.5ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 06:35:01.355 [debug] QUERY OK source="sources" db=2.6ms queue=0.1ms idle=36.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:35:01.355 [debug] Replied in 4ms 06:35:01.358 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:35:01.358 [debug] Replied in 117µs 06:35:03.788 [info] GET / 06:35:03.788 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 06:35:03.789 [debug] QUERY OK source="settings" db=0.3ms idle=795.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:35:03.790 [debug] QUERY OK source="media_profiles" db=0.1ms queue=0.1ms idle=549.2ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 06:35:03.791 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=550.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 06:35:03.791 [debug] QUERY OK source="media_items" db=0.0ms idle=550.8ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:35:03.791 [debug] QUERY OK source="media_items" db=0.1ms idle=551.1ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:35:03.792 [debug] QUERY OK source="settings" db=0.7ms idle=2.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:35:03.795 [debug] QUERY OK source="settings" db=1.1ms queue=1.1ms idle=3.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:35:03.800 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=8.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:35:03.802 [debug] QUERY OK source="tasks" db=0.3ms queue=0.2ms idle=10.5ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:35:03.803 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=11.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [7, 2] 06:35:03.805 [debug] QUERY OK source="media_items" db=0.3ms idle=12.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:35:03.806 [debug] QUERY OK source="media_items" db=0.6ms decode=0.1ms queue=0.1ms idle=10.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:35:03.807 [debug] QUERY OK source="sources" db=0.2ms idle=6.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:35:03.809 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=6.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:35:03.810 [debug] QUERY OK source="media_items" db=0.7ms queue=0.1ms idle=6.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:35:03.811 [debug] QUERY OK source="sources" db=0.3ms queue=0.2ms idle=5.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:35:03.813 [info] Sent 200 in 25ms 06:35:03.836 [info] CONNECTED TO Phoenix.LiveView.Socket in 28µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "VzogC2QIXxB_Biw_SylVFyEsFThAHC0UeIsS0p0SR6Iqfo2xeTqr2JrX", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:35:03.852 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "downloaded"} 06:35:03.852 [debug] QUERY OK source="media_items" db=0.2ms idle=45.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:35:03.854 [debug] QUERY OK source="media_items" db=1.2ms idle=45.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:35:03.855 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=45.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:35:03.855 [debug] Replied in 3ms 06:35:03.858 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "pending"} 06:35:03.859 [debug] QUERY OK source="media_items" db=0.5ms idle=48.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:35:03.861 [debug] QUERY OK source="media_items" db=1.4ms idle=47.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:35:03.862 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=9.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:35:03.862 [debug] Replied in 4ms 06:35:03.868 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:35:03.869 [debug] QUERY OK source="tasks" db=0.7ms idle=14.9ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:35:03.872 [debug] QUERY OK source="media_items" db=1.2ms queue=0.1ms idle=14.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [7, 2] 06:35:03.872 [debug] Replied in 4ms 06:35:03.875 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:35:03.875 [debug] Replied in 140µs 06:35:11.257 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:35:41.256 [info] {"source":"oban","duration":466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:36:00.370 [info] {"source":"oban","duration":175,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:36:11.255 [info] {"source":"oban","duration":499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:36:41.256 [info] {"source":"oban","duration":798,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:00.369 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:37:11.256 [info] {"source":"oban","duration":402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:41.256 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:42.835 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/78/98/78980906b6a1c986c4584a7a71dd43809ab4b0dd8da0249f250fcdf7c539782e.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:37:44.364 [debug] Running yt-dlp command for action: download_thumbnail 06:37:44.366 [debug] QUERY OK source="settings" db=0.1ms idle=1116.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:44.367 [debug] QUERY OK source="settings" db=0.3ms idle=1116.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:44.367 [debug] QUERY OK source="settings" db=0.1ms idle=1117.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:44.367 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/2/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/12/d0/12d0a1b8cfc12e02b07e96b254eeb2f20cabf84860c79c22dad60b229a3d1d4b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:37:46.727 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/2/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/12/d0/12d0a1b8cfc12e02b07e96b254eeb2f20cabf84860c79c22dad60b229a3d1d4b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:37:46.733 [info] {"error":"** (CaseClauseError) no case clause matching: {:error, #Ecto.Changeset, valid?: false, ...>, media_downloaded_at: ~U[2026-03-09 05:37:42Z], media_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.mp4\", metadata_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.info.json\", nfo_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.nfo\", predicted_media_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.mp4\", thumbnail_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY-thumb.jpg\"}, errors: [], data: #Pinchflat.Media.MediaItem<>, valid?: false, ...>}","args":{"id":2},"id":10,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":299004136,"event":"job:exception","queue_time":5736911,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:37:46.735 [debug] QUERY OK source="tasks" db=1.4ms idle=485.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:37:46.736 [debug] QUERY OK source="media_items" db=0.4ms queue=0.2ms idle=486.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" = ?) [7] 06:37:55.141 [debug] HANDLE EVENT "reload_page" in Pinchflat.Pages.HistoryTableLive Parameters: %{"value" => ""} 06:37:55.142 [debug] QUERY OK source="media_items" db=0.4ms queue=0.2ms idle=889.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:37:55.143 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=890.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:37:55.145 [debug] QUERY OK source="sources" db=0.4ms queue=0.3ms idle=891.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:37:55.145 [debug] Replied in 3ms 06:37:56.563 [info] GET / 06:37:56.563 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 06:37:56.565 [debug] QUERY OK source="settings" db=0.4ms queue=0.3ms idle=311.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:56.565 [debug] QUERY OK source="media_profiles" db=0.2ms idle=312.2ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 06:37:56.565 [debug] QUERY OK source="sources" db=0.1ms idle=312.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 06:37:56.566 [debug] QUERY OK source="media_items" db=0.1ms idle=312.9ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:37:56.566 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=256.8ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:37:56.567 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:56.568 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:56.569 [debug] QUERY OK source="settings" db=0.5ms idle=2.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:56.570 [debug] QUERY OK source="tasks" db=0.5ms idle=3.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:37:56.571 [debug] QUERY OK source="media_items" db=0.5ms queue=0.2ms idle=4.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" = ?) [7] 06:37:56.573 [debug] QUERY OK source="media_items" db=0.2ms idle=5.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:37:56.574 [debug] QUERY OK source="media_items" db=0.6ms queue=0.4ms idle=5.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:37:56.574 [debug] QUERY OK source="sources" db=0.2ms idle=5.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:37:56.576 [debug] QUERY OK source="media_items" db=0.2ms idle=5.7ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:37:56.577 [debug] QUERY OK source="media_items" db=0.7ms idle=5.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:37:56.579 [debug] QUERY OK source="sources" db=1.1ms idle=5.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:37:56.583 [info] Sent 200 in 19ms 06:37:56.604 [info] CONNECTED TO Phoenix.LiveView.Socket in 45µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "URgbCDZIGwtgeww0YiVWLXw-LiFKLBZ4ckHPb0tHMKizOc1B8FJk8zI4", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:37:56.619 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "downloaded"} 06:37:56.619 [debug] QUERY OK source="media_items" db=0.3ms idle=45.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:37:56.621 [debug] QUERY OK source="media_items" db=1.0ms idle=45.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:37:56.622 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=44.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:37:56.622 [debug] Replied in 3ms 06:37:56.624 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "pending"} 06:37:56.625 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=47.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:37:56.627 [debug] QUERY OK source="media_items" db=0.8ms idle=47.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:37:56.628 [debug] QUERY OK source="sources" db=0.8ms queue=0.1ms idle=7.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:37:56.628 [debug] Replied in 3ms 06:37:56.633 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:37:56.634 [debug] QUERY OK source="tasks" db=0.4ms idle=12.5ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:37:56.634 [debug] QUERY OK source="media_items" db=0.3ms idle=12.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" = ?) [7] 06:37:56.635 [debug] Replied in 1ms 06:37:56.636 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:37:56.636 [debug] Replied in 151µs 06:37:57.869 [info] GET / 06:37:57.870 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 06:37:57.870 [debug] QUERY OK source="settings" db=0.1ms idle=1243.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:57.870 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1242.0ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 06:37:57.870 [debug] QUERY OK source="sources" db=0.0ms idle=1236.5ms SELECT count(s0."id") FROM "sources" AS s0 [] 06:37:57.871 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=1236.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:37:57.871 [debug] QUERY OK source="media_items" db=0.1ms idle=560.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:37:57.872 [debug] QUERY OK source="settings" db=0.2ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:57.872 [debug] QUERY OK source="settings" db=0.2ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:57.873 [debug] QUERY OK source="settings" db=0.0ms idle=2.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:37:57.874 [debug] QUERY OK source="tasks" db=0.3ms queue=0.1ms idle=3.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:37:57.875 [debug] QUERY OK source="media_items" db=0.3ms queue=0.2ms idle=3.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" = ?) [7] 06:37:57.877 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=4.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:37:57.878 [debug] QUERY OK source="media_items" db=0.6ms idle=4.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:37:57.878 [debug] QUERY OK source="sources" db=0.4ms idle=5.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:37:57.882 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=7.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:37:57.883 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms idle=7.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:37:57.884 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=6.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:37:57.887 [info] Sent 200 in 17ms 06:37:57.910 [info] CONNECTED TO Phoenix.LiveView.Socket in 25µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "aysiMjozJhJpCFUJQj8VGww_UyEWAAY7YXqjnKIQD80GoyrtHG7kdVYw", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:37:57.925 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "downloaded"} 06:37:57.925 [debug] QUERY OK source="media_items" db=0.2ms idle=47.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:37:57.926 [debug] QUERY OK source="media_items" db=0.6ms idle=47.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:37:57.927 [debug] QUERY OK source="sources" db=0.2ms queue=0.2ms idle=44.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:37:57.927 [debug] Replied in 2ms 06:37:57.930 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "media_state" => "pending"} 06:37:57.931 [debug] QUERY OK source="media_items" db=0.5ms queue=0.2ms idle=47.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:37:57.933 [debug] QUERY OK source="media_items" db=0.8ms idle=47.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:37:57.934 [debug] QUERY OK source="sources" db=0.2ms queue=0.2ms idle=7.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:37:57.934 [debug] Replied in 4ms 06:37:57.937 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:37:57.938 [debug] QUERY OK source="tasks" db=0.6ms idle=11.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:37:57.939 [debug] QUERY OK source="media_items" db=0.2ms idle=11.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" = ?) [7] 06:37:57.939 [debug] Replied in 1ms 06:37:57.940 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:37:57.940 [debug] Replied in 186µs 06:38:00.367 [info] {"source":"oban","duration":214,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:38:04.332 [info] {"args":{"id":2},"id":10,"meta":{},"system_time":1773034684339640029,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":2,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:38:04.333 [debug] QUERY OK source="media_items" db=0.5ms idle=1079.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 06:38:04.333 [debug] QUERY OK source="tasks" db=0.9ms queue=0.1ms idle=1011.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:38:04.333 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:38:04.334 [debug] QUERY OK source="sources" db=0.4ms idle=81.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:38:04.335 [debug] QUERY OK source="media_items" db=0.7ms idle=9.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [7, 2] 06:38:04.335 [debug] QUERY OK source="media_profiles" db=1.1ms idle=2.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:38:04.336 [debug] QUERY OK source="media_items" db=0.3ms idle=3.1ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [2] 06:38:04.338 [debug] QUERY OK source="media_metadata" db=0.3ms queue=0.1ms idle=4.0ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [2] 06:38:04.338 [debug] QUERY OK source="media_profiles" db=0.2ms idle=3.7ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:38:04.339 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=3.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:04.339 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=3.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:04.343 [debug] Running yt-dlp command for action: get_downloadable_status 06:38:04.344 [debug] QUERY OK source="settings" db=0.1ms idle=7.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:04.344 [debug] QUERY OK source="settings" db=0.1ms idle=5.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:04.344 [debug] QUERY OK source="settings" db=0.0ms idle=5.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:04.344 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/8a/fe/8afedd84953ee301a554e4e3a699b0d6d6f4cc2ef2709072becd2ae272c8aca2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:38:06.700 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/8a/fe/8afedd84953ee301a554e4e3a699b0d6d6f4cc2ef2709072becd2ae272c8aca2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:38:06.701 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=447.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:06.702 [debug] QUERY OK source="settings" db=0.6ms queue=0.1ms idle=448.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:06.704 [debug] Running yt-dlp command for action: get_downloadable_status 06:38:06.706 [debug] QUERY OK source="settings" db=0.1ms idle=453.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:06.707 [debug] QUERY OK source="settings" db=0.1ms idle=453.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:06.707 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=379.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:06.707 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/89/d0/89d0cc8fbeaeca626bfcfd3f6310bbd30fbed600e2b0bfb899053150be926905.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:38:10.288 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/89/d0/89d0cc8fbeaeca626bfcfd3f6310bbd30fbed600e2b0bfb899053150be926905.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:38:10.289 [debug] Running yt-dlp command for action: download 06:38:10.290 [debug] QUERY OK source="settings" db=0.1ms idle=957.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:10.290 [debug] QUERY OK source="settings" db=0.3ms idle=37.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:10.290 [debug] QUERY OK source="settings" db=0.1ms idle=37.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:38:10.291 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/95/47/95476b8bcb62cfa47a9d2d57aa21ab7dc5c030f848dfa50ec3624ba84da96222.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:38:11.257 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:38:41.275 [info] {"source":"oban","duration":18772,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:39:00.364 [info] {"source":"oban","duration":191,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:39:07.920 [info] GET /sources 06:39:07.920 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 06:39:07.921 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1671.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:39:07.921 [debug] QUERY OK source="settings" db=0.1ms idle=1671.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:39:07.922 [debug] QUERY OK source="settings" db=0.1ms idle=1502.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:39:07.922 [debug] QUERY OK source="settings" db=0.2ms idle=672.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:39:07.923 [debug] QUERY OK source="settings" db=0.0ms idle=502.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:39:07.945 [debug] QUERY OK source="sources" db=21.3ms idle=2.3ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 06:39:07.947 [debug] QUERY OK source="sources" db=1.7ms idle=23.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:39:07.950 [info] Sent 200 in 29ms 06:39:07.975 [info] CONNECTED TO Phoenix.LiveView.Socket in 33µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "bTVkMj4ICwRgcywkZ3VVPhVNBR5FGBYr_F7jjpdGMCIjJ32QQ5aT7NIg", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 06:39:07.984 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 06:39:07.985 [debug] QUERY OK source="sources" db=0.6ms idle=62.7ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 06:39:07.987 [debug] QUERY OK source="sources" db=1.1ms idle=63.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:39:07.987 [debug] Replied in 3ms 06:39:07.989 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 06:39:07.989 [debug] Replied in 118µs 06:39:09.648 [debug] HANDLE EVENT "update" in PinchflatWeb.Sources.SourceLive.IndexTableLive Component: PinchflatWeb.Sources.SourceLive.SourceEnableToggle Parameters: %{"_target" => ["source", "enabled"], "source" => %{"enabled" => "false"}} 06:39:09.648 [debug] QUERY OK source="sources" db=0.2ms idle=398.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:39:09.667 [debug] QUERY OK source="sources" db=18.6ms idle=399.1ms UPDATE "sources" SET "enabled" = ?, "updated_at" = ? WHERE "id" = ? [false, ~U[2026-03-09 05:39:09Z], 1] 06:39:09.669 [debug] QUERY OK source="media_items" db=1.0ms idle=418.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 06:39:09.670 [debug] QUERY OK source="tasks" db=0.7ms idle=419.6ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."media_item_id" = ?) AND (o1."state" IN (?,?,?)) [2, "available", "scheduled", "retryable"] 06:39:09.670 [debug] QUERY OK source="tasks" db=0.2ms queue=0.1ms idle=247.6ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."media_item_id" = ?) AND (o1."state" IN (?,?,?)) [7, "available", "scheduled", "retryable"] 06:39:09.671 [debug] QUERY OK source="tasks" db=0.4ms idle=22.1ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."worker" LIKE ?) AND (o1."state" IN (?,?,?,?)) [1, "%.FastIndexingWorker", "available", "scheduled", "retryable", "executing"] 06:39:09.672 [debug] QUERY OK source="tasks" db=0.4ms idle=3.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."worker" LIKE ?) AND (o1."state" IN (?,?,?,?)) [1, "%.MediaCollectionIndexingWorker", "available", "scheduled", "retryable", "executing"] 06:39:09.676 [debug] QUERY OK source="tasks" db=2.3ms idle=3.2ms DELETE FROM "tasks" WHERE "id" = ? [10] 06:39:09.677 [debug] QUERY OK source="tasks" db=1.0ms idle=5.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."worker" LIKE ?) AND (o1."state" IN (?,?,?,?)) [1, "%.FastIndexingWorker", "available", "scheduled", "retryable", "executing"] 06:39:09.677 [debug] Replied in 29ms 06:39:11.284 [info] {"source":"oban","duration":9347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:39:41.822 [info] {"source":"oban","duration":538811,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:40:00.363 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:40:11.850 [info] {"source":"oban","duration":28392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:40:41.849 [info] {"source":"oban","duration":450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:00.362 [info] {"source":"oban","duration":209,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:41:11.850 [info] {"source":"oban","duration":730,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:20.735 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/95/47/95476b8bcb62cfa47a9d2d57aa21ab7dc5c030f848dfa50ec3624ba84da96222.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: Replacing existing file "/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY-thumb.jpg" 06:41:20.779 [debug] Running yt-dlp command for action: download_thumbnail 06:41:20.780 [debug] QUERY OK source="settings" db=0.2ms idle=1537.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:20.781 [debug] QUERY OK source="settings" db=0.3ms idle=1538.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:20.781 [debug] QUERY OK source="settings" db=0.0ms idle=1538.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:20.781 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/2/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/bb/58/bb58a5a97d27f394097604aa630636e5c74efc7ebfcda5854f28a1e0ce8c8fad.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:41:23.053 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/2/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/bb/58/bb58a5a97d27f394097604aa630636e5c74efc7ebfcda5854f28a1e0ce8c8fad.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:41:23.064 [info] {"error":"** (CaseClauseError) no case clause matching: {:error, #Ecto.Changeset, valid?: false, ...>, media_downloaded_at: ~U[2026-03-09 05:41:20Z], media_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.mp4\", metadata_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.info.json\", nfo_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.nfo\", predicted_media_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.mp4\", thumbnail_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY-thumb.jpg\"}, errors: [], data: #Pinchflat.Media.MediaItem<>, valid?: false, ...>}","args":{"id":2},"id":10,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":198731989,"event":"job:exception","queue_time":601382,"attempt":2,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:41:41.849 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:42.947 [info] {"args":{"id":2},"id":10,"meta":{},"system_time":1773034902953115938,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":3,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:41:42.948 [debug] QUERY OK source="media_items" db=0.3ms idle=676.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 06:41:42.948 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:41:42.980 [debug] QUERY OK source="sources" db=31.7ms idle=677.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:41:42.980 [debug] QUERY OK source="media_profiles" db=0.1ms idle=709.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:41:42.981 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=66.2ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [2] 06:41:42.988 [debug] QUERY OK source="media_metadata" db=5.3ms queue=0.1ms idle=35.9ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [2] 06:41:42.989 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=41.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:41:42.990 [debug] QUERY OK source="settings" db=0.1ms idle=10.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:42.991 [debug] QUERY OK source="settings" db=0.2ms idle=9.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:42.994 [debug] Running yt-dlp command for action: get_downloadable_status 06:41:42.996 [debug] QUERY OK source="settings" db=0.1ms idle=14.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:42.996 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=7.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:42.997 [debug] QUERY OK source="settings" db=0.2ms idle=6.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:42.997 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/eb/13/eb13f594addb66684c5aa726b9ebc909ad218964a921694a95b6afe5dc4c795d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:41:45.104 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/eb/13/eb13f594addb66684c5aa726b9ebc909ad218964a921694a95b6afe5dc4c795d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:41:45.105 [debug] QUERY OK source="settings" db=0.4ms idle=834.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:45.105 [debug] QUERY OK source="settings" db=0.1ms idle=835.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:45.116 [debug] Running yt-dlp command for action: get_downloadable_status 06:41:45.145 [debug] QUERY OK source="settings" db=0.1ms idle=875.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:45.145 [debug] QUERY OK source="settings" db=0.2ms idle=875.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:45.146 [debug] QUERY OK source="settings" db=0.1ms idle=221.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:45.146 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/38/3c/383ccd0aebc90d06be6108b1a786201df041896394ae91717e89d2c4e5103630.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:41:48.928 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/38/3c/383ccd0aebc90d06be6108b1a786201df041896394ae91717e89d2c4e5103630.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:41:48.928 [debug] Running yt-dlp command for action: download 06:41:48.961 [debug] QUERY OK source="settings" db=0.2ms idle=690.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:48.962 [debug] QUERY OK source="settings" db=0.1ms idle=691.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:48.962 [debug] QUERY OK source="settings" db=0.1ms idle=691.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:41:48.963 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/2c/ab/2caba0f5b17102318b3ae3bf5668c5d8f84c589f70de6ab6f98484451e6234ad.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:42:00.360 [info] {"source":"oban","duration":207,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:42:12.735 [info] {"source":"oban","duration":886729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:42:42.736 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:42:56.983 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=B-dIs7yb1EQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/a9/3f/a93fb0eafd0379b27a45882d56c444e7f0af1648306b527cc32502db5ff1f170.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:42:57.009 [debug] Running yt-dlp command for action: download_thumbnail 06:42:57.010 [debug] QUERY OK source="settings" db=0.2ms idle=969.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:42:57.010 [debug] QUERY OK source="settings" db=0.2ms idle=727.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:42:57.011 [debug] QUERY OK source="settings" db=0.1ms idle=727.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:42:57.011 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=B-dIs7yb1EQ --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/7/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/61/ca/61caf784950cf3b00760eb114b9e7570da3e124f35b15dfec17df6f482f9c10e.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:43:00.358 [info] {"source":"oban","duration":206,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:43:01.092 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=B-dIs7yb1EQ --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/7/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/61/ca/61caf784950cf3b00760eb114b9e7570da3e124f35b15dfec17df6f482f9c10e.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:43:01.092 [debug] QUERY OK db=0.0ms queue=0.1ms idle=809.3ms begin [] 06:43:01.186 [debug] QUERY OK source="media_items" db=93.3ms UPDATE "media_items" SET "media_downloaded_at" = ?, "media_filepath" = ?, "metadata_filepath" = ?, "nfo_filepath" = ?, "thumbnail_filepath" = ?, "updated_at" = ? WHERE "id" = ? [~U[2026-03-09 05:42:56Z], "/downloads/youtube/Requiem/Season 2026/s2026e022600 - Resident Evil Requiem - Part 1 - A NEW HORROR BEGINS...mp4", "/downloads/youtube/Requiem/Season 2026/s2026e022600 - Resident Evil Requiem - Part 1 - A NEW HORROR BEGINS...info.json", "/downloads/youtube/Requiem/Season 2026/s2026e022600 - Resident Evil Requiem - Part 1 - A NEW HORROR BEGINS...nfo", "/downloads/youtube/Requiem/Season 2026/s2026e022600 - Resident Evil Requiem - Part 1 - A NEW HORROR BEGINS..-thumb.jpg", ~U[2026-03-09 05:43:01Z], 7] 06:43:01.206 [debug] QUERY OK source="media_metadata" db=20.3ms INSERT INTO "media_metadata" ("metadata_filepath","thumbnail_filepath","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5) RETURNING "id" ["/config/metadata/media_items/7/metadata.json.gz", "/config/metadata/media_items/7/thumbnail.jpg", 7, ~U[2026-03-09 05:43:01Z], ~U[2026-03-09 05:43:01Z]] 06:43:01.242 [debug] QUERY OK db=35.6ms commit [] 06:43:01.249 [debug] QUERY OK source="media_items" db=6.1ms idle=960.6ms UPDATE "media_items" SET "media_size_bytes" = ?, "updated_at" = ? WHERE "id" = ? [3786391290, ~U[2026-03-09 05:43:01Z], 7] 06:43:01.250 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:43:01.252 [info] {"args":{"id":7},"id":8,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":846811167,"event":"job:stop","queue_time":350490696,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:43:12.812 [info] {"source":"oban","duration":75932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:43:42.811 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:00.356 [info] {"source":"oban","duration":433,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:44:12.996 [info] {"source":"oban","duration":185179,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:13.164 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/2c/ab/2caba0f5b17102318b3ae3bf5668c5d8f84c589f70de6ab6f98484451e6234ad.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: Replacing existing file "/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY-thumb.jpg" 06:44:13.204 [debug] Running yt-dlp command for action: download_thumbnail 06:44:13.205 [debug] QUERY OK source="settings" db=0.1ms idle=924.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:13.205 [debug] QUERY OK source="settings" db=0.2ms idle=925.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:13.205 [debug] QUERY OK source="settings" db=0.0ms idle=925.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:13.205 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/2/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/91/3a/913acab3f4bfa4488713db14d4362cd627e885fb7d05cc40c382b182da286297.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:44:15.369 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/2/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/91/3a/913acab3f4bfa4488713db14d4362cd627e885fb7d05cc40c382b182da286297.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:44:15.373 [info] {"error":"** (CaseClauseError) no case clause matching: {:error, #Ecto.Changeset, valid?: false, ...>, media_downloaded_at: ~U[2026-03-09 05:44:13Z], media_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.mp4\", metadata_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.info.json\", nfo_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.nfo\", predicted_media_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.mp4\", thumbnail_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY-thumb.jpg\"}, errors: [], data: #Pinchflat.Media.MediaItem<>, valid?: false, ...>}","args":{"id":2},"id":10,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":152431738,"event":"job:exception","queue_time":859690,"attempt":3,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:44:38.799 [notice] :alarm_handler: {:clear, :system_memory_high_watermark} 06:44:40.619 [info] {"args":{"id":2},"id":10,"meta":{},"system_time":1773035080622509383,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":4,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:44:40.620 [debug] QUERY OK source="media_items" db=0.7ms idle=1012.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 06:44:40.621 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:44:40.622 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=343.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:44:40.622 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=343.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:44:40.623 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=10.9ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [2] 06:44:40.626 [debug] QUERY OK source="media_metadata" db=0.7ms idle=6.0ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [2] 06:44:40.627 [debug] QUERY OK source="media_profiles" db=0.6ms idle=5.8ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:44:40.628 [debug] QUERY OK source="settings" db=0.5ms idle=5.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:40.629 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=5.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:40.631 [debug] Running yt-dlp command for action: get_downloadable_status 06:44:40.634 [debug] QUERY OK source="settings" db=0.2ms idle=10.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:40.634 [debug] QUERY OK source="settings" db=0.1ms idle=8.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:40.635 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=7.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:40.635 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/44/85/44856953228b7a861846fe593550989dfd9bb23a7c6e9529de6b1645c98245f9.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:44:42.948 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/44/85/44856953228b7a861846fe593550989dfd9bb23a7c6e9529de6b1645c98245f9.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:44:42.950 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=671.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:42.951 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=672.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:42.953 [debug] Running yt-dlp command for action: get_downloadable_status 06:44:42.956 [debug] QUERY OK source="settings" db=0.3ms idle=677.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:42.957 [debug] QUERY OK source="settings" db=0.2ms idle=678.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:42.957 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=339.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:42.957 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/fc/35/fc35ac4932d7fb1d6360ed9b4a10416c70d6705fc2a2e02c6eda9721780296dc.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:44:42.996 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:46.673 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/fc/35/fc35ac4932d7fb1d6360ed9b4a10416c70d6705fc2a2e02c6eda9721780296dc.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 06:44:46.673 [debug] Running yt-dlp command for action: download 06:44:46.675 [debug] QUERY OK source="settings" db=0.6ms idle=398.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:46.676 [debug] QUERY OK source="settings" db=0.6ms idle=398.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:46.677 [debug] QUERY OK source="settings" db=0.3ms queue=0.2ms idle=399.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:44:46.677 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/4b/60/4b6034b4e8c7dba41d66f8c1fa92545fc59bbb41c7d397f42dbbfeb2b978f29f.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:45:00.353 [info] {"source":"oban","duration":203,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:45:12.996 [info] {"source":"oban","duration":646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:45:38.801 [notice] :alarm_handler: {:set, {:system_memory_high_watermark, []}} 06:45:43.027 [info] {"source":"oban","duration":32061,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:46:00.352 [info] {"source":"oban","duration":220,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:46:28.027 [error] Exqlite.Connection (#PID<0.2320.0>) disconnected: ** (DBConnection.ConnectionError) client #PID<0.2367.0> timed out because it queued and checked out the connection for longer than 15000ms #PID<0.2367.0> was at location: (exqlite 0.31.0) lib/exqlite/sqlite3.ex:227: Exqlite.Sqlite3.multi_step/3 (exqlite 0.31.0) lib/exqlite/sqlite3.ex:265: Exqlite.Sqlite3.try_fetch_all/3 (exqlite 0.31.0) lib/exqlite/sqlite3.ex:259: Exqlite.Sqlite3.fetch_all/3 (exqlite 0.31.0) lib/exqlite/connection.ex:686: Exqlite.Connection.get_rows/2 (exqlite 0.31.0) lib/exqlite/connection.ex:632: Exqlite.Connection.execute/4 (db_connection 2.7.0) lib/db_connection/holder.ex:354: DBConnection.Holder.holder_apply/4 (db_connection 2.7.0) lib/db_connection.ex:1558: DBConnection.run_execute/5 06:46:28.066 [info] {"source":"oban","duration":15040875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner"} 06:46:28.110 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 06:46:28.250 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:1080,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/youtube/Requiem/Season %(upload_date>%Y)S/s%(upload_date>%Y)Se%(upload_date>%m%d)S00 - %(title)S.%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/4b/60/4b6034b4e8c7dba41d66f8c1fa92545fc59bbb41c7d397f42dbbfeb2b978f29f.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: Replacing existing file "/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY-thumb.jpg" 06:46:28.285 [debug] Running yt-dlp command for action: download_thumbnail 06:46:28.287 [debug] QUERY OK source="settings" db=0.5ms queue=0.2ms idle=1948.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:46:28.288 [debug] QUERY OK source="settings" db=0.4ms idle=1949.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:46:28.288 [debug] QUERY OK source="settings" db=0.3ms idle=1437.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:46:28.289 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/2/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/33/7f/337f1fcf83abc4e3117bec6e44b562ba8bd7f3e7ef843bb46bc235b1c6dd8709.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:46:30.845 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/2/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/33/7f/337f1fcf83abc4e3117bec6e44b562ba8bd7f3e7ef843bb46bc235b1c6dd8709.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:46:30.859 [info] {"error":"** (CaseClauseError) no case clause matching: {:error, #Ecto.Changeset, valid?: false, ...>, media_downloaded_at: ~U[2026-03-09 05:46:28Z], media_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.mp4\", metadata_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.info.json\", nfo_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.nfo\", predicted_media_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY.mp4\", thumbnail_filepath: \"/downloads/youtube/Requiem/Season 2026/s2026e022800 - Resident Evil Requiem - Part 3 - WELCOME TO RACOON CITY-thumb.jpg\"}, errors: [], data: #Pinchflat.Media.MediaItem<>, valid?: false, ...>}","args":{"id":2},"id":10,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":110232561,"event":"job:exception","queue_time":246870,"attempt":4,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:46:38.806 [notice] :alarm_handler: {:clear, :system_memory_high_watermark} 06:46:58.067 [info] {"source":"oban","duration":1128,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:47:00.350 [info] {"source":"oban","duration":461,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:47:01.945 [info] {"args":{"id":2},"id":10,"meta":{},"system_time":1773035221955179146,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":5,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:47:01.961 [debug] QUERY OK source="media_items" db=16.5ms idle=1017.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 06:47:01.962 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:47:01.963 [debug] QUERY OK source="sources" db=0.7ms queue=0.1ms idle=623.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 06:47:01.970 [debug] QUERY OK source="media_profiles" db=5.9ms queue=0.3ms idle=625.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:47:01.971 [debug] QUERY OK source="media_items" db=0.8ms idle=38.7ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [2] 06:47:01.973 [debug] QUERY OK source="media_metadata" db=0.6ms queue=0.1ms idle=29.2ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [2] 06:47:01.974 [debug] QUERY OK source="media_profiles" db=0.2ms idle=12.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:47:01.977 [debug] QUERY OK source="settings" db=2.6ms queue=0.1ms idle=11.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:47:01.978 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=7.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:47:01.980 [debug] Running yt-dlp command for action: get_downloadable_status 06:47:01.982 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=10.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:47:01.983 [debug] QUERY OK source="settings" db=0.3ms idle=8.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:47:01.983 [debug] QUERY OK source="settings" db=0.1ms idle=8.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:47:01.983 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/94/81/9481c2f148e2e024b2a9eebf716ee038bc66aa0e6fbf6a62c5847183ddc3452f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:47:04.746 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/94/81/9481c2f148e2e024b2a9eebf716ee038bc66aa0e6fbf6a62c5847183ddc3452f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:47:04.746 [debug] QUERY OK source="settings" db=0.2ms idle=1407.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:47:04.747 [debug] QUERY OK source="settings" db=0.3ms idle=1408.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:47:04.749 [debug] Running yt-dlp command for action: get_downloadable_status 06:47:04.752 [debug] QUERY OK source="settings" db=0.2ms idle=1412.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:47:04.752 [debug] QUERY OK source="settings" db=0.1ms idle=1413.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:47:04.752 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=812.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:47:04.753 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/2f/80/2f809d40b00fcf13c6c243bacd06bc89e23b709d537b03442606c25f977ae96e.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:47:07.386 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=yhGhv6TRUcA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/2f/80/2f809d40b00fcf13c6c243bacd06bc89e23b709d537b03442606c25f977ae96e.json --cookies /config/extras/cookies.txt --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies . WARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies . WARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies . WARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies . WARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies . WARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies . ERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies 06:47:07.386 [error] yt-dlp download error for media item #2: "WARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies\n" 06:47:07.401 [debug] QUERY OK source="media_items" db=14.1ms idle=1047.8ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["WARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies\n", ~U[2026-03-09 05:47:07Z], 2] 06:47:07.401 [error] yt-dlp download will not be retried: "WARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nWARNING: [youtube] The provided YouTube account cookies are no longer valid. They have likely been rotated in the browser as a security measure. For tips on how to effectively export YouTube cookies, refer to https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies .\nERROR: [youtube] yhGhv6TRUcA: Sign in to confirm your age. This video may be inappropriate for some users. Use --cookies-from-browser or --cookies for the authentication. See https://github.com/yt-dlp/yt-dlp/wiki/FAQ#how-do-i-pass-cookies-to-yt-dlp for how to manually pass cookies. Also see https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies for tips on effectively exporting YouTube cookies\n" 06:47:07.404 [info] {"args":{"id":2},"id":10,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":5456929,"event":"job:stop","queue_time":91229,"attempt":5,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:47:28.069 [info] {"source":"oban","duration":2561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:47:38.810 [notice] :alarm_handler: {:set, {:system_memory_high_watermark, []}} 06:47:58.080 [info] {"source":"oban","duration":11078,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:48:00.348 [info] {"source":"oban","duration":236,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:48:28.079 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:48:38.813 [notice] :alarm_handler: {:clear, :system_memory_high_watermark} 06:48:58.080 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:49:00.346 [info] {"source":"oban","duration":173,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:49:28.079 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:49:58.080 [info] {"source":"oban","duration":774,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:50:00.345 [info] {"source":"oban","duration":486,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:50:28.179 [info] {"source":"oban","duration":804,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:50:58.180 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:51:00.442 [info] {"source":"oban","duration":296,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:51:28.180 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:51:58.182 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:52:00.441 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:52:28.182 [info] {"source":"oban","duration":834,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:52:58.182 [info] {"source":"oban","duration":857,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:53:00.440 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:53:28.185 [info] {"source":"oban","duration":1590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:53:58.185 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:54:00.439 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:54:28.185 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:54:38.924 [notice] :alarm_handler: {:set, {:system_memory_high_watermark, []}} 06:54:58.188 [info] {"source":"oban","duration":1771,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:55:00.438 [info] {"source":"oban","duration":417,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:55:28.188 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:55:38.928 [notice] :alarm_handler: {:clear, :system_memory_high_watermark} 06:55:58.188 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:56:00.437 [info] {"source":"oban","duration":183,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:56:28.189 [info] {"source":"oban","duration":887,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:56:58.189 [info] {"source":"oban","duration":457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:57:00.436 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:57:28.189 [info] {"source":"oban","duration":672,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:57:58.191 [info] {"source":"oban","duration":1046,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:58:00.435 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:58:28.191 [info] {"source":"oban","duration":895,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:58:58.191 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:59:00.434 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:59:28.192 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:59:58.193 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:00:00.434 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:00:28.193 [info] {"source":"oban","duration":487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:00:58.193 [info] {"source":"oban","duration":819,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:01:00.434 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:01:28.193 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:01:58.193 [info] {"source":"oban","duration":852,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:02:00.432 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:02:28.196 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:02:58.196 [info] {"source":"oban","duration":822,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:03:00.433 [info] {"source":"oban","duration":390,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:03:28.197 [info] {"source":"oban","duration":1063,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:03:58.198 [info] {"source":"oban","duration":912,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:04:00.432 [info] {"source":"oban","duration":208,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:04:28.198 [info] {"source":"oban","duration":781,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:04:58.199 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:05:00.431 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:05:28.201 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:05:58.202 [info] {"source":"oban","duration":1623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:06:00.431 [info] {"source":"oban","duration":813,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:06:28.204 [info] {"source":"oban","duration":880,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:06:58.205 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:07:00.430 [info] {"source":"oban","duration":300,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:07:28.206 [info] {"source":"oban","duration":907,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:07:58.207 [info] {"source":"oban","duration":913,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:08:00.429 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:08:28.208 [info] {"source":"oban","duration":1465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:08:58.208 [info] {"source":"oban","duration":488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:09:00.428 [info] {"source":"oban","duration":236,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:09:08.238 [info] GET /sources 07:09:08.238 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 07:09:08.240 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=789.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:09:08.240 [debug] QUERY OK source="settings" db=0.1ms idle=789.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:09:08.241 [debug] QUERY OK source="settings" db=0.4ms idle=790.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:09:08.242 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=791.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:09:08.242 [debug] QUERY OK source="settings" db=0.1ms idle=419.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:09:08.267 [debug] QUERY OK source="sources" db=24.1ms queue=0.1ms idle=3.4ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 07:09:08.269 [debug] QUERY OK source="sources" db=1.4ms queue=0.1ms idle=27.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 07:09:08.272 [info] Sent 200 in 34ms 07:09:08.418 [info] CONNECTED TO Phoenix.LiveView.Socket in 33µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "ZglnEwInXAVvYSMURx8GWyMVAH8EImkTTz4KV_3FBQFZjYa4gmd5vt6_", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 07:09:08.638 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 07:09:08.639 [debug] QUERY OK source="sources" db=0.8ms queue=0.1ms idle=397.3ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 07:09:08.643 [debug] QUERY OK source="sources" db=2.4ms queue=0.1ms idle=398.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 07:09:08.643 [debug] Replied in 5ms 07:09:08.645 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 07:09:08.645 [debug] Replied in 126µs 07:09:28.208 [info] {"source":"oban","duration":849,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:09:58.282 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:10:00.499 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:10:28.284 [info] {"source":"oban","duration":1585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:10:58.285 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:11:00.499 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:11:28.286 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:11:58.287 [info] {"source":"oban","duration":889,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:12:00.498 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:12:28.288 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:12:58.290 [info] {"source":"oban","duration":1009,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:13:00.499 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:13:28.291 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:13:58.292 [info] {"source":"oban","duration":822,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:14:00.498 [info] {"source":"oban","duration":450,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:14:28.293 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:14:58.294 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:15:00.496 [info] {"source":"oban","duration":402,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:15:28.295 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:15:58.295 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:16:00.496 [info] {"source":"oban","duration":439,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:16:28.297 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:16:58.299 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:17:00.496 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:17:28.300 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:17:58.302 [info] {"source":"oban","duration":989,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:18:00.495 [info] {"source":"oban","duration":246,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:18:28.304 [info] {"source":"oban","duration":1635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:18:58.305 [info] {"source":"oban","duration":1006,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:19:00.494 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:19:28.306 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:19:58.307 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:20:00.493 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:20:28.308 [info] {"source":"oban","duration":849,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:20:58.309 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:21:00.493 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:21:28.310 [info] {"source":"oban","duration":833,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:21:58.311 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:22:00.493 [info] {"source":"oban","duration":296,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:22:28.313 [info] {"source":"oban","duration":1701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:22:58.314 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:23:00.492 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:23:28.315 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:23:58.315 [info] {"source":"oban","duration":902,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:24:00.492 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:24:28.316 [info] {"source":"oban","duration":867,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:24:58.318 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:25:00.492 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:25:28.319 [info] {"source":"oban","duration":1573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:25:58.321 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:26:00.491 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:26:28.321 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:26:58.338 [info] {"source":"oban","duration":937,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:27:00.506 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:27:28.362 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:27:58.366 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:28:00.531 [info] {"source":"oban","duration":237,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:28:28.367 [info] {"source":"oban","duration":774,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:28:58.368 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:29:00.531 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:29:28.369 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:29:58.369 [info] {"source":"oban","duration":895,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:30:00.529 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:30:28.370 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:30:58.372 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:31:00.528 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:31:28.373 [info] {"source":"oban","duration":673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:31:58.375 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:32:00.528 [info] {"source":"oban","duration":260,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:32:28.375 [info] {"source":"oban","duration":927,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:32:58.376 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:33:00.526 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:33:28.376 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:33:58.377 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:34:00.525 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:34:28.379 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:34:58.379 [info] {"source":"oban","duration":902,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:35:00.525 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:35:28.380 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:35:58.383 [info] {"source":"oban","duration":1629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:36:00.525 [info] {"source":"oban","duration":391,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:36:28.384 [info] {"source":"oban","duration":1603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:36:58.386 [info] {"source":"oban","duration":1569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:37:00.523 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:37:28.388 [info] {"source":"oban","duration":1553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:37:58.388 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:38:00.522 [info] {"source":"oban","duration":389,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:38:28.389 [info] {"source":"oban","duration":803,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:38:58.390 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:39:00.522 [info] {"source":"oban","duration":393,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:39:28.391 [info] {"source":"oban","duration":1027,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:39:58.392 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:40:00.521 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:40:28.393 [info] {"source":"oban","duration":1080,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:40:58.395 [info] {"source":"oban","duration":1585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:41:00.521 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:41:28.396 [info] {"source":"oban","duration":1643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:41:58.397 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:42:00.520 [info] {"source":"oban","duration":764,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:42:28.399 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:42:58.400 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:43:00.520 [info] {"source":"oban","duration":732,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:43:28.402 [info] {"source":"oban","duration":1656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:43:58.403 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:44:00.518 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:44:28.404 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:44:58.403 [info] {"source":"oban","duration":471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:45:00.517 [info] {"source":"oban","duration":192,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:45:28.403 [info] {"source":"oban","duration":465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:45:39.129 [notice] :alarm_handler: {:set, {:system_memory_high_watermark, []}} 07:45:58.456 [info] {"source":"oban","duration":890,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:46:00.568 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:46:28.456 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:46:58.456 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:47:00.567 [info] {"source":"oban","duration":187,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:47:28.457 [info] {"source":"oban","duration":1074,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:47:58.456 [info] {"source":"oban","duration":906,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:48:00.565 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:48:28.457 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:48:58.458 [info] {"source":"oban","duration":911,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:49:00.564 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:49:28.459 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:49:58.459 [info] {"source":"oban","duration":917,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:50:00.563 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:50:28.460 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:50:58.460 [info] {"source":"oban","duration":875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:51:00.563 [info] {"source":"oban","duration":428,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:51:28.461 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:51:58.461 [info] {"source":"oban","duration":801,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:52:00.562 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:52:28.462 [info] {"source":"oban","duration":1015,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:52:58.462 [info] {"source":"oban","duration":870,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:53:00.561 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:53:28.463 [info] {"source":"oban","duration":944,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:53:58.464 [info] {"source":"oban","duration":868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:54:00.559 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:54:28.464 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:54:58.464 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:55:00.558 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:55:28.465 [info] {"source":"oban","duration":1715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:55:58.467 [info] {"source":"oban","duration":1630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:56:00.557 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:56:28.468 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:56:58.469 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:57:00.556 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:57:28.471 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:57:58.473 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:58:00.556 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:58:28.474 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:58:58.476 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:00.554 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:59:28.477 [info] {"source":"oban","duration":1721,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:58.479 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:00:00.552 [info] {"source":"oban","duration":184,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:00:28.479 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:00:58.480 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:00.551 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:01:28.480 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:58.480 [info] {"source":"oban","duration":788,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:02:00.550 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:02:28.481 [info] {"source":"oban","duration":474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:02:58.481 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:00.550 [info] {"source":"oban","duration":719,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:03:28.569 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:58.570 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:04:00.636 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:04:28.570 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:04:58.571 [info] {"source":"oban","duration":854,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:05:00.635 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:05:28.572 [info] {"source":"oban","duration":845,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:05:58.572 [info] {"source":"oban","duration":680,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:06:00.635 [info] {"source":"oban","duration":277,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:06:28.574 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:06:58.575 [info] {"source":"oban","duration":1786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:07:00.635 [info] {"source":"oban","duration":699,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:07:28.576 [info] {"source":"oban","duration":1681,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:07:58.577 [info] {"source":"oban","duration":483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:08:00.634 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:08:28.579 [info] {"source":"oban","duration":1753,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:08:58.579 [info] {"source":"oban","duration":758,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:09:00.634 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:09:28.581 [info] {"source":"oban","duration":1006,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:09:58.581 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:00.632 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:10:28.583 [info] {"source":"oban","duration":826,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:58.585 [info] {"source":"oban","duration":1719,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:11:00.631 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:11:28.586 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:11:58.586 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:12:00.630 [info] {"source":"oban","duration":303,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:12:28.587 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:12:58.589 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:13:00.629 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:13:28.589 [info] {"source":"oban","duration":712,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:13:58.590 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:14:00.628 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:14:28.591 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:14:58.593 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:15:00.628 [info] {"source":"oban","duration":456,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:15:28.594 [info] {"source":"oban","duration":1675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:15:58.595 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:16:00.627 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:16:28.596 [info] {"source":"oban","duration":477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:16:58.597 [info] {"source":"oban","duration":1849,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:00.625 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:17:28.599 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:58.598 [info] {"source":"oban","duration":488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:18:00.624 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:18:28.599 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:18:58.601 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:19:00.624 [info] {"source":"oban","duration":487,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:19:28.602 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:19:58.602 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:20:00.622 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:20:28.603 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:20:58.604 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:21:00.622 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:21:28.605 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:21:58.606 [info] {"source":"oban","duration":810,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:22:00.622 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:22:28.703 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:22:58.704 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:23:00.718 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:23:28.705 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:23:58.706 [info] {"source":"oban","duration":937,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:24:00.717 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:24:28.705 [info] {"source":"oban","duration":1172,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:24:58.707 [info] {"source":"oban","duration":816,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:25:00.717 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:25:28.709 [info] {"source":"oban","duration":1042,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:25:58.710 [info] {"source":"oban","duration":1072,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:26:00.716 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:26:28.710 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:26:58.711 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:27:00.716 [info] {"source":"oban","duration":696,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:27:28.712 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:27:58.712 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:28:00.715 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:28:28.714 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:28:58.715 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:29:00.715 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:29:28.716 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:29:58.717 [info] {"source":"oban","duration":990,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:30:00.715 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:30:28.717 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:30:58.718 [info] {"source":"oban","duration":825,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:31:00.715 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:31:28.720 [info] {"source":"oban","duration":1730,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:31:58.721 [info] {"source":"oban","duration":866,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:32:00.715 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:32:28.722 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:32:58.723 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:33:00.714 [info] {"source":"oban","duration":222,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:33:28.724 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:33:58.725 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:34:00.714 [info] {"source":"oban","duration":481,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:34:28.726 [info] {"source":"oban","duration":809,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:34:58.727 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:35:00.712 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:35:28.729 [info] {"source":"oban","duration":1539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:35:58.730 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:36:00.713 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:36:28.731 [info] {"source":"oban","duration":908,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:36:58.732 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:37:00.711 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:37:28.732 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:37:58.734 [info] {"source":"oban","duration":872,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:38:00.711 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:38:28.735 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:38:58.736 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:39:00.710 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:39:28.737 [info] {"source":"oban","duration":885,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:39:58.738 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:40:00.709 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:40:28.738 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:40:58.739 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:41:00.709 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:41:28.740 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:41:58.741 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:42:00.708 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:42:28.742 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:42:58.742 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:43:00.709 [info] {"source":"oban","duration":465,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:43:28.743 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:43:58.744 [info] {"source":"oban","duration":712,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:44:00.708 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:44:28.745 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:44:58.746 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:45:00.708 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:45:28.838 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:45:58.839 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:46:00.798 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:46:28.841 [info] {"source":"oban","duration":887,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:46:58.843 [info] {"source":"oban","duration":1808,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:47:00.798 [info] {"source":"oban","duration":403,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:47:28.844 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:47:58.845 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:48:00.798 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:48:28.846 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:48:58.848 [info] {"source":"oban","duration":1706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:49:00.798 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:49:28.850 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:49:58.850 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:50:00.797 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:50:28.852 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:50:58.853 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:51:00.797 [info] {"source":"oban","duration":409,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:51:28.853 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:51:58.854 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:52:00.797 [info] {"source":"oban","duration":280,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:52:28.855 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:52:58.855 [info] {"source":"oban","duration":659,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:53:00.797 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:53:28.857 [info] {"source":"oban","duration":873,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:53:58.858 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:54:00.796 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:54:28.859 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:54:58.859 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:55:00.795 [info] {"source":"oban","duration":284,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:55:28.860 [info] {"source":"oban","duration":873,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:55:58.861 [info] {"source":"oban","duration":1126,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:56:00.794 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:56:28.863 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:56:58.864 [info] {"source":"oban","duration":1629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:57:00.793 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:57:28.865 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:57:58.867 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:58:00.792 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:58:28.869 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:58:58.870 [info] {"source":"oban","duration":1689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:59:00.793 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:59:28.871 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:59:58.872 [info] {"source":"oban","duration":860,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:00:00.792 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:00:28.873 [info] {"source":"oban","duration":1036,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:00:58.875 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:01:00.792 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:01:28.876 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:01:58.876 [info] {"source":"oban","duration":869,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:02:00.791 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:02:28.878 [info] {"source":"oban","duration":868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:02:58.879 [info] {"source":"oban","duration":880,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:03:00.791 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:03:28.879 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:03:58.881 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:04:00.790 [info] {"source":"oban","duration":245,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:04:28.881 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:04:58.882 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:05:00.788 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:05:28.883 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:05:58.884 [info] {"source":"oban","duration":889,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:06:00.787 [info] {"source":"oban","duration":314,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:06:28.885 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:06:58.886 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:07:00.786 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:07:28.887 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:07:58.999 [info] {"source":"oban","duration":895,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:08:00.896 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:08:29.000 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:08:59.001 [info] {"source":"oban","duration":1114,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:09:00.896 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:09:29.002 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:09:59.003 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:10:00.897 [info] {"source":"oban","duration":362,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:10:29.005 [info] {"source":"oban","duration":1015,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:10:59.006 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:11:00.897 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:11:29.007 [info] {"source":"oban","duration":1003,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:11:59.008 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:12:00.896 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:12:29.009 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:12:59.010 [info] {"source":"oban","duration":907,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:13:00.895 [info] {"source":"oban","duration":245,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:13:29.012 [info] {"source":"oban","duration":1576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:13:59.013 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:14:00.894 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:14:29.015 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:14:59.016 [info] {"source":"oban","duration":758,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:15:00.895 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:15:29.018 [info] {"source":"oban","duration":1605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:15:59.020 [info] {"source":"oban","duration":1548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:16:00.895 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:16:29.021 [info] {"source":"oban","duration":829,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:16:59.022 [info] {"source":"oban","duration":937,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:17:00.895 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:17:29.023 [info] {"source":"oban","duration":895,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:17:59.024 [info] {"source":"oban","duration":835,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:18:00.895 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:18:29.026 [info] {"source":"oban","duration":1021,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:18:59.029 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:19:00.895 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:19:29.030 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:19:59.030 [info] {"source":"oban","duration":457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:20:00.895 [info] {"source":"oban","duration":181,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:20:29.032 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:20:59.033 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:21:00.894 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:21:29.033 [info] {"source":"oban","duration":765,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:21:59.035 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:22:00.893 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:22:29.035 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:22:59.036 [info] {"source":"oban","duration":854,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:23:00.893 [info] {"source":"oban","duration":242,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:23:29.037 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:23:59.038 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:24:00.893 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:24:29.038 [info] {"source":"oban","duration":760,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:24:59.040 [info] {"source":"oban","duration":917,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:25:00.893 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:25:29.040 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:25:59.042 [info] {"source":"oban","duration":829,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:26:00.893 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:26:29.043 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:26:59.044 [info] {"source":"oban","duration":719,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:27:00.892 [info] {"source":"oban","duration":283,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:27:29.044 [info] {"source":"oban","duration":1060,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:27:59.047 [info] {"source":"oban","duration":1669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:28:00.892 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:28:29.049 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:28:59.050 [info] {"source":"oban","duration":1961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:29:00.892 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:29:29.051 [info] {"source":"oban","duration":1066,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:29:59.053 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:30:00.892 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:30:29.054 [info] {"source":"oban","duration":1608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:30:59.055 [info] {"source":"oban","duration":805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:31:00.891 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:31:29.057 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:31:59.109 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:32:00.941 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:32:29.109 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:32:59.111 [info] {"source":"oban","duration":714,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:33:00.940 [info] {"source":"oban","duration":251,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:33:29.111 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:33:59.112 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:34:00.938 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:34:29.112 [info] {"source":"oban","duration":808,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:34:59.113 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:35:00.938 [info] {"source":"oban","duration":251,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:35:29.114 [info] {"source":"oban","duration":867,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:35:59.115 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:36:00.937 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:36:29.115 [info] {"source":"oban","duration":1621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:36:59.117 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:37:00.936 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:37:29.117 [info] {"source":"oban","duration":782,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:37:59.118 [info] {"source":"oban","duration":477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:38:00.935 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:38:29.119 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:38:59.120 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:39:00.933 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:39:29.121 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:39:59.121 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:40:00.933 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:40:29.122 [info] {"source":"oban","duration":1581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:40:59.124 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:41:00.932 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:41:29.125 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:41:59.125 [info] {"source":"oban","duration":830,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:42:00.932 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:42:29.126 [info] {"source":"oban","duration":1025,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:42:59.126 [info] {"source":"oban","duration":864,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:43:00.930 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:43:29.127 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:43:59.127 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:44:00.928 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:44:29.129 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:44:59.130 [info] {"source":"oban","duration":1577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:45:00.928 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:45:29.130 [info] {"source":"oban","duration":811,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:45:59.132 [info] {"source":"oban","duration":1176,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:46:00.927 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:46:29.132 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:46:59.133 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:47:00.927 [info] {"source":"oban","duration":430,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:47:29.134 [info] {"source":"oban","duration":1076,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:47:59.134 [info] {"source":"oban","duration":668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:48:00.926 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:48:29.135 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:48:59.136 [info] {"source":"oban","duration":835,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:49:00.925 [info] {"source":"oban","duration":245,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:49:29.137 [info] {"source":"oban","duration":1681,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:49:59.138 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:50:00.923 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:50:29.138 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:50:59.139 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:51:00.921 [info] {"source":"oban","duration":175,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:51:29.140 [info] {"source":"oban","duration":828,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:51:59.141 [info] {"source":"oban","duration":869,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:52:00.920 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:52:29.142 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:52:59.142 [info] {"source":"oban","duration":450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:53:00.919 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:53:29.142 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:53:59.143 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:54:00.918 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:54:29.233 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:54:59.233 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:55:01.008 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:55:29.235 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:55:59.236 [info] {"source":"oban","duration":873,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:56:00.007 [info] {"source":"oban","duration":412,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:56:29.236 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:56:59.238 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:57:00.007 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:57:29.239 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:57:59.240 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:58:00.006 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:58:29.240 [info] {"source":"oban","duration":726,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:58:59.241 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:59:00.005 [info] {"source":"oban","duration":196,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:59:29.241 [info] {"source":"oban","duration":1052,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:59:59.242 [info] {"source":"oban","duration":1036,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:00:00.004 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:00:29.243 [info] {"source":"oban","duration":1059,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:00:59.244 [info] {"source":"oban","duration":995,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:00.003 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:01:29.245 [info] {"source":"oban","duration":868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:59.247 [info] {"source":"oban","duration":809,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:02:00.002 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:02:29.248 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:02:59.249 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:03:00.001 [info] {"source":"oban","duration":260,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:03:29.250 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:03:59.251 [info] {"source":"oban","duration":767,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:04:00.001 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:04:29.251 [info] {"source":"oban","duration":895,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:04:59.252 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:00.000 [info] {"source":"oban","duration":411,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:05:29.253 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:59.254 [info] {"source":"oban","duration":1658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:59.999 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:06:01.000 [info] {"source":"oban","duration":431,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:06:29.255 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:06:59.256 [info] {"source":"oban","duration":818,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:00.000 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:07:29.256 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:59.257 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:59.999 [info] {"source":"oban","duration":431,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:08:01.001 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:08:29.258 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:08:59.258 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:09:00.000 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:09:29.312 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:09:59.311 [info] {"source":"oban","duration":684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:10:00.051 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:10:29.313 [info] {"source":"oban","duration":1574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:10:59.314 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:11:00.051 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:11:29.315 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:11:59.316 [info] {"source":"oban","duration":990,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:12:00.050 [info] {"source":"oban","duration":298,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:12:29.316 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:12:59.316 [info] {"source":"oban","duration":653,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:13:00.049 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:13:29.318 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:13:59.318 [info] {"source":"oban","duration":790,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:14:00.048 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:14:29.319 [info] {"source":"oban","duration":1150,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:14:59.320 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:00.047 [info] {"source":"oban","duration":224,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:15:29.321 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:59.321 [info] {"source":"oban","duration":619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:16:00.045 [info] {"source":"oban","duration":406,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:16:29.323 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:16:59.322 [info] {"source":"oban","duration":809,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:17:00.044 [info] {"source":"oban","duration":240,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:17:29.324 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:17:59.325 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:18:00.043 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:18:29.325 [info] {"source":"oban","duration":898,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:18:59.325 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:19:00.042 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:19:29.326 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:19:59.328 [info] {"source":"oban","duration":1650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:20:00.041 [info] {"source":"oban","duration":757,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:20:29.329 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:20:59.330 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:21:00.039 [info] {"source":"oban","duration":256,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:21:29.331 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:21:59.331 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:22:00.037 [info] {"source":"oban","duration":287,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:22:29.332 [info] {"source":"oban","duration":820,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:22:59.333 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:23:00.036 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:23:29.333 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:23:59.334 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:24:00.035 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:24:29.334 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:24:59.335 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:25:00.034 [info] {"source":"oban","duration":224,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:25:29.336 [info] {"source":"oban","duration":815,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:25:59.337 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:26:00.033 [info] {"source":"oban","duration":689,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:26:29.338 [info] {"source":"oban","duration":906,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:26:59.339 [info] {"source":"oban","duration":1652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:27:00.032 [info] {"source":"oban","duration":427,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:27:29.340 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:27:59.341 [info] {"source":"oban","duration":937,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:28:00.031 [info] {"source":"oban","duration":750,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:28:29.342 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:28:59.342 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:29:00.030 [info] {"source":"oban","duration":261,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:29:29.437 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:29:59.439 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:30:00.124 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:30:29.440 [info] {"source":"oban","duration":1743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:30:59.441 [info] {"source":"oban","duration":861,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:31:00.123 [info] {"source":"oban","duration":165,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:31:29.442 [info] {"source":"oban","duration":819,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:31:59.443 [info] {"source":"oban","duration":1742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:32:00.122 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:32:29.444 [info] {"source":"oban","duration":477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:32:59.445 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:33:00.122 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:33:29.447 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:33:59.448 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:34:00.121 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:34:29.448 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:34:59.449 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:35:00.120 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:35:29.450 [info] {"source":"oban","duration":1693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:35:59.452 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:36:00.119 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:36:29.453 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:36:59.454 [info] {"source":"oban","duration":883,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:37:00.119 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:37:29.456 [info] {"source":"oban","duration":1603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:37:59.457 [info] {"source":"oban","duration":912,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:38:00.118 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:38:29.457 [info] {"source":"oban","duration":800,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:38:59.458 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:39:00.118 [info] {"source":"oban","duration":774,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:39:29.459 [info] {"source":"oban","duration":1137,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:39:59.459 [info] {"source":"oban","duration":812,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:40:00.117 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:40:29.460 [info] {"source":"oban","duration":1608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:40:59.462 [info] {"source":"oban","duration":1202,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:41:00.116 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:41:29.463 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:41:59.464 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:42:00.115 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:42:29.464 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:42:59.465 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:43:00.115 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:43:29.466 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:43:59.466 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:44:00.114 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:44:29.467 [info] {"source":"oban","duration":910,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:44:59.468 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:45:00.113 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:45:29.469 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:45:59.469 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:46:00.113 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:46:29.470 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:46:59.471 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:47:00.113 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:47:29.472 [info] {"source":"oban","duration":1531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:47:59.474 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:48:00.112 [info] {"source":"oban","duration":242,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:48:29.535 [info] {"source":"oban","duration":841,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:48:59.536 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:49:00.171 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:49:29.537 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:49:59.537 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:50:00.170 [info] {"source":"oban","duration":199,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:50:29.538 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:50:59.538 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:51:00.168 [info] {"source":"oban","duration":396,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:51:29.539 [info] {"source":"oban","duration":769,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:51:59.539 [info] {"source":"oban","duration":473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:52:00.166 [info] {"source":"oban","duration":171,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:52:29.539 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:52:59.540 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:53:00.164 [info] {"source":"oban","duration":179,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:53:29.541 [info] {"source":"oban","duration":859,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:53:59.541 [info] {"source":"oban","duration":788,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:54:00.163 [info] {"source":"oban","duration":415,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:54:29.543 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:54:59.544 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:55:00.162 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:55:29.544 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:55:59.545 [info] {"source":"oban","duration":827,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:56:00.161 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:56:29.546 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:56:59.546 [info] {"source":"oban","duration":1009,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:57:00.160 [info] {"source":"oban","duration":429,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:57:29.547 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:57:59.548 [info] {"source":"oban","duration":1745,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:58:00.159 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:58:29.549 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:58:59.550 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:59:00.158 [info] {"source":"oban","duration":348,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:59:29.551 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:59:59.553 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:00:00.158 [info] {"source":"oban","duration":438,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:00:29.554 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:00:59.555 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:01:00.157 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:01:29.555 [info] {"source":"oban","duration":815,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:01:59.557 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:02:00.155 [info] {"source":"oban","duration":243,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:02:29.558 [info] {"source":"oban","duration":807,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:02:59.559 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:03:00.154 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:03:29.561 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:03:59.561 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:04:00.152 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:04:29.561 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:04:59.563 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:05:00.151 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:05:29.565 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:05:59.566 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:06:00.150 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:06:29.566 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:06:59.567 [info] {"source":"oban","duration":1052,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:00.149 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:07:29.568 [info] {"source":"oban","duration":1618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:59.569 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:08:00.149 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:08:29.571 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:08:59.573 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:09:00.148 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:09:29.572 [info] {"source":"oban","duration":798,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:09:59.574 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:10:00.147 [info] {"source":"oban","duration":705,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:10:29.575 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:10:59.576 [info] {"source":"oban","duration":830,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:00.146 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:11:29.683 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:59.685 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:12:00.251 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:12:29.687 [info] {"source":"oban","duration":1580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:12:59.687 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:13:00.250 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:13:29.689 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:13:59.690 [info] {"source":"oban","duration":1126,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:14:00.250 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:14:29.691 [info] {"source":"oban","duration":859,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:14:59.691 [info] {"source":"oban","duration":846,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:15:00.249 [info] {"source":"oban","duration":380,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:15:29.693 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:15:59.694 [info] {"source":"oban","duration":838,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:16:00.249 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:16:29.694 [info] {"source":"oban","duration":803,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:16:59.695 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:17:00.248 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:17:29.696 [info] {"source":"oban","duration":1533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:17:59.697 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:18:00.248 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:18:29.698 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:18:59.699 [info] {"source":"oban","duration":838,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:19:00.247 [info] {"source":"oban","duration":289,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:19:29.701 [info] {"source":"oban","duration":1666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:19:59.701 [info] {"source":"oban","duration":784,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:20:00.246 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:20:29.703 [info] {"source":"oban","duration":1868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:20:59.704 [info] {"source":"oban","duration":864,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:21:00.245 [info] {"source":"oban","duration":248,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:21:29.705 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:21:59.706 [info] {"source":"oban","duration":1059,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:22:00.244 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:22:29.707 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:22:59.709 [info] {"source":"oban","duration":1622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:23:00.244 [info] {"source":"oban","duration":402,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:23:29.710 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:23:59.711 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:24:00.243 [info] {"source":"oban","duration":196,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:24:29.711 [info] {"source":"oban","duration":901,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:24:59.712 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:25:00.241 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:25:29.713 [info] {"source":"oban","duration":854,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:25:59.714 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:26:00.240 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:26:29.715 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:26:59.716 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:27:00.239 [info] {"source":"oban","duration":242,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:27:29.716 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:27:59.718 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:28:00.239 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:28:29.719 [info] {"source":"oban","duration":1725,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:28:59.721 [info] {"source":"oban","duration":1588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:00.239 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:29:29.723 [info] {"source":"oban","duration":1738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:59.723 [info] {"source":"oban","duration":882,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:30:00.238 [info] {"source":"oban","duration":409,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:30:29.725 [info] {"source":"oban","duration":1049,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:30:59.726 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:31:00.237 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:31:29.727 [info] {"source":"oban","duration":986,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:31:59.728 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:32:00.236 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:32:29.728 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:32:59.729 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:33:00.236 [info] {"source":"oban","duration":374,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:33:29.821 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:33:59.822 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:34:00.326 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:34:29.822 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:34:59.823 [info] {"source":"oban","duration":1078,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:35:00.324 [info] {"source":"oban","duration":220,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:35:29.824 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:35:59.825 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:36:00.324 [info] {"source":"oban","duration":798,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:36:29.825 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:36:59.826 [info] {"source":"oban","duration":1009,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:37:00.323 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:37:29.827 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:37:59.828 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:38:00.322 [info] {"source":"oban","duration":170,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:38:29.829 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:38:59.830 [info] {"source":"oban","duration":1009,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:39:00.320 [info] {"source":"oban","duration":171,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:39:29.830 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:39:59.832 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:40:00.320 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:40:29.832 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:40:59.833 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:41:00.318 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:41:29.834 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:41:59.835 [info] {"source":"oban","duration":1592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:42:00.317 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:42:29.837 [info] {"source":"oban","duration":1550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:42:59.838 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:43:00.316 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:43:29.838 [info] {"source":"oban","duration":810,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:43:59.840 [info] {"source":"oban","duration":930,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:44:00.315 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:44:29.840 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:44:59.842 [info] {"source":"oban","duration":1683,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:45:00.314 [info] {"source":"oban","duration":771,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:45:29.843 [info] {"source":"oban","duration":1138,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:45:59.844 [info] {"source":"oban","duration":1731,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:46:00.313 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:46:29.846 [info] {"source":"oban","duration":1715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:46:59.847 [info] {"source":"oban","duration":1132,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:47:00.313 [info] {"source":"oban","duration":362,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:47:29.848 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:47:59.849 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:48:00.312 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:48:29.850 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:48:59.850 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:49:00.312 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:49:29.851 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:49:59.852 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:50:00.312 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:50:29.852 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:50:59.854 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:51:00.311 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:51:29.854 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:51:59.930 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:52:00.385 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:52:29.932 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:52:59.932 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:53:00.385 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:53:29.933 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:53:59.934 [info] {"source":"oban","duration":863,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:54:00.384 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:54:29.935 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:54:59.935 [info] {"source":"oban","duration":989,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:55:00.383 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:55:29.936 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:55:59.938 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:56:00.383 [info] {"source":"oban","duration":652,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:56:29.939 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:56:59.941 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:57:00.382 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:57:29.942 [info] {"source":"oban","duration":1557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:57:59.943 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:58:00.381 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:58:29.945 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:58:59.947 [info] {"source":"oban","duration":1148,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:59:00.380 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:59:29.947 [info] {"source":"oban","duration":1136,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:59:59.948 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:00:00.379 [info] {"source":"oban","duration":405,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:00:29.949 [info] {"source":"oban","duration":1049,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:00:59.950 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:01:00.378 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:01:29.952 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:01:59.954 [info] {"source":"oban","duration":1687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:02:00.378 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:02:29.955 [info] {"source":"oban","duration":1179,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:02:59.956 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:03:00.376 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:03:29.957 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:03:59.958 [info] {"source":"oban","duration":1189,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:04:00.376 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:04:29.959 [info] {"source":"oban","duration":1574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:04:59.961 [info] {"source":"oban","duration":1127,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:05:00.376 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:05:29.962 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:05:59.964 [info] {"source":"oban","duration":1706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:06:00.376 [info] {"source":"oban","duration":394,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:06:29.965 [info] {"source":"oban","duration":1564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:06:59.967 [info] {"source":"oban","duration":906,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:07:00.375 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:07:29.967 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:07:59.969 [info] {"source":"oban","duration":1563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:08:00.374 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:08:29.970 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:08:59.972 [info] {"source":"oban","duration":1132,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:09:00.375 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:09:29.972 [info] {"source":"oban","duration":989,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:09:59.974 [info] {"source":"oban","duration":1658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:10:00.374 [info] {"source":"oban","duration":767,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:10:29.975 [info] {"source":"oban","duration":1686,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:10:59.977 [info] {"source":"oban","duration":872,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:11:00.374 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:11:29.978 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:11:59.979 [info] {"source":"oban","duration":1661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:12:00.374 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:12:29.981 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:13:00.065 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:13:00.456 [info] {"source":"oban","duration":641,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:13:30.067 [info] {"source":"oban","duration":1128,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:14:00.069 [info] {"source":"oban","duration":1574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:14:00.456 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:14:30.070 [info] {"source":"oban","duration":1612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:15:00.071 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:15:00.455 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:15:30.073 [info] {"source":"oban","duration":1669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:16:00.075 [info] {"source":"oban","duration":1619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:16:00.454 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:16:30.076 [info] {"source":"oban","duration":1181,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:17:00.077 [info] {"source":"oban","duration":1554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:17:00.453 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:17:30.078 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:18:00.079 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:18:00.451 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:18:30.080 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:19:00.081 [info] {"source":"oban","duration":1029,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:19:00.450 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:19:30.081 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:20:00.082 [info] {"source":"oban","duration":818,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:20:00.450 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:20:30.083 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:21:00.084 [info] {"source":"oban","duration":780,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:21:00.449 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:21:30.085 [info] {"source":"oban","duration":870,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:22:00.086 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:22:00.448 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:22:30.086 [info] {"source":"oban","duration":779,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:23:00.087 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:23:00.446 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:23:30.088 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:24:00.088 [info] {"source":"oban","duration":654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:24:00.446 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:24:30.090 [info] {"source":"oban","duration":1499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:00.091 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:00.445 [info] {"source":"oban","duration":241,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:25:30.092 [info] {"source":"oban","duration":734,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:26:00.093 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:26:00.444 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:26:30.094 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:27:00.094 [info] {"source":"oban","duration":883,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:27:00.444 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:27:30.095 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:28:00.096 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:28:00.444 [info] {"source":"oban","duration":385,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:28:30.096 [info] {"source":"oban","duration":822,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:29:00.098 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:29:00.443 [info] {"source":"oban","duration":228,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:29:30.099 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:30:00.099 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:30:00.442 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:30:30.100 [info] {"source":"oban","duration":980,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:31:00.101 [info] {"source":"oban","duration":885,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:31:00.440 [info] {"source":"oban","duration":234,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:31:30.101 [info] {"source":"oban","duration":809,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:32:00.102 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:32:00.439 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:32:30.103 [info] {"source":"oban","duration":840,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:33:00.104 [info] {"source":"oban","duration":883,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:33:00.438 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:33:30.104 [info] {"source":"oban","duration":472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:34:00.106 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:34:00.438 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:34:30.106 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:35:00.107 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:35:00.437 [info] {"source":"oban","duration":246,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:35:30.107 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:36:00.109 [info] {"source":"oban","duration":1620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:36:00.437 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:36:30.111 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:37:00.119 [info] {"source":"oban","duration":793,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:37:00.444 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:37:30.143 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:38:00.146 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:38:00.467 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:38:30.147 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:39:00.147 [info] {"source":"oban","duration":810,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:39:00.467 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:39:30.148 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:40:00.149 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:40:00.465 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:40:30.148 [info] {"source":"oban","duration":658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:41:00.150 [info] {"source":"oban","duration":1559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:41:00.464 [info] {"source":"oban","duration":449,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:41:30.151 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:42:00.151 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:42:00.463 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:42:30.151 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:43:00.152 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:43:00.461 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:43:30.151 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:44:00.153 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:44:00.459 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:44:30.153 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:45:00.153 [info] {"source":"oban","duration":1058,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:45:00.458 [info] {"source":"oban","duration":765,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:45:30.154 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:46:00.155 [info] {"source":"oban","duration":1121,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:46:00.456 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:46:30.154 [info] {"source":"oban","duration":691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:47:00.155 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:47:00.454 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:47:30.155 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:48:00.156 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:48:00.452 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:48:30.156 [info] {"source":"oban","duration":773,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:49:00.156 [info] {"source":"oban","duration":879,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:49:00.451 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:49:30.156 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:50:00.158 [info] {"source":"oban","duration":1804,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:50:00.448 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:50:30.159 [info] {"source":"oban","duration":1344,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:51:00.159 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:51:00.446 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:51:30.159 [info] {"source":"oban","duration":851,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:52:00.159 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:52:00.445 [info] {"source":"oban","duration":202,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:52:30.159 [info] {"source":"oban","duration":798,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:53:00.159 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:53:00.443 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:53:30.160 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:54:00.162 [info] {"source":"oban","duration":1538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:54:00.442 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:54:30.162 [info] {"source":"oban","duration":1025,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:55:00.162 [info] {"source":"oban","duration":859,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:55:00.439 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:55:30.162 [info] {"source":"oban","duration":849,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:56:00.163 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:56:00.437 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:56:30.164 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:57:00.163 [info] {"source":"oban","duration":708,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:57:00.436 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:57:30.164 [info] {"source":"oban","duration":1087,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:58:00.230 [info] {"source":"oban","duration":1096,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:58:00.500 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:58:30.230 [info] {"source":"oban","duration":452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:59:00.231 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:59:00.498 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:59:30.231 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:00:00.231 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:00:00.497 [info] {"source":"oban","duration":398,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:00:30.232 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:01:00.232 [info] {"source":"oban","duration":1027,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:01:00.495 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:01:30.232 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:02:00.232 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:02:00.493 [info] {"source":"oban","duration":244,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:02:30.233 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:03:00.233 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:03:00.490 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:03:30.234 [info] {"source":"oban","duration":1085,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:04:00.234 [info] {"source":"oban","duration":1045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:04:00.488 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:04:30.234 [info] {"source":"oban","duration":815,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:05:00.235 [info] {"source":"oban","duration":858,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:05:00.486 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:05:30.235 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:06:00.235 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:06:00.484 [info] {"source":"oban","duration":248,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:06:30.236 [info] {"source":"oban","duration":902,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:07:00.236 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:07:00.482 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:07:30.236 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:08:00.237 [info] {"source":"oban","duration":1089,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:08:00.479 [info] {"source":"oban","duration":243,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:08:30.238 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:09:00.237 [info] {"source":"oban","duration":658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:09:00.477 [info] {"source":"oban","duration":410,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:09:30.238 [info] {"source":"oban","duration":908,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:10:00.238 [info] {"source":"oban","duration":833,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:10:00.474 [info] {"source":"oban","duration":247,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:10:30.238 [info] {"source":"oban","duration":772,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:11:00.238 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:11:00.472 [info] {"source":"oban","duration":251,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:11:30.239 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:12:00.238 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:12:00.469 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:12:30.238 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:13:00.298 [info] {"source":"oban","duration":887,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:13:00.527 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:13:30.298 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:14:00.298 [info] {"source":"oban","duration":859,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:14:00.525 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:14:30.298 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:15:00.298 [info] {"source":"oban","duration":1072,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:15:00.523 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:15:30.299 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:16:00.299 [info] {"source":"oban","duration":1085,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:16:00.522 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:16:30.299 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:17:00.299 [info] {"source":"oban","duration":906,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:17:00.520 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:17:30.299 [info] {"source":"oban","duration":1078,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:18:00.299 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:18:00.518 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:18:30.300 [info] {"source":"oban","duration":689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:19:00.300 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:19:00.515 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:19:30.300 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:20:00.300 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:20:00.514 [info] {"source":"oban","duration":188,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:20:30.299 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:21:00.299 [info] {"source":"oban","duration":1055,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:21:00.511 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:21:30.299 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:22:00.299 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:22:00.509 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:22:30.299 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:23:00.298 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:23:00.506 [info] {"source":"oban","duration":431,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:23:30.300 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:24:00.301 [info] {"source":"oban","duration":1600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:24:00.505 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:24:30.301 [info] {"source":"oban","duration":1147,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:25:00.301 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:25:00.503 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:25:30.302 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:26:00.302 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:26:00.501 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:26:30.302 [info] {"source":"oban","duration":1067,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:27:00.303 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:27:00.500 [info] {"source":"oban","duration":278,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:27:30.302 [info] {"source":"oban","duration":930,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:28:00.408 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:28:00.602 [info] {"source":"oban","duration":474,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:28:30.410 [info] {"source":"oban","duration":1822,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:29:00.411 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:29:00.601 [info] {"source":"oban","duration":465,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:29:30.412 [info] {"source":"oban","duration":1060,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:30:00.413 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:30:00.601 [info] {"source":"oban","duration":302,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:30:30.414 [info] {"source":"oban","duration":1095,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:31:00.415 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:31:00.600 [info] {"source":"oban","duration":314,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:31:30.415 [info] {"source":"oban","duration":807,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:32:00.416 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:32:00.600 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:32:30.417 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:33:00.418 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:33:00.600 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:33:30.419 [info] {"source":"oban","duration":763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:34:00.420 [info] {"source":"oban","duration":830,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:34:00.598 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:34:30.421 [info] {"source":"oban","duration":861,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:35:00.421 [info] {"source":"oban","duration":646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:35:00.598 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:35:30.423 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:36:00.424 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:36:00.598 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:36:30.424 [info] {"source":"oban","duration":836,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:37:00.426 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:37:00.597 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:37:30.427 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:38:00.429 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:38:00.597 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:38:30.429 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:39:00.430 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:39:00.597 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:39:30.431 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:40:00.432 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:40:00.597 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:40:30.433 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:41:00.433 [info] {"source":"oban","duration":704,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:41:00.596 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:41:30.434 [info] {"source":"oban","duration":790,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:42:00.436 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:42:00.596 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:42:30.437 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:43:00.517 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:43:00.675 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:43:30.519 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:44:00.521 [info] {"source":"oban","duration":1095,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:44:00.676 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:44:30.522 [info] {"source":"oban","duration":1756,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:45:00.524 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:45:00.676 [info] {"source":"oban","duration":183,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:45:30.525 [info] {"source":"oban","duration":808,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:46:00.527 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:46:00.676 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:46:30.528 [info] {"source":"oban","duration":1181,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:47:00.528 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:47:00.676 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:47:30.530 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:48:00.531 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:48:00.676 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:48:30.532 [info] {"source":"oban","duration":660,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:49:00.533 [info] {"source":"oban","duration":1003,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:49:00.675 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:49:30.534 [info] {"source":"oban","duration":885,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:50:00.536 [info] {"source":"oban","duration":851,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:50:00.675 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:50:30.537 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:51:00.539 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:51:00.679 [info] {"source":"oban","duration":4011,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:51:30.544 [info] {"source":"oban","duration":4614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:52:00.546 [info] {"source":"oban","duration":665,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:52:00.679 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:52:30.548 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:53:00.549 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:53:00.678 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:53:30.550 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:54:00.551 [info] {"source":"oban","duration":1087,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:54:00.678 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:54:30.552 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:55:00.553 [info] {"source":"oban","duration":1083,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:55:00.679 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:55:30.555 [info] {"source":"oban","duration":840,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:56:00.556 [info] {"source":"oban","duration":836,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:56:00.679 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:56:30.557 [info] {"source":"oban","duration":1040,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:57:00.558 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:57:00.680 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:57:30.559 [info] {"source":"oban","duration":818,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:58:00.560 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:58:00.680 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:58:30.591 [info] {"source":"oban","duration":1158,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:59:00.599 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:59:00.717 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:59:30.602 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:00:00.603 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:00:00.718 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:00:30.604 [info] {"source":"oban","duration":1016,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:01:00.605 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:01:00.718 [info] {"source":"oban","duration":202,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:01:30.606 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:02:00.607 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:02:00.717 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:02:30.607 [info] {"source":"oban","duration":1055,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:03:00.608 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:03:00.717 [info] {"source":"oban","duration":243,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:03:30.610 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:04:00.612 [info] {"source":"oban","duration":2045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:04:00.717 [info] {"source":"oban","duration":231,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:04:30.612 [info] {"source":"oban","duration":800,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:05:00.613 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:05:00.716 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:05:30.614 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:06:00.615 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:06:00.716 [info] {"source":"oban","duration":373,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:06:30.616 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:07:00.618 [info] {"source":"oban","duration":1553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:07:00.716 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:07:30.619 [info] {"source":"oban","duration":702,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:08:00.620 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:08:00.716 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:08:30.621 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:09:00.622 [info] {"source":"oban","duration":944,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:09:00.715 [info] {"source":"oban","duration":377,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:09:30.623 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:10:00.624 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:10:00.715 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:10:30.625 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:11:00.626 [info] {"source":"oban","duration":927,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:11:00.715 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:11:30.628 [info] {"source":"oban","duration":1562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:12:00.629 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:12:00.714 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:12:30.630 [info] {"source":"oban","duration":1608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:13:00.632 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:13:00.713 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:13:30.632 [info] {"source":"oban","duration":487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:14:00.684 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:14:00.765 [info] {"source":"oban","duration":394,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:14:30.686 [info] {"source":"oban","duration":1618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:15:00.686 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:15:00.763 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:15:30.687 [info] {"source":"oban","duration":813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:16:00.709 [info] {"source":"oban","duration":1177,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:16:00.764 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:16:30.710 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:17:00.711 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:17:00.764 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:17:30.712 [info] {"source":"oban","duration":927,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:18:00.713 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:18:00.764 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:18:30.714 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:19:00.716 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:19:00.764 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:19:30.717 [info] {"source":"oban","duration":781,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:20:00.718 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:20:00.763 [info] {"source":"oban","duration":242,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:20:30.719 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:21:00.720 [info] {"source":"oban","duration":853,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:21:00.763 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:21:30.720 [info] {"source":"oban","duration":937,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:22:00.721 [info] {"source":"oban","duration":868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:22:00.762 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:22:30.722 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:23:00.723 [info] {"source":"oban","duration":875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:23:00.762 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:23:30.724 [info] {"source":"oban","duration":1145,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:24:00.725 [info] {"source":"oban","duration":1071,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:24:00.762 [info] {"source":"oban","duration":418,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:24:30.726 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:25:00.727 [info] {"source":"oban","duration":845,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:25:00.761 [info] {"source":"oban","duration":243,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:25:30.728 [info] {"source":"oban","duration":1024,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:26:00.729 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:26:00.760 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:26:30.729 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:27:00.730 [info] {"source":"oban","duration":917,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:27:00.759 [info] {"source":"oban","duration":398,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:27:30.731 [info] {"source":"oban","duration":801,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:28:00.732 [info] {"source":"oban","duration":912,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:28:00.759 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:28:30.733 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:29:00.735 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:29:00.759 [info] {"source":"oban","duration":482,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:29:30.736 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:30:00.727 [info] {"source":"oban","duration":1520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:30:00.748 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:30:30.725 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:31:00.724 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:31:00.743 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:31:30.725 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:32:00.725 [info] {"source":"oban","duration":1150,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:32:00.742 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:32:30.726 [info] {"source":"oban","duration":786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:33:00.727 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:33:00.740 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:33:30.728 [info] {"source":"oban","duration":1117,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:34:00.729 [info] {"source":"oban","duration":1059,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:34:00.739 [info] {"source":"oban","duration":785,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:34:30.729 [info] {"source":"oban","duration":894,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:35:00.730 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:35:00.737 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:35:30.730 [info] {"source":"oban","duration":1566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:36:00.731 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:36:00.736 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:36:30.731 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:37:00.732 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:37:00.733 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:37:30.732 [info] {"source":"oban","duration":801,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:38:00.731 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:38:00.732 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:38:30.733 [info] {"source":"oban","duration":1089,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:39:00.730 [info] {"source":"oban","duration":396,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:39:00.733 [info] {"source":"oban","duration":727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:39:30.733 [info] {"source":"oban","duration":836,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:40:00.728 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:40:00.734 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:40:30.734 [info] {"source":"oban","duration":873,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:41:00.727 [info] {"source":"oban","duration":499,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:41:00.734 [info] {"source":"oban","duration":491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:41:30.735 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:42:00.726 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:42:00.735 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:42:30.735 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:43:00.724 [info] {"source":"oban","duration":294,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:43:00.736 [info] {"source":"oban","duration":980,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:43:30.736 [info] {"source":"oban","duration":1128,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:44:00.723 [info] {"source":"oban","duration":433,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:44:00.737 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:44:30.738 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:45:00.851 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:45:00.868 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:45:30.868 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:46:00.851 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:46:00.870 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:46:30.871 [info] {"source":"oban","duration":1102,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:47:00.851 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:47:00.871 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:47:30.872 [info] {"source":"oban","duration":913,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:48:00.850 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:48:00.874 [info] {"source":"oban","duration":1592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:48:30.875 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:49:00.850 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:49:00.876 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:49:30.876 [info] {"source":"oban","duration":848,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:50:00.850 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:50:00.877 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:50:30.878 [info] {"source":"oban","duration":853,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:51:00.849 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:51:00.879 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:51:30.880 [info] {"source":"oban","duration":1059,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:52:00.849 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:52:00.880 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:52:30.881 [info] {"source":"oban","duration":995,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:53:00.848 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:53:00.883 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:53:30.884 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:54:00.849 [info] {"source":"oban","duration":455,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:54:00.885 [info] {"source":"oban","duration":1615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:54:30.887 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:00.848 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:55:00.887 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:30.889 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:56:00.847 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:56:00.891 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:56:30.891 [info] {"source":"oban","duration":483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:57:00.846 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:57:00.893 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:57:30.894 [info] {"source":"oban","duration":1829,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:58:00.845 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:58:00.895 [info] {"source":"oban","duration":845,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:58:30.896 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:59:00.844 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:59:00.897 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:59:30.898 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:00:00.843 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:00:00.899 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:00:30.900 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:01:00.843 [info] {"source":"oban","duration":454,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:01:00.901 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:01:30.902 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:02:00.843 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:02:00.904 [info] {"source":"oban","duration":1660,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:02:30.905 [info] {"source":"oban","duration":816,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:03:00.842 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:03:00.906 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:03:30.906 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:04:00.842 [info] {"source":"oban","duration":495,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:04:00.908 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:04:30.909 [info] {"source":"oban","duration":858,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:05:00.841 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:05:00.910 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:05:30.967 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:06:00.897 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:06:00.968 [info] {"source":"oban","duration":901,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:06:30.968 [info] {"source":"oban","duration":883,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:07:00.896 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:07:00.969 [info] {"source":"oban","duration":807,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:07:30.970 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:08:00.896 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:08:00.970 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:08:30.971 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:09:00.895 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:09:00.972 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:09:30.972 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:10:00.894 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:10:00.973 [info] {"source":"oban","duration":861,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:10:30.974 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:11:00.893 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:11:00.974 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:11:30.974 [info] {"source":"oban","duration":815,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:12:00.892 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:12:00.975 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:12:30.976 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:13:00.891 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:13:00.977 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:13:30.977 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:14:00.890 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:14:00.978 [info] {"source":"oban","duration":847,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:14:30.979 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:15:00.889 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:15:00.979 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:15:30.980 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:16:00.887 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:16:00.981 [info] {"source":"oban","duration":910,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:16:30.981 [info] {"source":"oban","duration":853,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:17:00.887 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:17:00.982 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:17:30.983 [info] {"source":"oban","duration":1027,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:18:00.886 [info] {"source":"oban","duration":463,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:18:00.983 [info] {"source":"oban","duration":810,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:18:30.983 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:19:00.884 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:19:00.984 [info] {"source":"oban","duration":1070,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:19:30.985 [info] {"source":"oban","duration":756,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:20:00.883 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:20:00.986 [info] {"source":"oban","duration":879,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:20:30.977 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:21:00.882 [info] {"source":"oban","duration":764,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:21:00.988 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:21:30.990 [info] {"source":"oban","duration":1848,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:22:00.881 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:22:00.990 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:22:30.992 [info] {"source":"oban","duration":1602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:23:00.880 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:23:00.993 [info] {"source":"oban","duration":1524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:23:30.995 [info] {"source":"oban","duration":1558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:24:00.879 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:24:00.996 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:24:31.073 [info] {"source":"oban","duration":1745,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:25:00.953 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:25:01.074 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:25:31.075 [info] {"source":"oban","duration":1804,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:26:00.952 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:26:01.077 [info] {"source":"oban","duration":1563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:26:31.078 [info] {"source":"oban","duration":1063,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:27:00.951 [info] {"source":"oban","duration":200,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:27:01.078 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:27:31.079 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:28:00.950 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:28:01.081 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:28:31.081 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:29:00.950 [info] {"source":"oban","duration":463,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:29:01.082 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:29:31.083 [info] {"source":"oban","duration":1016,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:30:00.949 [info] {"source":"oban","duration":290,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:30:01.083 [info] {"source":"oban","duration":704,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:30:31.083 [info] {"source":"oban","duration":774,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:31:00.948 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:31:01.085 [info] {"source":"oban","duration":895,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:31:31.086 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:32:00.946 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:32:01.087 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:32:31.087 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:33:00.946 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:33:01.087 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:33:31.088 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:34:00.945 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:34:01.089 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:34:31.089 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:00.944 [info] {"source":"oban","duration":297,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:35:01.089 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:31.091 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:36:00.944 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:36:01.092 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:36:31.092 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:37:00.943 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:37:01.093 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:37:31.094 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:38:00.942 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:38:01.095 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:38:31.097 [info] {"source":"oban","duration":1036,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:00.941 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:39:01.097 [info] {"source":"oban","duration":694,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:31.099 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:40:00.941 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:40:01.100 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:40:31.101 [info] {"source":"oban","duration":1153,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:41:00.938 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:41:01.101 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:41:31.104 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:42:00.940 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:42:01.106 [info] {"source":"oban","duration":1718,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:42:31.106 [info] {"source":"oban","duration":813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:01.036 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:43:01.205 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:31.207 [info] {"source":"oban","duration":1726,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:44:00.035 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:44:01.208 [info] {"source":"oban","duration":884,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:44:31.209 [info] {"source":"oban","duration":990,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:45:00.035 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:45:01.210 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:45:31.211 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:46:00.035 [info] {"source":"oban","duration":260,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:46:01.212 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:46:31.212 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:47:00.030 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:47:01.211 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:47:31.214 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:48:00.033 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:48:01.216 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:48:31.216 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:49:00.032 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:49:01.218 [info] {"source":"oban","duration":804,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:49:31.219 [info] {"source":"oban","duration":1045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:50:00.032 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:50:01.219 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:50:31.220 [info] {"source":"oban","duration":842,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:51:00.031 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:51:01.221 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:51:31.221 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:52:00.031 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:52:01.223 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:52:31.224 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:53:00.032 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:53:01.224 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:53:31.226 [info] {"source":"oban","duration":753,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:54:00.032 [info] {"source":"oban","duration":732,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:54:01.227 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:54:31.227 [info] {"source":"oban","duration":791,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:55:00.031 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:55:01.228 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:55:31.229 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:56:00.031 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:56:01.230 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:56:31.231 [info] {"source":"oban","duration":750,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:57:00.030 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:57:01.232 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:57:31.234 [info] {"source":"oban","duration":851,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:58:00.029 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:58:01.234 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:58:31.234 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:59:00.028 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:59:01.235 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:59:31.236 [info] {"source":"oban","duration":1093,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:00:00.028 [info] {"source":"oban","duration":739,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:00:01.237 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:00:31.238 [info] {"source":"oban","duration":1664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:01:00.027 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:01:01.240 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:01:31.241 [info] {"source":"oban","duration":980,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:02:00.027 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:02:01.242 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:02:31.244 [info] {"source":"oban","duration":2487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:03:00.042 [info] {"source":"oban","duration":4615,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:03:01.262 [info] {"source":"oban","duration":8226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:03:31.266 [info] {"source":"oban","duration":881,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:04:00.043 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:04:01.266 [info] {"source":"oban","duration":809,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:04:31.267 [info] {"source":"oban","duration":775,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:05:00.041 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:05:01.268 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:05:31.269 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:06:00.039 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:06:01.269 [info] {"source":"oban","duration":776,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:06:31.266 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:07:00.038 [info] {"source":"oban","duration":386,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:07:01.270 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:07:31.270 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:08:00.036 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:08:01.272 [info] {"source":"oban","duration":1557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:08:31.273 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:09:00.035 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:09:01.272 [info] {"source":"oban","duration":641,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:09:31.273 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:10:00.034 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:10:01.274 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:10:31.274 [info] {"source":"oban","duration":1095,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:11:00.032 [info] {"source":"oban","duration":436,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:11:01.274 [info] {"source":"oban","duration":1061,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:11:31.275 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:12:00.031 [info] {"source":"oban","duration":431,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:12:01.276 [info] {"source":"oban","duration":740,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:12:31.277 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:13:00.030 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:13:01.277 [info] {"source":"oban","duration":1071,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:13:31.277 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:14:00.028 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:14:01.278 [info] {"source":"oban","duration":864,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:14:31.278 [info] {"source":"oban","duration":822,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:15:00.026 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:15:01.277 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:15:31.278 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:16:00.026 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:16:01.278 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:16:31.279 [info] {"source":"oban","duration":872,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:17:00.024 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:17:01.278 [info] {"source":"oban","duration":826,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:17:31.279 [info] {"source":"oban","duration":868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:18:00.023 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:18:01.279 [info] {"source":"oban","duration":784,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:18:31.281 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:19:00.022 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:19:01.281 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:19:31.281 [info] {"source":"oban","duration":1053,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:20:00.021 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:20:01.281 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:20:31.281 [info] {"source":"oban","duration":790,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:21:00.020 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:21:01.283 [info] {"source":"oban","duration":1593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:21:31.283 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:22:00.018 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:22:01.284 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:22:31.285 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:23:00.138 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:23:01.407 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:23:31.408 [info] {"source":"oban","duration":1058,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:24:00.137 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:24:01.409 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:24:31.409 [info] {"source":"oban","duration":793,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:25:00.136 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:25:01.410 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:25:31.411 [info] {"source":"oban","duration":858,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:26:00.136 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:26:01.412 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:26:31.412 [info] {"source":"oban","duration":894,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:27:00.135 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:27:01.413 [info] {"source":"oban","duration":910,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:27:31.415 [info] {"source":"oban","duration":1711,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:28:00.135 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:28:01.415 [info] {"source":"oban","duration":867,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:28:31.416 [info] {"source":"oban","duration":1085,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:29:00.134 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:29:01.417 [info] {"source":"oban","duration":1027,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:29:31.418 [info] {"source":"oban","duration":863,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:30:00.133 [info] {"source":"oban","duration":410,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:30:01.418 [info] {"source":"oban","duration":1049,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:30:31.419 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:31:00.132 [info] {"source":"oban","duration":430,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:31:01.420 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:31:31.420 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:32:00.132 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:32:01.421 [info] {"source":"oban","duration":873,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:32:31.421 [info] {"source":"oban","duration":641,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:33:00.131 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:33:01.422 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:33:31.423 [info] {"source":"oban","duration":1298,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:34:00.130 [info] {"source":"oban","duration":91,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:34:01.425 [info] {"source":"oban","duration":1126,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:34:31.426 [info] {"source":"oban","duration":758,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:35:00.129 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:35:01.427 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:35:31.429 [info] {"source":"oban","duration":1754,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:36:00.128 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:36:01.429 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:36:31.430 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:37:00.127 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:37:01.430 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:37:31.431 [info] {"source":"oban","duration":889,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:38:00.126 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:38:01.432 [info] {"source":"oban","duration":902,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:38:31.432 [info] {"source":"oban","duration":1114,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:39:00.124 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:39:01.432 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:39:31.433 [info] {"source":"oban","duration":868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:40:00.124 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:40:01.434 [info] {"source":"oban","duration":1585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:40:31.435 [info] {"source":"oban","duration":1375,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:41:00.123 [info] {"source":"oban","duration":402,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:41:01.437 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:41:31.437 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:42:00.120 [info] {"source":"oban","duration":242,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:42:01.436 [info] {"source":"oban","duration":852,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:42:31.504 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:43:00.187 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:43:01.505 [info] {"source":"oban","duration":855,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:43:31.505 [info] {"source":"oban","duration":692,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:44:00.186 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:44:01.506 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:44:31.507 [info] {"source":"oban","duration":911,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:45:00.184 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:45:01.507 [info] {"source":"oban","duration":824,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:45:31.509 [info] {"source":"oban","duration":1627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:46:00.183 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:46:01.510 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:46:31.511 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:47:00.183 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:47:01.513 [info] {"source":"oban","duration":1735,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:47:31.514 [info] {"source":"oban","duration":1633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:48:00.182 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:48:01.515 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:48:31.516 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:49:00.181 [info] {"source":"oban","duration":314,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:49:01.517 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:49:31.518 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:50:00.180 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:50:01.519 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:50:31.520 [info] {"source":"oban","duration":1149,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:51:00.180 [info] {"source":"oban","duration":474,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:51:01.521 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:51:31.522 [info] {"source":"oban","duration":1149,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:52:00.179 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:52:01.523 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:52:31.524 [info] {"source":"oban","duration":894,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:53:00.178 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:53:01.524 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:53:31.525 [info] {"source":"oban","duration":778,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:54:00.177 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:54:01.526 [info] {"source":"oban","duration":917,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:54:31.526 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:55:00.176 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:55:01.527 [info] {"source":"oban","duration":1116,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:55:31.528 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:56:00.175 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:56:01.529 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:56:31.530 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:57:00.174 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:57:01.531 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:57:31.532 [info] {"source":"oban","duration":872,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:58:00.174 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:58:01.533 [info] {"source":"oban","duration":663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:58:31.534 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:59:00.173 [info] {"source":"oban","duration":448,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:59:01.535 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:59:31.535 [info] {"source":"oban","duration":705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:00:00.172 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:00:01.536 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:00:31.538 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:01:00.171 [info] {"source":"oban","duration":201,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:01:01.537 [info] {"source":"oban","duration":710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:01:31.621 [info] {"source":"oban","duration":808,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:02:00.253 [info] {"source":"oban","duration":414,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:02:01.622 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:02:31.623 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:03:00.252 [info] {"source":"oban","duration":391,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:03:01.625 [info] {"source":"oban","duration":1505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:03:31.626 [info] {"source":"oban","duration":1082,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:04:00.250 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:04:01.627 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:04:31.627 [info] {"source":"oban","duration":499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:05:00.249 [info] {"source":"oban","duration":248,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:05:01.628 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:05:31.629 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:06:00.248 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:06:01.630 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:06:31.631 [info] {"source":"oban","duration":1079,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:07:00.248 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:07:01.631 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:07:31.632 [info] {"source":"oban","duration":907,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:08:00.247 [info] {"source":"oban","duration":382,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:08:01.633 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:08:31.635 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:09:00.247 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:09:01.635 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:09:31.636 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:10:00.246 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:10:01.636 [info] {"source":"oban","duration":725,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:10:31.638 [info] {"source":"oban","duration":1695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:11:00.246 [info] {"source":"oban","duration":377,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:11:01.639 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:11:31.640 [info] {"source":"oban","duration":854,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:00.245 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:12:01.641 [info] {"source":"oban","duration":890,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:31.642 [info] {"source":"oban","duration":912,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:13:00.243 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:13:01.643 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:13:31.643 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:14:00.243 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:14:01.643 [info] {"source":"oban","duration":818,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:14:31.644 [info] {"source":"oban","duration":911,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:15:00.243 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:15:01.644 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:15:31.646 [info] {"source":"oban","duration":1605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:16:00.242 [info] {"source":"oban","duration":300,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:16:01.646 [info] {"source":"oban","duration":668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:16:31.648 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:17:00.241 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:17:01.649 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:17:31.651 [info] {"source":"oban","duration":1539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:00.240 [info] {"source":"oban","duration":211,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:18:01.651 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:31.652 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:19:00.239 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:19:01.653 [info] {"source":"oban","duration":468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:19:31.654 [info] {"source":"oban","duration":861,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:20:00.237 [info] {"source":"oban","duration":389,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:20:01.655 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:20:31.656 [info] {"source":"oban","duration":913,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:21:00.237 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:21:01.657 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:21:31.658 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:22:00.236 [info] {"source":"oban","duration":302,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:22:01.658 [info] {"source":"oban","duration":812,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:22:31.659 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:23:00.315 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:23:01.741 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:23:31.742 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:24:00.314 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:24:01.742 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:24:31.743 [info] {"source":"oban","duration":1029,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:25:00.312 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:25:01.743 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:25:31.744 [info] {"source":"oban","duration":784,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:26:00.312 [info] {"source":"oban","duration":382,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:26:01.745 [info] {"source":"oban","duration":1092,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:26:31.746 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:27:00.311 [info] {"source":"oban","duration":404,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:27:01.748 [info] {"source":"oban","duration":1380,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:27:31.748 [info] {"source":"oban","duration":739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:28:00.310 [info] {"source":"oban","duration":211,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:28:01.749 [info] {"source":"oban","duration":890,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:28:31.750 [info] {"source":"oban","duration":937,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:29:00.309 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:29:01.750 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:29:31.751 [info] {"source":"oban","duration":983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:30:00.308 [info] {"source":"oban","duration":289,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:30:01.752 [info] {"source":"oban","duration":1065,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:30:31.753 [info] {"source":"oban","duration":1081,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:31:00.307 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:31:01.753 [info] {"source":"oban","duration":944,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:31:31.753 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:32:00.306 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:32:01.754 [info] {"source":"oban","duration":773,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:32:31.756 [info] {"source":"oban","duration":1671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:33:00.304 [info] {"source":"oban","duration":386,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:33:01.757 [info] {"source":"oban","duration":1052,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:33:31.758 [info] {"source":"oban","duration":1058,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:34:00.304 [info] {"source":"oban","duration":248,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:34:01.758 [info] {"source":"oban","duration":486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:34:31.759 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:35:00.302 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:35:01.759 [info] {"source":"oban","duration":651,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:35:31.761 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:36:00.301 [info] {"source":"oban","duration":244,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:36:01.761 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:36:31.762 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:37:00.301 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:37:01.763 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:37:31.762 [info] {"source":"oban","duration":827,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:38:00.381 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:38:01.845 [info] {"source":"oban","duration":718,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:38:31.847 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:39:00.380 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:39:01.849 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:39:31.849 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:40:00.379 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:40:01.850 [info] {"source":"oban","duration":944,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:40:31.852 [info] {"source":"oban","duration":1545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:41:00.379 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:41:01.853 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:41:31.854 [info] {"source":"oban","duration":1549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:42:00.379 [info] {"source":"oban","duration":447,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:42:01.855 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:42:31.856 [info] {"source":"oban","duration":930,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:43:00.379 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:43:01.857 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:43:31.858 [info] {"source":"oban","duration":986,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:44:00.378 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:44:01.859 [info] {"source":"oban","duration":663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:44:31.860 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:45:00.377 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:45:01.863 [info] {"source":"oban","duration":1592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:45:31.863 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:46:00.377 [info] {"source":"oban","duration":289,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:46:01.864 [info] {"source":"oban","duration":708,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:46:31.865 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:47:00.377 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:47:01.867 [info] {"source":"oban","duration":868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:47:31.867 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:48:00.376 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:48:01.868 [info] {"source":"oban","duration":990,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:48:31.869 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:49:00.376 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:49:01.870 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:49:31.872 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:50:00.375 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:50:01.872 [info] {"source":"oban","duration":652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:50:31.874 [info] {"source":"oban","duration":989,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:51:00.375 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:51:01.874 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:51:31.875 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:52:00.373 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:52:01.876 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:52:31.877 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:53:00.372 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:53:01.877 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:53:31.878 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:54:00.371 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:54:01.880 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:54:31.881 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:55:00.371 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:55:01.882 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:55:31.884 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:56:00.371 [info] {"source":"oban","duration":658,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:56:01.886 [info] {"source":"oban","duration":1794,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:56:31.888 [info] {"source":"oban","duration":1635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:57:00.438 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:57:01.957 [info] {"source":"oban","duration":1177,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:57:31.958 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:58:00.438 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:58:01.959 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:58:31.960 [info] {"source":"oban","duration":810,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:59:00.437 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:59:01.961 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:59:31.962 [info] {"source":"oban","duration":821,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:00:00.436 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:00:01.963 [info] {"source":"oban","duration":805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:00:31.964 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:01:00.436 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:01:01.965 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:01:31.966 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:02:00.436 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:02:01.968 [info] {"source":"oban","duration":864,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:02:31.968 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:03:00.436 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:03:01.969 [info] {"source":"oban","duration":853,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:03:31.970 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:04:00.436 [info] {"source":"oban","duration":308,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:04:01.971 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:04:31.972 [info] {"source":"oban","duration":1042,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:05:00.435 [info] {"source":"oban","duration":298,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:05:01.973 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:05:31.974 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:06:00.433 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:06:01.975 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:06:31.976 [info] {"source":"oban","duration":1655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:07:00.433 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:07:01.978 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:07:31.979 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:08:00.433 [info] {"source":"oban","duration":309,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:08:01.980 [info] {"source":"oban","duration":927,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:08:31.981 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:09:00.433 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:09:01.982 [info] {"source":"oban","duration":1170,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:09:31.983 [info] {"source":"oban","duration":831,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:10:00.432 [info] {"source":"oban","duration":396,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:10:01.985 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:10:31.985 [info] {"source":"oban","duration":744,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:11:00.432 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:11:01.986 [info] {"source":"oban","duration":827,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:11:31.985 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:12:00.432 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:12:01.987 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:12:31.988 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:13:00.431 [info] {"source":"oban","duration":176,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:13:01.991 [info] {"source":"oban","duration":2063,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:13:31.991 [info] {"source":"oban","duration":694,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:14:00.430 [info] {"source":"oban","duration":218,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:14:01.992 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:14:31.993 [info] {"source":"oban","duration":723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:15:00.429 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:15:01.994 [info] {"source":"oban","duration":475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:15:31.993 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:16:00.426 [info] {"source":"oban","duration":203,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:16:01.993 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:16:31.994 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:17:00.426 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:17:01.994 [info] {"source":"oban","duration":677,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:17:31.995 [info] {"source":"oban","duration":880,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:18:00.458 [info] {"source":"oban","duration":178,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:18:02.030 [info] {"source":"oban","duration":686,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:18:32.042 [info] {"source":"oban","duration":1347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:19:00.469 [info] {"source":"oban","duration":417,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:19:02.043 [info] {"source":"oban","duration":489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:19:32.043 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:20:00.470 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:20:02.044 [info] {"source":"oban","duration":1100,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:20:32.045 [info] {"source":"oban","duration":842,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:21:00.468 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:21:02.045 [info] {"source":"oban","duration":1189,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:21:32.048 [info] {"source":"oban","duration":1776,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:22:00.469 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:22:02.049 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:22:32.050 [info] {"source":"oban","duration":1147,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:23:00.468 [info] {"source":"oban","duration":444,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:23:02.050 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:23:32.051 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:24:00.467 [info] {"source":"oban","duration":846,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:24:02.051 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:24:32.052 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:25:00.467 [info] {"source":"oban","duration":392,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:25:02.053 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:25:32.054 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:26:00.466 [info] {"source":"oban","duration":413,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:26:02.055 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:26:32.056 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:27:00.465 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:27:02.056 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:27:32.058 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:28:00.465 [info] {"source":"oban","duration":236,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:28:02.059 [info] {"source":"oban","duration":1566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:28:32.060 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:29:00.463 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:29:02.061 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:29:32.062 [info] {"source":"oban","duration":1382,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:30:00.461 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:30:02.063 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:30:32.064 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:31:00.460 [info] {"source":"oban","duration":710,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:31:02.066 [info] {"source":"oban","duration":1567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:31:32.066 [info] {"source":"oban","duration":1531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:32:00.459 [info] {"source":"oban","duration":229,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:32:02.068 [info] {"source":"oban","duration":1068,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:32:32.069 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:33:00.458 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:33:02.070 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:33:32.072 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:34:00.457 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:34:02.073 [info] {"source":"oban","duration":842,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:34:32.073 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:35:00.455 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:35:02.074 [info] {"source":"oban","duration":800,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:35:32.075 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:36:00.457 [info] {"source":"oban","duration":2676,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:36:02.087 [info] {"source":"oban","duration":4219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:36:32.101 [info] {"source":"oban","duration":737,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:37:00.492 [info] {"source":"oban","duration":222,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:37:02.125 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:37:32.128 [info] {"source":"oban","duration":492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:38:00.494 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:38:02.128 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:38:32.128 [info] {"source":"oban","duration":671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:39:00.492 [info] {"source":"oban","duration":192,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:39:02.129 [info] {"source":"oban","duration":743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:39:32.129 [info] {"source":"oban","duration":463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:40:00.490 [info] {"source":"oban","duration":216,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:40:02.130 [info] {"source":"oban","duration":1227,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:40:32.129 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:41:00.487 [info] {"source":"oban","duration":411,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:41:02.130 [info] {"source":"oban","duration":1184,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:41:32.130 [info] {"source":"oban","duration":743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:42:00.485 [info] {"source":"oban","duration":165,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:42:02.131 [info] {"source":"oban","duration":872,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:42:32.130 [info] {"source":"oban","duration":605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:43:00.484 [info] {"source":"oban","duration":309,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:43:02.131 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:43:32.132 [info] {"source":"oban","duration":1085,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:44:00.482 [info] {"source":"oban","duration":190,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:44:02.135 [info] {"source":"oban","duration":2784,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:44:32.135 [info] {"source":"oban","duration":469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:45:00.481 [info] {"source":"oban","duration":469,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:45:02.136 [info] {"source":"oban","duration":648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:45:32.136 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:46:00.479 [info] {"source":"oban","duration":205,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:46:02.137 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:46:32.137 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:47:00.477 [info] {"source":"oban","duration":211,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:47:02.137 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:47:32.137 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:48:00.475 [info] {"source":"oban","duration":196,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:48:02.138 [info] {"source":"oban","duration":755,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:48:32.138 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:49:00.473 [info] {"source":"oban","duration":220,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:49:02.139 [info] {"source":"oban","duration":677,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:49:32.139 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:50:00.471 [info] {"source":"oban","duration":241,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:50:02.138 [info] {"source":"oban","duration":723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:50:32.139 [info] {"source":"oban","duration":739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:51:00.469 [info] {"source":"oban","duration":219,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:51:02.140 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:51:32.140 [info] {"source":"oban","duration":1125,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:52:00.467 [info] {"source":"oban","duration":216,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:52:02.141 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:52:32.141 [info] {"source":"oban","duration":896,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:53:00.465 [info] {"source":"oban","duration":370,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:53:02.141 [info] {"source":"oban","duration":676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:53:32.142 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:54:00.463 [info] {"source":"oban","duration":213,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:54:02.141 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:54:32.141 [info] {"source":"oban","duration":452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:55:00.461 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:55:02.142 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:55:32.253 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:56:00.571 [info] {"source":"oban","duration":175,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:56:02.254 [info] {"source":"oban","duration":1068,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:56:32.255 [info] {"source":"oban","duration":1114,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:57:00.570 [info] {"source":"oban","duration":418,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:57:02.257 [info] {"source":"oban","duration":1063,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:57:32.258 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:58:00.570 [info] {"source":"oban","duration":235,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:58:02.259 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:58:32.260 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:59:00.570 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:59:02.261 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:59:32.262 [info] {"source":"oban","duration":881,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:00:00.569 [info] {"source":"oban","duration":211,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:00:02.263 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:00:32.263 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:01:00.568 [info] {"source":"oban","duration":247,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:01:02.264 [info] {"source":"oban","duration":859,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:01:32.264 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:02:00.567 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:02:02.266 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:02:32.265 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:03:00.565 [info] {"source":"oban","duration":221,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:03:02.266 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:03:32.266 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:04:00.564 [info] {"source":"oban","duration":218,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:04:02.267 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:04:32.268 [info] {"source":"oban","duration":465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:05:00.563 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:05:02.269 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:05:32.270 [info] {"source":"oban","duration":1253,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:06:00.562 [info] {"source":"oban","duration":173,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:06:02.270 [info] {"source":"oban","duration":777,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:06:32.271 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:07:00.561 [info] {"source":"oban","duration":205,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:07:02.275 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:07:32.275 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:08:00.560 [info] {"source":"oban","duration":181,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:08:02.275 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:08:32.276 [info] {"source":"oban","duration":736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:09:00.560 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:09:02.277 [info] {"source":"oban","duration":613,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:09:32.279 [info] {"source":"oban","duration":1640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:10:00.559 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:10:02.280 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:10:32.281 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:11:00.558 [info] {"source":"oban","duration":241,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:11:02.281 [info] {"source":"oban","duration":471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:11:32.281 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:12:00.557 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:12:02.282 [info] {"source":"oban","duration":480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:12:32.284 [info] {"source":"oban","duration":1109,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:13:00.556 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:13:02.284 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:13:32.286 [info] {"source":"oban","duration":1542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:14:00.555 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:14:02.286 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:14:32.287 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:15:00.646 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:15:02.379 [info] {"source":"oban","duration":743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:15:32.381 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:16:00.646 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:16:02.382 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:16:32.383 [info] {"source":"oban","duration":1016,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:17:00.647 [info] {"source":"oban","duration":726,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:17:02.384 [info] {"source":"oban","duration":805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:17:32.386 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:18:00.647 [info] {"source":"oban","duration":434,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:18:02.387 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:18:32.389 [info] {"source":"oban","duration":1634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:19:00.648 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:19:02.391 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:19:32.392 [info] {"source":"oban","duration":872,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:20:00.648 [info] {"source":"oban","duration":403,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:20:02.393 [info] {"source":"oban","duration":990,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:20:32.395 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:21:00.648 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:21:02.396 [info] {"source":"oban","duration":699,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:21:32.397 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:22:00.647 [info] {"source":"oban","duration":245,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:22:02.398 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:22:32.399 [info] {"source":"oban","duration":804,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:23:00.647 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:23:02.401 [info] {"source":"oban","duration":875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:23:32.401 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:24:00.646 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:24:02.402 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:24:32.403 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:25:00.647 [info] {"source":"oban","duration":654,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:25:02.405 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:25:32.406 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:26:00.647 [info] {"source":"oban","duration":198,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:26:02.408 [info] {"source":"oban","duration":1067,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:26:32.409 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:27:00.646 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:27:02.410 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:27:32.412 [info] {"source":"oban","duration":983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:28:00.647 [info] {"source":"oban","duration":298,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:28:02.413 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:28:32.413 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:29:00.647 [info] {"source":"oban","duration":380,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:29:02.414 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:29:32.415 [info] {"source":"oban","duration":780,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:30:00.647 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:30:02.417 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:30:32.418 [info] {"source":"oban","duration":1049,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:31:00.646 [info] {"source":"oban","duration":207,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:31:02.419 [info] {"source":"oban","duration":944,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:31:32.420 [info] {"source":"oban","duration":1104,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:32:00.646 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:32:02.422 [info] {"source":"oban","duration":1671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:32:32.424 [info] {"source":"oban","duration":882,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:33:00.647 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:33:02.425 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:33:32.427 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:34:00.647 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:34:02.429 [info] {"source":"oban","duration":1021,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:34:32.525 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:35:00.743 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:35:02.526 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:35:32.528 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:36:00.743 [info] {"source":"oban","duration":251,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:36:02.529 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:36:32.531 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:37:00.743 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:37:02.532 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:37:32.533 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:38:00.747 [info] {"source":"oban","duration":2425,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:38:02.535 [info] {"source":"oban","duration":679,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:38:32.537 [info] {"source":"oban","duration":1077,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:39:00.748 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:39:02.538 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:39:32.539 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:40:00.749 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:40:02.541 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:40:32.542 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:41:00.749 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:41:02.543 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:41:32.545 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:42:00.751 [info] {"source":"oban","duration":774,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:42:02.547 [info] {"source":"oban","duration":1612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:42:32.549 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:43:00.751 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:43:02.550 [info] {"source":"oban","duration":1639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:43:32.552 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:44:00.752 [info] {"source":"oban","duration":282,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:44:02.553 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:44:32.555 [info] {"source":"oban","duration":1258,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:45:00.752 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:45:02.557 [info] {"source":"oban","duration":1659,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:45:32.560 [info] {"source":"oban","duration":1698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:46:00.752 [info] {"source":"oban","duration":177,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:46:02.561 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:46:32.562 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:47:00.752 [info] {"source":"oban","duration":198,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:47:02.563 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:47:32.565 [info] {"source":"oban","duration":1716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:48:00.752 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:48:02.567 [info] {"source":"oban","duration":1578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:48:32.570 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:49:00.753 [info] {"source":"oban","duration":294,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:49:02.572 [info] {"source":"oban","duration":1109,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:49:32.574 [info] {"source":"oban","duration":1558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:50:00.754 [info] {"source":"oban","duration":188,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:50:02.576 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:50:32.577 [info] {"source":"oban","duration":1166,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:51:00.754 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:51:02.579 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:51:32.582 [info] {"source":"oban","duration":1801,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:52:00.754 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:52:02.584 [info] {"source":"oban","duration":1739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:52:32.586 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:53:00.755 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:53:02.589 [info] {"source":"oban","duration":1609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:53:32.591 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:54:00.756 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:54:02.592 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:54:32.594 [info] {"source":"oban","duration":1082,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:55:00.757 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:55:02.595 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:55:32.597 [info] {"source":"oban","duration":1024,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:56:00.757 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:56:02.598 [info] {"source":"oban","duration":1124,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:56:32.678 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:57:00.837 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:57:02.679 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:57:32.681 [info] {"source":"oban","duration":696,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:58:00.837 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:58:02.682 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:58:32.684 [info] {"source":"oban","duration":466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:59:00.838 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:59:02.685 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:59:32.687 [info] {"source":"oban","duration":1619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:00:00.838 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:00:02.690 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:00:32.690 [info] {"source":"oban","duration":739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:01:00.839 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:01:02.693 [info] {"source":"oban","duration":1178,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:01:32.695 [info] {"source":"oban","duration":1210,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:02:00.839 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:02:02.696 [info] {"source":"oban","duration":734,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:02:32.698 [info] {"source":"oban","duration":1704,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:03:00.840 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:03:02.700 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:03:32.701 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:04:00.840 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:04:02.703 [info] {"source":"oban","duration":830,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:04:32.704 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:05:00.841 [info] {"source":"oban","duration":188,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:05:02.706 [info] {"source":"oban","duration":728,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:05:32.707 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:06:00.841 [info] {"source":"oban","duration":401,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:06:02.709 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:06:32.709 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:07:00.842 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:07:02.712 [info] {"source":"oban","duration":763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:07:32.713 [info] {"source":"oban","duration":1338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:08:00.843 [info] {"source":"oban","duration":792,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:08:02.714 [info] {"source":"oban","duration":841,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:08:32.716 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:09:00.844 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:09:02.717 [info] {"source":"oban","duration":769,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:09:32.718 [info] {"source":"oban","duration":826,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:10:00.844 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:10:02.720 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:10:32.722 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:11:00.844 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:11:02.724 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:11:32.725 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:12:00.784 [info] {"source":"oban","duration":433,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:12:02.666 [info] {"source":"oban","duration":877,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:12:32.666 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:13:00.783 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:13:02.668 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:13:32.668 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:14:00.781 [info] {"source":"oban","duration":429,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:14:02.669 [info] {"source":"oban","duration":711,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:14:32.669 [info] {"source":"oban","duration":634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:15:00.780 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:15:02.670 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:15:32.670 [info] {"source":"oban","duration":661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:16:00.779 [info] {"source":"oban","duration":245,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:16:02.671 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:16:32.671 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:17:00.778 [info] {"source":"oban","duration":248,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:17:02.672 [info] {"source":"oban","duration":1178,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:17:32.673 [info] {"source":"oban","duration":784,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:18:00.776 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:18:02.673 [info] {"source":"oban","duration":896,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:18:32.674 [info] {"source":"oban","duration":863,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:19:00.774 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:19:02.674 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:19:32.674 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:20:00.773 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:20:02.675 [info] {"source":"oban","duration":896,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:20:32.676 [info] {"source":"oban","duration":824,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:21:00.771 [info] {"source":"oban","duration":228,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:21:02.677 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:21:32.677 [info] {"source":"oban","duration":880,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:22:00.770 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:22:02.680 [info] {"source":"oban","duration":1649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:22:32.680 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:23:00.769 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:23:02.680 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:23:32.681 [info] {"source":"oban","duration":879,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:24:00.768 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:24:02.682 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:24:32.683 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:25:00.767 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:25:02.683 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:25:32.684 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:26:00.765 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:26:02.684 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:26:32.685 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:27:00.763 [info] {"source":"oban","duration":245,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:27:02.686 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:27:32.686 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:28:00.762 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:28:02.687 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:28:32.688 [info] {"source":"oban","duration":1106,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:29:00.761 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:29:02.688 [info] {"source":"oban","duration":727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:29:32.796 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:30:00.867 [info] {"source":"oban","duration":451,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:30:02.797 [info] {"source":"oban","duration":913,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:30:32.798 [info] {"source":"oban","duration":759,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:31:00.866 [info] {"source":"oban","duration":309,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:31:02.799 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:31:32.800 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:32:00.865 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:32:02.800 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:32:32.801 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:33:00.865 [info] {"source":"oban","duration":296,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:33:02.802 [info] {"source":"oban","duration":648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:33:32.804 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:34:00.865 [info] {"source":"oban","duration":303,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:34:02.804 [info] {"source":"oban","duration":683,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:34:32.806 [info] {"source":"oban","duration":1575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:35:00.865 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:35:02.807 [info] {"source":"oban","duration":792,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:35:32.808 [info] {"source":"oban","duration":654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:36:00.865 [info] {"source":"oban","duration":234,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:36:02.809 [info] {"source":"oban","duration":761,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:36:32.810 [info] {"source":"oban","duration":852,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:37:00.865 [info] {"source":"oban","duration":314,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:37:02.812 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:37:32.813 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:38:00.865 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:38:02.814 [info] {"source":"oban","duration":696,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:38:32.816 [info] {"source":"oban","duration":1629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:39:00.864 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:39:02.817 [info] {"source":"oban","duration":986,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:39:32.818 [info] {"source":"oban","duration":761,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:40:00.864 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:40:02.819 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:40:32.820 [info] {"source":"oban","duration":989,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:41:00.863 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:41:02.822 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:41:32.823 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:42:00.863 [info] {"source":"oban","duration":243,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:42:02.825 [info] {"source":"oban","duration":1754,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:42:32.826 [info] {"source":"oban","duration":765,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:43:00.862 [info] {"source":"oban","duration":436,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:43:02.827 [info] {"source":"oban","duration":474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:43:32.827 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:44:00.861 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:44:02.828 [info] {"source":"oban","duration":821,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:44:32.829 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:45:00.862 [info] {"source":"oban","duration":368,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:45:02.830 [info] {"source":"oban","duration":819,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:45:32.831 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:46:00.861 [info] {"source":"oban","duration":242,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:46:02.831 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:46:32.833 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:47:00.860 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:47:02.834 [info] {"source":"oban","duration":727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:47:32.835 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:48:00.860 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:48:02.835 [info] {"source":"oban","duration":849,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:48:32.909 [info] {"source":"oban","duration":1216,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:49:00.931 [info] {"source":"oban","duration":654,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:49:02.910 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:49:32.910 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:00.931 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:50:02.911 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:32.913 [info] {"source":"oban","duration":875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:51:00.931 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:51:02.913 [info] {"source":"oban","duration":1024,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:51:32.914 [info] {"source":"oban","duration":666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:52:00.931 [info] {"source":"oban","duration":287,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:52:02.916 [info] {"source":"oban","duration":1718,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:52:32.918 [info] {"source":"oban","duration":1587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:53:00.930 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:53:02.919 [info] {"source":"oban","duration":646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:53:32.920 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:54:00.930 [info] {"source":"oban","duration":374,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:54:02.922 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:54:32.923 [info] {"source":"oban","duration":786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:55:00.930 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:55:02.924 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:55:32.926 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:56:00.928 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:56:02.926 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:56:32.928 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:57:00.928 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:57:02.929 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:57:32.930 [info] {"source":"oban","duration":647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:00.928 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:58:02.931 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:32.932 [info] {"source":"oban","duration":879,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:59:00.927 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:59:02.933 [info] {"source":"oban","duration":1197,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:59:32.934 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:00:00.927 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:00:02.935 [info] {"source":"oban","duration":1114,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:00:32.935 [info] {"source":"oban","duration":668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:01:00.927 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:01:02.936 [info] {"source":"oban","duration":819,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:01:32.938 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:02:00.928 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:02:02.938 [info] {"source":"oban","duration":784,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:02:32.939 [info] {"source":"oban","duration":784,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:03:00.927 [info] {"source":"oban","duration":209,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:03:02.940 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:03:32.941 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:04:00.925 [info] {"source":"oban","duration":271,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:04:02.943 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:04:32.937 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:05:00.925 [info] {"source":"oban","duration":381,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:05:02.944 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:05:32.945 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:06:00.924 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:06:02.946 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:06:32.948 [info] {"source":"oban","duration":1110,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:07:00.924 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:07:02.948 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:07:32.949 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:08:00.990 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:08:03.016 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:08:33.017 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:09:00.989 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:09:03.018 [info] {"source":"oban","duration":1003,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:09:33.018 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:10:00.988 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:10:03.020 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:10:33.022 [info] {"source":"oban","duration":1052,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:11:00.988 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:11:03.022 [info] {"source":"oban","duration":713,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:11:33.023 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:12:00.986 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:12:03.023 [info] {"source":"oban","duration":788,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:12:33.024 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:13:00.985 [info] {"source":"oban","duration":241,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:13:03.025 [info] {"source":"oban","duration":765,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:13:33.026 [info] {"source":"oban","duration":819,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:14:00.984 [info] {"source":"oban","duration":467,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:14:03.027 [info] {"source":"oban","duration":727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:14:33.029 [info] {"source":"oban","duration":1724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:15:00.984 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:15:03.030 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:15:33.032 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:16:00.983 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:16:03.032 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:16:33.034 [info] {"source":"oban","duration":1676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:17:00.983 [info] {"source":"oban","duration":235,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:17:03.035 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:17:33.037 [info] {"source":"oban","duration":1789,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:18:00.983 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:18:03.038 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:18:33.039 [info] {"source":"oban","duration":652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:19:00.982 [info] {"source":"oban","duration":169,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:19:03.040 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:19:33.041 [info] {"source":"oban","duration":873,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:20:00.982 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:20:03.042 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:20:33.043 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:21:00.981 [info] {"source":"oban","duration":403,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:21:03.043 [info] {"source":"oban","duration":691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:21:33.044 [info] {"source":"oban","duration":677,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:22:00.981 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:22:03.046 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:22:33.047 [info] {"source":"oban","duration":980,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:23:00.980 [info] {"source":"oban","duration":266,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:23:03.047 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:23:33.049 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:24:00.979 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:24:03.051 [info] {"source":"oban","duration":1025,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:24:33.052 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:25:00.979 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:25:03.052 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:25:33.052 [info] {"source":"oban","duration":1104,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:26:00.978 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:26:03.054 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:26:33.055 [info] {"source":"oban","duration":491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:27:00.978 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:27:03.056 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:27:33.056 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:28:00.977 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:28:03.058 [info] {"source":"oban","duration":1017,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:28:33.058 [info] {"source":"oban","duration":684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:29:00.977 [info] {"source":"oban","duration":245,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:29:03.060 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:29:33.061 [info] {"source":"oban","duration":1006,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:30:00.977 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:30:03.062 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:30:33.062 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:31:01.082 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:31:03.170 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:31:33.171 [info] {"source":"oban","duration":986,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:32:00.082 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:32:03.171 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:32:33.173 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:33:00.082 [info] {"source":"oban","duration":248,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:33:03.174 [info] {"source":"oban","duration":1245,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:33:33.176 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:34:00.081 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:34:03.177 [info] {"source":"oban","duration":825,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:34:33.178 [info] {"source":"oban","duration":882,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:35:00.082 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:35:03.179 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:35:33.180 [info] {"source":"oban","duration":856,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:36:00.082 [info] {"source":"oban","duration":691,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:36:03.182 [info] {"source":"oban","duration":1883,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:36:33.183 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:37:00.082 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:37:03.184 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:37:33.186 [info] {"source":"oban","duration":1197,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:38:00.082 [info] {"source":"oban","duration":386,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:38:03.187 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:38:33.188 [info] {"source":"oban","duration":1053,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:39:00.083 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:39:03.189 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:39:33.191 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:40:00.083 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:40:03.192 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:40:33.193 [info] {"source":"oban","duration":870,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:41:00.083 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:41:03.194 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:41:33.196 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:42:00.083 [info] {"source":"oban","duration":213,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:42:03.197 [info] {"source":"oban","duration":1117,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:42:33.198 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:43:00.083 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:43:03.199 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:43:33.200 [info] {"source":"oban","duration":734,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:44:00.083 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:44:03.201 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:44:33.203 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:45:00.083 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:45:03.204 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:45:33.205 [info] {"source":"oban","duration":805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:46:00.082 [info] {"source":"oban","duration":169,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:46:03.206 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:46:33.207 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:47:00.082 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:47:03.208 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:47:33.209 [info] {"source":"oban","duration":866,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:48:00.082 [info] {"source":"oban","duration":402,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:48:03.210 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:48:33.212 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:49:00.082 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:49:03.213 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:49:33.214 [info] {"source":"oban","duration":1562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:50:00.081 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:50:03.215 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:50:33.217 [info] {"source":"oban","duration":1077,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:51:00.082 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:51:03.218 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:51:33.219 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:52:00.081 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:52:03.220 [info] {"source":"oban","duration":813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:52:33.222 [info] {"source":"oban","duration":1113,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:53:00.081 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:53:03.223 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:53:33.223 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:54:00.081 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:54:03.225 [info] {"source":"oban","duration":927,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:54:33.225 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:55:00.159 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:55:03.303 [info] {"source":"oban","duration":812,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:55:33.305 [info] {"source":"oban","duration":1732,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:56:00.158 [info] {"source":"oban","duration":464,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:56:03.306 [info] {"source":"oban","duration":872,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:56:33.307 [info] {"source":"oban","duration":1116,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:57:00.159 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:57:03.309 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:57:33.311 [info] {"source":"oban","duration":741,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:58:00.158 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:58:03.312 [info] {"source":"oban","duration":889,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:58:33.313 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:59:00.158 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:59:03.314 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:59:33.316 [info] {"source":"oban","duration":854,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:00:00.158 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:00:03.316 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:00:33.317 [info] {"source":"oban","duration":671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:01:00.158 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:01:03.318 [info] {"source":"oban","duration":680,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:01:33.318 [info] {"source":"oban","duration":739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:02:00.157 [info] {"source":"oban","duration":297,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:02:03.320 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:02:33.321 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:03:00.157 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:03:03.322 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:03:33.322 [info] {"source":"oban","duration":464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:04:00.156 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:04:03.323 [info] {"source":"oban","duration":1121,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:04:33.323 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:05:00.156 [info] {"source":"oban","duration":497,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:05:03.324 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:05:33.325 [info] {"source":"oban","duration":1531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:06:00.156 [info] {"source":"oban","duration":176,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:06:03.327 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:06:33.328 [info] {"source":"oban","duration":759,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:07:00.155 [info] {"source":"oban","duration":203,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:07:03.330 [info] {"source":"oban","duration":986,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:07:33.330 [info] {"source":"oban","duration":803,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:08:00.154 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:08:03.330 [info] {"source":"oban","duration":441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:08:33.331 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:09:00.154 [info] {"source":"oban","duration":684,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:09:03.333 [info] {"source":"oban","duration":1045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:09:33.334 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:10:00.154 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:10:03.335 [info] {"source":"oban","duration":1559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:10:33.336 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:11:00.154 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:11:03.337 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:11:33.338 [info] {"source":"oban","duration":845,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:12:00.155 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:12:03.340 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:12:33.340 [info] {"source":"oban","duration":696,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:13:00.154 [info] {"source":"oban","duration":420,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:13:03.342 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:13:33.343 [info] {"source":"oban","duration":856,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:14:00.231 [info] {"source":"oban","duration":247,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:14:03.423 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:14:33.424 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:15:00.231 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:15:03.425 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:15:33.425 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:16:00.230 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:16:03.427 [info] {"source":"oban","duration":829,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:16:33.428 [info] {"source":"oban","duration":801,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:17:00.230 [info] {"source":"oban","duration":471,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:17:03.429 [info] {"source":"oban","duration":645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:17:33.431 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:18:00.229 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:18:03.432 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:18:33.433 [info] {"source":"oban","duration":696,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:19:00.230 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:19:03.434 [info] {"source":"oban","duration":788,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:19:33.436 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:20:00.229 [info] {"source":"oban","duration":440,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:20:03.437 [info] {"source":"oban","duration":827,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:20:33.439 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:21:00.229 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:21:03.440 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:21:33.441 [info] {"source":"oban","duration":1149,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:22:00.230 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:22:03.442 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:22:33.443 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:23:00.230 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:23:03.445 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:23:33.446 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:24:00.229 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:24:03.446 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:24:33.447 [info] {"source":"oban","duration":779,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:25:00.230 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:25:03.449 [info] {"source":"oban","duration":910,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:25:33.452 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:26:00.230 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:26:03.453 [info] {"source":"oban","duration":846,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:26:33.455 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:27:00.230 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:27:03.456 [info] {"source":"oban","duration":1043,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:27:33.456 [info] {"source":"oban","duration":1206,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:00.230 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:28:03.459 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:33.460 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:29:00.229 [info] {"source":"oban","duration":248,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:29:03.460 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:29:33.462 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:30:00.229 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:30:03.463 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:30:33.464 [info] {"source":"oban","duration":689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:31:00.228 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:31:03.466 [info] {"source":"oban","duration":927,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:31:33.467 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:32:00.227 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:32:03.467 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:32:33.469 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:33:00.228 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:33:03.470 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:33:33.471 [info] {"source":"oban","duration":679,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:34:00.228 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:34:03.473 [info] {"source":"oban","duration":719,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:34:33.474 [info] {"source":"oban","duration":1015,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:35:00.228 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:35:03.475 [info] {"source":"oban","duration":870,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:35:33.476 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:36:00.228 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:36:03.477 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:36:33.539 [info] {"source":"oban","duration":902,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:00.289 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:37:03.540 [info] {"source":"oban","duration":833,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:33.540 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:00.288 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:38:03.541 [info] {"source":"oban","duration":676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:33.543 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:00.287 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:39:03.544 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:33.545 [info] {"source":"oban","duration":1605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:00.286 [info] {"source":"oban","duration":226,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:40:03.547 [info] {"source":"oban","duration":1015,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:33.548 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:00.285 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:41:03.548 [info] {"source":"oban","duration":665,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:33.550 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:00.285 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:42:03.551 [info] {"source":"oban","duration":877,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:33.552 [info] {"source":"oban","duration":811,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:00.285 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:43:03.554 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:33.555 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:00.285 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:44:03.557 [info] {"source":"oban","duration":719,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:33.557 [info] {"source":"oban","duration":1017,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:00.284 [info] {"source":"oban","duration":382,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:45:03.558 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:33.559 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:00.284 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:46:03.560 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:33.562 [info] {"source":"oban","duration":1654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:00.284 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:47:03.563 [info] {"source":"oban","duration":725,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:33.564 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:00.284 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:48:03.565 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:33.566 [info] {"source":"oban","duration":1113,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:00.284 [info] {"source":"oban","duration":392,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:49:03.567 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:33.568 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:00.283 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:50:03.569 [info] {"source":"oban","duration":779,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:33.570 [info] {"source":"oban","duration":1045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:00.284 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:51:03.572 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:33.574 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:00.283 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:52:03.575 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:33.576 [info] {"source":"oban","duration":1094,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:00.284 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:53:03.577 [info] {"source":"oban","duration":834,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:33.578 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:00.283 [info] {"source":"oban","duration":245,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:54:03.578 [info] {"source":"oban","duration":875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:33.580 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:00.284 [info] {"source":"oban","duration":436,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:55:03.581 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:33.581 [info] {"source":"oban","duration":793,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:00.283 [info] {"source":"oban","duration":433,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:56:03.582 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:33.584 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:00.305 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:57:03.606 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:33.624 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:00.325 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:58:03.628 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:33.629 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:00.325 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:59:03.630 [info] {"source":"oban","duration":887,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:33.631 [info] {"source":"oban","duration":1554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:00.324 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:00:03.632 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:33.633 [info] {"source":"oban","duration":881,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:00.324 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:01:03.634 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:33.634 [info] {"source":"oban","duration":831,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:00.322 [info] {"source":"oban","duration":308,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:02:03.635 [info] {"source":"oban","duration":883,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:33.636 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:00.322 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:03:03.636 [info] {"source":"oban","duration":873,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:33.638 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:00.322 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:04:03.638 [info] {"source":"oban","duration":819,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:33.639 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:00.321 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:05:03.640 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:33.641 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:00.321 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:06:03.643 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:33.644 [info] {"source":"oban","duration":1622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:00.320 [info] {"source":"oban","duration":261,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:07:03.646 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:33.646 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:00.319 [info] {"source":"oban","duration":740,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:08:03.648 [info] {"source":"oban","duration":1721,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:33.649 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:00.317 [info] {"source":"oban","duration":247,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:09:03.649 [info] {"source":"oban","duration":661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:33.650 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:00.317 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:10:03.651 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:33.653 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:00.316 [info] {"source":"oban","duration":282,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:11:03.653 [info] {"source":"oban","duration":1548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:33.655 [info] {"source":"oban","duration":1591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:00.315 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:12:03.656 [info] {"source":"oban","duration":877,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:33.658 [info] {"source":"oban","duration":1563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:00.314 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:13:03.659 [info] {"source":"oban","duration":1606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:33.661 [info] {"source":"oban","duration":1655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:00.313 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:14:03.662 [info] {"source":"oban","duration":808,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:33.664 [info] {"source":"oban","duration":1671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:00.312 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:15:03.665 [info] {"source":"oban","duration":1798,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:33.667 [info] {"source":"oban","duration":1585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:00.310 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:16:03.668 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:33.669 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:00.309 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:17:03.670 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:33.672 [info] {"source":"oban","duration":1563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:00.307 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:18:03.673 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:33.674 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:00.306 [info] {"source":"oban","duration":431,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:19:03.674 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:33.675 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:00.306 [info] {"source":"oban","duration":430,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:20:03.676 [info] {"source":"oban","duration":887,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:33.765 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:00.393 [info] {"source":"oban","duration":433,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:21:03.765 [info] {"source":"oban","duration":883,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:33.767 [info] {"source":"oban","duration":1102,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:00.393 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:22:03.768 [info] {"source":"oban","duration":859,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:33.768 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:00.391 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:23:03.769 [info] {"source":"oban","duration":1089,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:33.770 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:00.390 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:24:03.771 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:33.771 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:00.389 [info] {"source":"oban","duration":422,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:25:03.772 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:33.773 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:00.388 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:26:03.773 [info] {"source":"oban","duration":798,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:33.774 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:00.387 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:27:03.775 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:33.776 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:00.387 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:28:03.776 [info] {"source":"oban","duration":813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:33.776 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:00.385 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:29:03.777 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:33.779 [info] {"source":"oban","duration":832,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:00.386 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:30:03.780 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:33.781 [info] {"source":"oban","duration":1009,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:00.385 [info] {"source":"oban","duration":389,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:31:03.782 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:33.784 [info] {"source":"oban","duration":1093,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:00.384 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:32:03.785 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:33.786 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:00.384 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:33:03.786 [info] {"source":"oban","duration":881,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:33.787 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:00.383 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:34:03.787 [info] {"source":"oban","duration":829,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:33.789 [info] {"source":"oban","duration":1065,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:00.381 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:35:03.789 [info] {"source":"oban","duration":1049,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:33.790 [info] {"source":"oban","duration":983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:00.381 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:36:03.790 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:33.791 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:00.379 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:37:03.791 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:33.793 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:00.379 [info] {"source":"oban","duration":613,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:38:03.793 [info] {"source":"oban","duration":855,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:33.794 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:00.378 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:39:03.795 [info] {"source":"oban","duration":1763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:33.797 [info] {"source":"oban","duration":1811,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:00.377 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:40:03.798 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:33.801 [info] {"source":"oban","duration":1663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:00.471 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:41:03.895 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:33.896 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:00.470 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:42:03.897 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:33.897 [info] {"source":"oban","duration":835,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:00.469 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:43:03.899 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:33.901 [info] {"source":"oban","duration":1566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:00.467 [info] {"source":"oban","duration":247,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:44:03.902 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:33.903 [info] {"source":"oban","duration":980,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:00.468 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:45:03.904 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:33.905 [info] {"source":"oban","duration":1563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:00.467 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:46:03.907 [info] {"source":"oban","duration":1737,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:33.908 [info] {"source":"oban","duration":872,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:00.466 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:47:03.910 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:33.911 [info] {"source":"oban","duration":1553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:00.465 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:48:03.913 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:33.914 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:00.465 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:49:03.916 [info] {"source":"oban","duration":1996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:33.916 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:00.464 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:50:03.917 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:33.918 [info] {"source":"oban","duration":1096,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:00.463 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:51:03.918 [info] {"source":"oban","duration":824,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:33.920 [info] {"source":"oban","duration":885,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:00.463 [info] {"source":"oban","duration":444,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:52:03.920 [info] {"source":"oban","duration":1042,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:33.921 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:00.462 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:53:03.923 [info] {"source":"oban","duration":1607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:33.925 [info] {"source":"oban","duration":1731,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:00.462 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:54:03.927 [info] {"source":"oban","duration":1564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:33.927 [info] {"source":"oban","duration":820,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:00.462 [info] {"source":"oban","duration":672,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:55:03.929 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:33.931 [info] {"source":"oban","duration":1678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:00.461 [info] {"source":"oban","duration":460,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:56:03.932 [info] {"source":"oban","duration":1550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:33.934 [info] {"source":"oban","duration":1165,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:00.461 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:57:03.936 [info] {"source":"oban","duration":1644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:33.937 [info] {"source":"oban","duration":1642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:00.460 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:58:03.937 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:33.939 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:00.460 [info] {"source":"oban","duration":297,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:59:03.940 [info] {"source":"oban","duration":835,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:33.941 [info] {"source":"oban","duration":697,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:00:00.460 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:00:03.942 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:00:34.029 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:00.546 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:01:04.029 [info] {"source":"oban","duration":697,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:34.031 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:00.545 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:02:04.032 [info] {"source":"oban","duration":870,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:34.032 [info] {"source":"oban","duration":674,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:00.544 [info] {"source":"oban","duration":260,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:03:04.033 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:34.034 [info] {"source":"oban","duration":819,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:00.543 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:04:04.035 [info] {"source":"oban","duration":869,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:34.036 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:00.542 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:05:04.037 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:34.038 [info] {"source":"oban","duration":1194,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:00.540 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:06:04.037 [info] {"source":"oban","duration":879,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:34.040 [info] {"source":"oban","duration":1534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:00.540 [info] {"source":"oban","duration":168,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:07:04.042 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:34.042 [info] {"source":"oban","duration":849,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:00.539 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:08:04.044 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:34.045 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:00.539 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:09:04.045 [info] {"source":"oban","duration":803,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:34.047 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:00.538 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:10:04.047 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:34.047 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:00.538 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:11:04.049 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:34.049 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:00.537 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:12:04.049 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:34.051 [info] {"source":"oban","duration":1571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:00.537 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:13:04.052 [info] {"source":"oban","duration":826,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:34.055 [info] {"source":"oban","duration":1722,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:00.538 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:14:04.056 [info] {"source":"oban","duration":880,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:34.057 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:00.537 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:15:04.057 [info] {"source":"oban","duration":755,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:34.059 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:00.537 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:16:04.060 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:34.060 [info] {"source":"oban","duration":451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:00.536 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:17:04.060 [info] {"source":"oban","duration":858,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:34.062 [info] {"source":"oban","duration":1980,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:00.536 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:18:04.064 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:34.065 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:00.534 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:19:04.066 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:34.067 [info] {"source":"oban","duration":1549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:00.534 [info] {"source":"oban","duration":293,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:20:04.069 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:34.070 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:00.533 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:21:04.070 [info] {"source":"oban","duration":472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:34.147 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:00.608 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:22:04.147 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:34.148 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:00.608 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:23:04.149 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:34.149 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:00.607 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:24:04.151 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:34.151 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:00.606 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:25:04.152 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:34.153 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:00.605 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:26:04.153 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:34.154 [info] {"source":"oban","duration":870,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:00.606 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:27:04.156 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:34.157 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:00.606 [info] {"source":"oban","duration":289,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:28:04.157 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:34.158 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:00.606 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:29:04.159 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:34.160 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:00.605 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:30:04.161 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:34.162 [info] {"source":"oban","duration":461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:00.605 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:31:04.162 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:34.162 [info] {"source":"oban","duration":710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:00.604 [info] {"source":"oban","duration":203,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:32:04.164 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:34.165 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:00.603 [info] {"source":"oban","duration":218,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:33:04.166 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:34.166 [info] {"source":"oban","duration":854,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:00.602 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:34:04.167 [info] {"source":"oban","duration":789,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:34.169 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:00.602 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:35:04.170 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:34.170 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:00.602 [info] {"source":"oban","duration":220,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:36:04.172 [info] {"source":"oban","duration":1085,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:34.172 [info] {"source":"oban","duration":1220,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:00.601 [info] {"source":"oban","duration":937,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:37:04.173 [info] {"source":"oban","duration":845,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:34.173 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:58.665 [info] GET /flat 00:37:58.665 [debug] QUERY OK source="settings" db=0.2ms idle=740.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:37:58.666 [debug] QUERY OK source="settings" db=0.1ms idle=741.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:37:58.666 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:37:58.666 [error] #PID<0.7859.0> running PinchflatWeb.Endpoint (connection #PID<0.7858.0>, stream id 1) terminated Server: wdm9.m1dg9r.org:80 (http) Request: GET /flat ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7858.0>, port: 80, scheme: "http", version: :"HTTP/1.0", path: "/flat", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 45247}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "close", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "wdm9.m1dg9r.org", method: "GET", owner: #PID<0.7859.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, {"accept-encoding", "gzip, deflate, br"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "close"}, {"host", "wdm9.m1dg9r.org"}, {"priority", "u=0, i"}, {"sec-fetch-dest", "document"}, {"sec-fetch-mode", "navigate"}, {"sec-fetch-site", "none"}, {"upgrade-insecure-requests", "1"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15"}, {"x-forwarded-for", "149.74.236.42"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "149.74.236.42"} ], request_path: "/flat", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQlOFxowmPJ_YAALEC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7858.0>, port: 80, scheme: "http", version: :"HTTP/1.0", path: "/flat", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 45247}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "close", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7858.0>, port: 80, scheme: "http", version: :"HTTP/1.0", path: "/flat", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 45247}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "close", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "wdm9.m1dg9r.org", method: "GET", owner: #PID<0.7859.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], (truncated) 00:38:00.601 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:38:04.175 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:34.176 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:00.599 [info] {"source":"oban","duration":168,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:39:03.366 [info] GET /flat; 00:39:03.367 [debug] QUERY OK source="settings" db=0.2ms idle=1444.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:03.367 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1444.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:03.367 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:39:03.368 [error] #PID<0.7866.0> running PinchflatWeb.Endpoint (connection #PID<0.7865.0>, stream id 1) terminated Server: 127.0.0.1:64040 (http) Request: GET /flat; ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat; (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7865.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat;", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 33420}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7866.0>, params: %{}, path_info: ["flat;"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "keep-alive"}, {"host", "127.0.0.1:64040"}, {"priority", "u=0, i"}, {"sec-fetch-dest", "document"}, {"sec-fetch-mode", "navigate"}, {"sec-fetch-site", "none"}, {"upgrade-insecure-requests", "1"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15"} ], request_path: "/flat;", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQo_IK_Q9B_80AALHC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7865.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat;", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 33420}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat; (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7865.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat;", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 33420}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7866.0>, params: %{}, path_info: ["flat;"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, {"accept-encoding", "gzip (truncated) 00:39:03.389 [info] GET /apple-touch-icon-precomposed.png 00:39:03.391 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=1467.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:03.392 [debug] QUERY OK source="settings" db=0.7ms queue=0.1ms idle=1468.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:03.392 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:39:03.393 [error] #PID<0.7869.0> running PinchflatWeb.Endpoint (connection #PID<0.7868.0>, stream id 1) terminated Server: 127.0.0.1:64040 (http) Request: GET /apple-touch-icon-precomposed.png ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /apple-touch-icon-precomposed (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7868.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/apple-touch-icon-precomposed.png", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 52432}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Safari" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7869.0>, params: %{}, path_info: ["apple-touch-icon-precomposed"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "keep-alive"}, {"host", "127.0.0.1:64040"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Safari"} ], request_path: "/apple-touch-icon-precomposed.png", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQo_N0r7V2sjYAALIC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7868.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/apple-touch-icon-precomposed.png", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 52432}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Safari" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /apple-touch-icon-precomposed (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7868.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/apple-touch-icon-precomposed.png", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 52432}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Safari" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7869.0>, params: %{}, path_info: ["apple-touch-icon-precomposed"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "keep-alive"}, {"host", "127.0.0.1:64040"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Safari"} ], request_path: "/apple-touch-icon-precomposed.png", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQo_N0r7V2sjYAALIC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoi (truncated) 00:39:03.396 [info] GET /apple-touch-icon.png 00:39:03.399 [debug] QUERY OK source="settings" db=0.2ms queue=0.3ms idle=838.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:03.399 [debug] QUERY OK source="settings" db=0.1ms queue=0.2ms idle=32.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:03.399 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:39:03.400 [error] #PID<0.7870.0> running PinchflatWeb.Endpoint (connection #PID<0.7868.0>, stream id 2) terminated Server: 127.0.0.1:64040 (http) Request: GET /apple-touch-icon.png ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /apple-touch-icon (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7868.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/apple-touch-icon.png", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 52432}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Safari" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7870.0>, params: %{}, path_info: ["apple-touch-icon"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "keep-alive"}, {"host", "127.0.0.1:64040"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Safari"} ], request_path: "/apple-touch-icon.png", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQo_PdzILO5n8AACUD"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7868.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/apple-touch-icon.png", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 52432}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Safari" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /apple-touch-icon (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7868.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/apple-touch-icon.png", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 52432}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Safari" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7870.0>, params: %{}, path_info: ["apple-touch-icon"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "keep-alive"}, {"host", "127.0.0.1:64040"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Safari"} ], request_path: "/apple-touch-icon.png", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQo_PdzILO5n8AACUD"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1] (truncated) 00:39:04.177 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:08.085 [info] GET /flat; 00:39:08.086 [debug] QUERY OK source="settings" db=0.2ms idle=1163.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:08.086 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1163.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:08.086 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:39:08.087 [error] #PID<0.7871.0> running PinchflatWeb.Endpoint (connection #PID<0.7865.0>, stream id 3) terminated Server: 127.0.0.1:64040 (http) Request: GET /flat; ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat; (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7865.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat;", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 33420}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7871.0>, params: %{}, path_info: ["flat;"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "keep-alive"}, {"host", "127.0.0.1:64040"}, {"priority", "u=0, i"}, {"sec-fetch-dest", "document"}, {"sec-fetch-mode", "navigate"}, {"sec-fetch-site", "none"}, {"upgrade-insecure-requests", "1"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15"} ], request_path: "/flat;", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQpQtbVE1TjQwAALJC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7865.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat;", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 33420}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat; (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7865.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat;", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 33420}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7871.0>, params: %{}, path_info: ["flat;"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, {"accept-encoding", "gzip (truncated) 00:39:08.992 [info] GET / 00:39:08.992 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 00:39:08.993 [debug] QUERY OK source="settings" db=0.1ms idle=1070.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:08.998 [debug] QUERY OK source="media_profiles" db=5.3ms idle=906.9ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 00:39:09.001 [debug] QUERY OK source="sources" db=2.8ms idle=912.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 00:39:09.002 [debug] QUERY OK source="media_items" db=0.1ms idle=426.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:09.002 [debug] QUERY OK source="media_items" db=0.1ms idle=79.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:09.002 [debug] QUERY OK source="settings" db=0.0ms idle=9.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:09.002 [debug] QUERY OK source="settings" db=0.1ms idle=4.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:09.003 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:09.004 [debug] QUERY OK source="tasks" db=0.1ms idle=2.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:39:09.004 [debug] QUERY OK source="media_items" db=0.1ms idle=2.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:09.005 [debug] QUERY OK source="media_items" db=0.3ms idle=2.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:09.005 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=2.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:09.007 [debug] QUERY OK source="media_items" db=0.2ms idle=4.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:39:09.008 [debug] QUERY OK source="media_items" db=0.4ms idle=3.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:09.008 [debug] QUERY OK source="sources" db=0.1ms queue=0.1ms idle=3.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:09.009 [info] Sent 200 in 17ms 00:39:09.071 [info] CONNECTED TO Phoenix.LiveView.Socket in 22µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "HHJhIUkWfz0HUhYtc1VUGDwnMycJNy04MAWrz_9lDebG0f6aPIxa9VnA", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://127.0.0.1:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://127.0.0.1:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:39:09.100 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "downloaded"} 00:39:09.101 [debug] QUERY OK source="media_items" db=0.2ms idle=95.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:09.102 [debug] QUERY OK source="media_items" db=0.5ms idle=95.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:09.102 [debug] QUERY OK source="sources" db=0.3ms idle=94.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:09.102 [debug] Replied in 2ms 00:39:09.105 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "pending"} 00:39:09.105 [debug] QUERY OK source="media_items" db=0.1ms idle=97.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:39:09.106 [debug] QUERY OK source="media_items" db=0.4ms idle=97.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:09.107 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=5.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:09.107 [debug] Replied in 1ms 00:39:09.108 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:39:09.109 [debug] QUERY OK source="tasks" db=0.2ms idle=6.7ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:39:09.109 [debug] Replied in 599µs 00:39:09.109 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:39:09.109 [debug] Replied in 63µs 00:39:26.947 [info] GET / 00:39:26.947 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 00:39:26.948 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=338.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:26.949 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=27.6ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 00:39:26.949 [debug] QUERY OK source="sources" db=0.2ms idle=28.4ms SELECT count(s0."id") FROM "sources" AS s0 [] 00:39:26.950 [debug] QUERY OK source="media_items" db=0.2ms queue=0.2ms idle=28.8ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:26.950 [debug] QUERY OK source="media_items" db=0.0ms queue=0.1ms idle=29.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:26.951 [debug] QUERY OK source="settings" db=0.2ms idle=2.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:26.951 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=2.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:26.953 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=2.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:26.955 [debug] QUERY OK source="tasks" db=0.4ms queue=0.1ms idle=4.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:39:26.956 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=4.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:26.957 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=4.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:26.957 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=5.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:26.960 [debug] QUERY OK source="media_items" db=0.2ms idle=7.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:39:26.961 [debug] QUERY OK source="media_items" db=0.5ms idle=5.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:26.962 [debug] QUERY OK source="sources" db=0.4ms queue=0.4ms idle=5.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:26.964 [info] Sent 200 in 17ms 00:39:26.986 [info] CONNECTED TO Phoenix.LiveView.Socket in 24µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "FGdmZAILHydwUUAdM1UvVFk_fARRGDlIETP71BYv3f4wpfM-5Q7Bayz1", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://127.0.0.1:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://127.0.0.1:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:39:26.993 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "downloaded"} 00:39:26.994 [debug] QUERY OK source="media_items" db=0.2ms idle=36.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:26.995 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=36.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:26.995 [debug] QUERY OK source="sources" db=0.2ms idle=34.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:26.995 [debug] Replied in 1ms 00:39:26.998 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "pending"} 00:39:26.998 [debug] QUERY OK source="media_items" db=0.2ms idle=36.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:39:26.999 [debug] QUERY OK source="media_items" db=0.4ms idle=35.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:26.999 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=5.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:26.999 [debug] Replied in 1ms 00:39:27.001 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:39:27.001 [debug] QUERY OK source="tasks" db=0.2ms idle=6.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:39:27.001 [debug] Replied in 609µs 00:39:27.002 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:39:27.002 [debug] Replied in 79µs 00:39:29.667 [info] GET /flat; 00:39:29.668 [debug] QUERY OK source="settings" db=0.3ms idle=746.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:29.668 [debug] QUERY OK source="settings" db=0.1ms idle=746.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:29.668 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:39:29.669 [error] #PID<0.7900.0> running PinchflatWeb.Endpoint (connection #PID<0.7890.0>, stream id 2) terminated Server: 127.0.0.1:64040 (http) Request: GET /flat; ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat; (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7890.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat;", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 23023}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU" }, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7900.0>, params: %{}, path_info: ["flat;"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU" }, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "keep-alive"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU"}, {"host", "127.0.0.1:64040"}, {"priority", "u=0, i"}, {"sec-fetch-dest", "document"}, {"sec-fetch-mode", "navigate"}, {"sec-fetch-site", "none"}, {"upgrade-insecure-requests", "1"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15"} ], request_path: "/flat;", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQqhHOo7kNoGIAALTC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7890.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat;", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 23023}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat; (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7890.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat;", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 23023}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => " (truncated) 00:39:31.389 [info] GET /flat 00:39:31.389 [debug] QUERY OK source="settings" db=0.1ms idle=771.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:31.390 [debug] QUERY OK source="settings" db=0.2ms idle=468.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:31.390 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:39:31.390 [error] #PID<0.7902.0> running PinchflatWeb.Endpoint (connection #PID<0.7892.0>, stream id 3) terminated Server: 127.0.0.1:64040 (http) Request: GET /flat ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7892.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 38793}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU" }, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7902.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU" }, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "keep-alive"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU"}, {"host", "127.0.0.1:64040"}, {"priority", "u=0, i"}, {"sec-fetch-dest", "document"}, {"sec-fetch-mode", "navigate"}, {"sec-fetch-site", "none"}, {"upgrade-insecure-requests", "1"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15"} ], request_path: "/flat", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQqnhwktos--oAALUC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7892.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 38793}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7892.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 38793}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9", "connection" => "keep-alive", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYUTM2UzNJRlFDN3RqQzNieWxuS0YwYUN5.Jkm69BTDhoSKFpFL8QIxhjJe-s1_OWD3xsIDDH0tERU", "host" => "127.0.0.1:64040", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY. (truncated) 00:39:33.650 [info] CONNECTED TO Phoenix.LiveView.Socket in 22µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "FGdmZAILHydwUUAdM1UvVFk_fARRGDlIETP71BYv3f4wpfM-5Q7Bayz1", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://127.0.0.1:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://127.0.0.1:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:39:33.660 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "downloaded"} 00:39:33.661 [debug] QUERY OK source="media_items" db=0.3ms idle=739.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:33.662 [debug] QUERY OK source="media_items" db=1.1ms queue=0.1ms idle=739.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:33.663 [debug] QUERY OK source="sources" db=0.2ms idle=741.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:33.663 [debug] Replied in 3ms 00:39:33.666 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "pending"} 00:39:33.667 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=745.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:39:33.668 [debug] QUERY OK source="media_items" db=0.7ms idle=43.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:33.669 [debug] QUERY OK source="sources" db=0.4ms queue=0.3ms idle=7.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:33.669 [debug] Replied in 3ms 00:39:33.671 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:39:33.672 [debug] QUERY OK source="tasks" db=0.5ms idle=9.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:39:33.672 [debug] Replied in 1ms 00:39:33.674 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:39:33.674 [debug] Replied in 120µs 00:39:34.178 [info] {"source":"oban","duration":777,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:35.777 [info] GET / 00:39:35.777 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 00:39:35.779 [debug] QUERY OK source="settings" db=1.1ms idle=1152.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:35.780 [debug] QUERY OK source="media_profiles" db=0.2ms idle=858.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 00:39:35.780 [debug] QUERY OK source="sources" db=0.1ms queue=0.2ms idle=858.5ms SELECT count(s0."id") FROM "sources" AS s0 [] 00:39:35.781 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=859.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:35.781 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=153.2ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:35.782 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=2.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:35.783 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=2.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:35.784 [debug] QUERY OK source="settings" db=0.6ms idle=3.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:35.785 [debug] QUERY OK source="tasks" db=0.2ms queue=0.1ms idle=4.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:39:35.787 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=5.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:35.788 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=5.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:35.789 [debug] QUERY OK source="sources" db=0.5ms idle=5.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:35.791 [debug] QUERY OK source="media_items" db=0.3ms idle=6.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:39:35.791 [debug] QUERY OK source="media_items" db=0.4ms idle=5.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:35.792 [debug] QUERY OK source="sources" db=0.3ms idle=4.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:35.793 [info] Sent 200 in 16ms 00:39:35.819 [info] CONNECTED TO Phoenix.LiveView.Socket in 25µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "aH9MHkYnDzMkYRpTK1gQEC09HAJHLQgA9LzMunIbgVn9hkriASWDwLKy", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://127.0.0.1:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://127.0.0.1:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:39:35.830 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "downloaded"} 00:39:35.831 [debug] QUERY OK source="media_items" db=0.2ms idle=42.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:35.832 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms idle=42.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:35.833 [debug] QUERY OK source="sources" db=0.2ms idle=41.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:35.833 [debug] Replied in 2ms 00:39:35.835 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "pending"} 00:39:35.836 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=43.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:39:35.836 [debug] QUERY OK source="media_items" db=0.4ms idle=43.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:35.837 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=5.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:35.837 [debug] Replied in 1ms 00:39:35.838 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:39:35.839 [debug] QUERY OK source="tasks" db=0.1ms idle=6.6ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:39:35.839 [debug] Replied in 608µs 00:39:35.840 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:39:35.840 [debug] Replied in 87µs 00:39:58.102 [info] GET / 00:39:58.102 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 00:39:58.103 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1182.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:58.104 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1183.6ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 00:39:58.104 [debug] QUERY OK source="sources" db=0.0ms idle=1183.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 00:39:58.104 [debug] QUERY OK source="media_items" db=0.2ms idle=1184.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:58.105 [debug] QUERY OK source="media_items" db=0.4ms queue=0.2ms idle=434.9ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:58.106 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=2.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:58.107 [debug] QUERY OK source="settings" db=0.4ms idle=2.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:58.108 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=3.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:39:58.109 [debug] QUERY OK source="tasks" db=0.2ms idle=4.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:39:58.110 [debug] QUERY OK source="media_items" db=0.2ms idle=4.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:58.111 [debug] QUERY OK source="media_items" db=0.6ms idle=3.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:58.112 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=4.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:58.114 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=5.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:39:58.115 [debug] QUERY OK source="media_items" db=0.7ms idle=4.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:58.115 [debug] QUERY OK source="sources" db=0.1ms idle=4.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:58.116 [info] Sent 200 in 14ms 00:39:58.134 [info] CONNECTED TO Phoenix.LiveView.Socket in 23µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "PF1FJFd9AjcbdUctDwANFQIYJShvNQEAmnswd4DfXB3GL3olnvnn_TBy", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://127.0.0.1:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://127.0.0.1:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:39:58.142 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "downloaded"} 00:39:58.142 [debug] QUERY OK source="media_items" db=0.2ms idle=30.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:39:58.143 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=30.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:58.143 [debug] QUERY OK source="sources" db=0.2ms idle=29.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:58.143 [debug] Replied in 1ms 00:39:58.146 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "pending"} 00:39:58.147 [debug] QUERY OK source="media_items" db=0.2ms idle=31.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:39:58.148 [debug] QUERY OK source="media_items" db=0.4ms idle=31.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:39:58.148 [debug] QUERY OK source="sources" db=0.3ms idle=5.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:39:58.148 [debug] Replied in 1ms 00:39:58.149 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:39:58.150 [debug] QUERY OK source="tasks" db=0.1ms idle=6.9ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:39:58.150 [debug] Replied in 537µs 00:39:58.150 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:39:58.151 [debug] Replied in 91µs 00:40:00.598 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:40:04.179 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:34.180 [info] {"source":"oban","duration":1094,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:00.598 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:41:04.180 [info] {"source":"oban","duration":740,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:34.257 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:00.673 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:42:04.259 [info] {"source":"oban","duration":1061,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:34.258 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:51.572 [info] GET /flat/ 00:42:51.573 [debug] QUERY OK source="settings" db=0.4ms idle=1581.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:42:51.574 [debug] QUERY OK source="settings" db=0.2ms idle=1582.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:42:51.574 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:42:51.574 [error] #PID<0.7945.0> running PinchflatWeb.Endpoint (connection #PID<0.7944.0>, stream id 1) terminated Server: wdm9.m1dg9r.org:80 (http) Request: GET /flat/ ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7944.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/flat/", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 38822}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "upgrade", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "wdm9.m1dg9r.org", method: "GET", owner: #PID<0.7945.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, {"accept-encoding", "gzip, deflate, br"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "upgrade"}, {"host", "wdm9.m1dg9r.org"}, {"priority", "u=0, i"}, {"sec-fetch-dest", "document"}, {"sec-fetch-mode", "navigate"}, {"sec-fetch-site", "none"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15"}, {"x-forwarded-for", "149.74.236.42"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "149.74.236.42"} ], request_path: "/flat/", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQ2RQMi4sv0X4AALiC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7944.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/flat/", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 38822}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "upgrade", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7944.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/flat/", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 38822}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "upgrade", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "wdm9.m1dg9r.org", method: "GET", owner: #PID<0.7945.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, (truncated) 00:43:00.673 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:43:04.260 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:43:11.920 [info] HEAD /flat 00:43:11.921 [debug] QUERY OK source="settings" db=0.2ms idle=1930.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:43:11.921 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1930.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:43:11.921 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:43:11.922 [error] #PID<0.7949.0> running PinchflatWeb.Endpoint (connection #PID<0.7948.0>, stream id 1) terminated Server: 127.0.0.1:64040 (http) Request: HEAD /flat ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7948.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 23700}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7949.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "127.0.0.1:64040"}, {"user-agent", "curl/8.7.1"} ], request_path: "/flat", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQ3dDsbGSr2JgAAYpB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7948.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 23700}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7948.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 23700}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7949.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "127.0.0.1:64040"}, {"user-agent", "curl/8.7.1"} ], request_path: "/flat", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQ3dDsbGSr2JgAAYpB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, layout: {PinchflatWeb.Layouts, "app"} }, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7949.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :phoenix_template => "404.html", :phoenix_view => %{_: PinchflatWeb.ErrorHTML}, :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_format => "html", :phoenix_layout => %{_: {PinchflatWeb.Layouts, :app}}, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_root_l (truncated) 00:43:32.628 [info] HEAD / 00:43:32.628 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 00:43:32.629 [debug] QUERY OK source="settings" db=0.4ms idle=1639.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:43:32.629 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1476.6ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 00:43:32.630 [debug] QUERY OK source="sources" db=0.0ms idle=640.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 00:43:32.630 [debug] QUERY OK source="media_items" db=0.1ms idle=640.3ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:43:32.630 [debug] QUERY OK source="media_items" db=0.0ms queue=0.1ms idle=476.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:43:32.631 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:43:32.631 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:43:32.633 [debug] QUERY OK source="settings" db=0.4ms idle=2.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:43:32.634 [debug] QUERY OK source="tasks" db=0.3ms idle=3.7ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:43:32.635 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=4.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:43:32.635 [debug] QUERY OK source="media_items" db=0.4ms idle=3.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:43:32.636 [debug] QUERY OK source="sources" db=0.4ms idle=4.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:43:32.640 [debug] QUERY OK source="media_items" db=0.7ms queue=0.1ms idle=6.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:43:32.641 [debug] QUERY OK source="media_items" db=0.8ms idle=5.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:43:32.641 [debug] QUERY OK source="sources" db=0.2ms idle=6.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:43:32.643 [info] Sent 200 in 15ms 00:43:34.261 [info] {"source":"oban","duration":1250,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:44:00.671 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:44:04.261 [info] {"source":"oban","duration":842,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:44:34.264 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:00.671 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:45:01.026 [info] GET /flat/ 00:45:01.027 [debug] QUERY OK source="settings" db=0.3ms idle=1039.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:45:01.027 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1040.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:45:01.027 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:45:01.028 [error] #PID<0.7960.0> running PinchflatWeb.Endpoint (connection #PID<0.7959.0>, stream id 1) terminated Server: wdm9.m1dg9r.org:80 (http) Request: GET /flat/ ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7959.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/flat/", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 50552}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "upgrade", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "wdm9.m1dg9r.org", method: "GET", owner: #PID<0.7960.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, {"accept-encoding", "gzip, deflate, br"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "upgrade"}, {"host", "wdm9.m1dg9r.org"}, {"priority", "u=0, i"}, {"sec-fetch-dest", "document"}, {"sec-fetch-mode", "navigate"}, {"sec-fetch-site", "none"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15"}, {"x-forwarded-for", "149.74.236.42"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "149.74.236.42"} ], request_path: "/flat/", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtQ9zhd6ana6iAAALqC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7959.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/flat/", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 50552}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "upgrade", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7959.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/flat/", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 50552}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "upgrade", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "wdm9.m1dg9r.org", method: "GET", owner: #PID<0.7960.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, (truncated) 00:45:04.264 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:34.265 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:39.474 [info] GET /flat/ 00:45:39.475 [debug] QUERY OK source="settings" db=0.4ms idle=1489.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:45:39.476 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1490.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:45:39.476 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:45:39.476 [error] #PID<0.7964.0> running PinchflatWeb.Endpoint (connection #PID<0.7963.0>, stream id 1) terminated Server: wdm9.m1dg9r.org:80 (http) Request: GET /flat/ ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7963.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/flat/", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 60578}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "upgrade", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "wdm9.m1dg9r.org", method: "GET", owner: #PID<0.7964.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, {"accept-encoding", "gzip, deflate, br"}, {"accept-language", "en-US,en;q=0.9"}, {"connection", "upgrade"}, {"host", "wdm9.m1dg9r.org"}, {"priority", "u=0, i"}, {"sec-fetch-dest", "document"}, {"sec-fetch-mode", "navigate"}, {"sec-fetch-site", "none"}, {"upgrade-insecure-requests", "1"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15"}, {"x-forwarded-for", "149.74.236.42"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "149.74.236.42"} ], request_path: "/flat/", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtRACwfFD3m3XUAALsC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7963.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/flat/", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 60578}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "upgrade", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7963.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/flat/", host: "wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 60578}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "accept-encoding" => "gzip, deflate, br", "accept-language" => "en-US,en;q=0.9", "connection" => "upgrade", "host" => "wdm9.m1dg9r.org", "priority" => "u=0, i", "sec-fetch-dest" => "document", "sec-fetch-mode" => "navigate", "sec-fetch-site" => "none", "upgrade-insecure-requests" => "1", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.1 Safari/605.1.15", "x-forwarded-for" => "149.74.236.42", "x-forwarded-proto" => "https", "x-real-ip" => "149.74.236.42" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "wdm9.m1dg9r.org", method: "GET", owner: #PID<0.7964.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/ (truncated) 00:45:51.625 [info] HEAD / 00:45:51.625 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 00:45:51.626 [debug] QUERY OK source="settings" db=0.2ms idle=1639.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:45:51.626 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1194.2ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 00:45:51.626 [debug] QUERY OK source="sources" db=0.1ms idle=640.4ms SELECT count(s0."id") FROM "sources" AS s0 [] 00:45:51.626 [debug] QUERY OK source="media_items" db=0.0ms idle=640.7ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:45:51.627 [debug] QUERY OK source="media_items" db=0.1ms idle=193.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:45:51.627 [debug] QUERY OK source="settings" db=0.3ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:45:51.628 [debug] QUERY OK source="settings" db=0.2ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:45:51.629 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:45:51.630 [debug] QUERY OK source="tasks" db=0.1ms idle=3.5ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:45:51.631 [debug] QUERY OK source="media_items" db=0.1ms idle=3.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:45:51.631 [debug] QUERY OK source="media_items" db=0.3ms idle=3.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:45:51.632 [debug] QUERY OK source="sources" db=0.4ms idle=3.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:45:51.634 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=5.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:45:51.635 [debug] QUERY OK source="media_items" db=0.4ms idle=4.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:45:51.636 [debug] QUERY OK source="sources" db=0.4ms idle=4.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:45:51.637 [info] Sent 200 in 11ms 00:45:54.431 [info] HEAD /flat 00:45:54.432 [debug] QUERY OK source="settings" db=0.1ms idle=1447.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:45:54.432 [debug] QUERY OK source="settings" db=0.2ms idle=1447.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:45:54.432 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:45:54.432 [error] #PID<0.7970.0> running PinchflatWeb.Endpoint (connection #PID<0.7969.0>, stream id 1) terminated Server: 127.0.0.1:64040 (http) Request: HEAD /flat ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7969.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 19564}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7970.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "127.0.0.1:64040"}, {"user-agent", "curl/8.7.1"} ], request_path: "/flat", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtRA6e0vnjh0LwAAC1D"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7969.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 19564}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7969.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 19564}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7970.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "127.0.0.1:64040"}, {"user-agent", "curl/8.7.1"} ], request_path: "/flat", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtRA6e0vnjh0LwAAC1D"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, layout: {PinchflatWeb.Layouts, "app"} }, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7970.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :phoenix_template => "404.html", :phoenix_view => %{_: PinchflatWeb.ErrorHTML}, :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_format => "html", :phoenix_layout => %{_: {PinchflatWeb.Layouts, :app}}, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_root_l (truncated) 00:46:00.670 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:46:04.266 [info] {"source":"oban","duration":809,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:46:34.267 [info] {"source":"oban","duration":896,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:46:47.855 [info] HEAD /flat 00:46:47.856 [debug] QUERY OK source="settings" db=0.3ms idle=1871.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:46:47.856 [debug] QUERY OK source="settings" db=0.1ms idle=1872.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:46:47.856 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:46:47.857 [error] #PID<0.7977.0> running PinchflatWeb.Endpoint (connection #PID<0.7976.0>, stream id 1) terminated Server: 127.0.0.1:64040 (http) Request: HEAD /flat ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7976.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 49948}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7977.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "127.0.0.1:64040"}, {"user-agent", "curl/8.7.1"} ], request_path: "/flat", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtREBgS-N2JT2oAALwC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7976.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 49948}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7976.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 49948}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7977.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "127.0.0.1:64040"}, {"user-agent", "curl/8.7.1"} ], request_path: "/flat", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtREBgS-N2JT2oAALwC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, layout: {PinchflatWeb.Layouts, "app"} }, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7977.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :phoenix_template => "404.html", :phoenix_view => %{_: PinchflatWeb.ErrorHTML}, :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_format => "html", :phoenix_layout => %{_: {PinchflatWeb.Layouts, :app}}, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_root_l (truncated) 00:47:00.670 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:47:04.268 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:47:34.268 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:48:00.670 [info] {"source":"oban","duration":230,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:48:04.269 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:48:20.801 [info] HEAD /flat 00:48:20.802 [debug] QUERY OK source="settings" db=0.2ms idle=821.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:48:20.803 [debug] QUERY OK source="settings" db=0.2ms idle=821.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:48:20.803 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 00:48:20.804 [error] #PID<0.7985.0> running PinchflatWeb.Endpoint (connection #PID<0.7984.0>, stream id 1) terminated Server: 127.0.0.1:64040 (http) Request: HEAD /flat ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7984.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 62399}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7985.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "127.0.0.1:64040"}, {"user-agent", "curl/8.7.1"} ], request_path: "/flat", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtRJbuKVtQdLakAAYsB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7984.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 62399}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /flat (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.7984.0>, port: 64040, scheme: "http", version: :"HTTP/1.1", path: "/flat", host: "127.0.0.1", peer: {{172, 66, 169, 148}, 62399}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "127.0.0.1:64040", "user-agent" => "curl/8.7.1" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7985.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://127.0.0.1:64040", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "127.0.0.1:64040"}, {"user-agent", "curl/8.7.1"} ], request_path: "/flat", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtRJbuKVtQdLakAAYsB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, layout: {PinchflatWeb.Layouts, "app"} }, body_params: %{}, cookies: %{}, halted: false, host: "127.0.0.1", method: "GET", owner: #PID<0.7985.0>, params: %{}, path_info: ["flat"], path_params: %{}, port: 64040, private: %{ PinchflatWeb.Router => [], :phoenix_template => "404.html", :phoenix_view => %{_: PinchflatWeb.ErrorHTML}, :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_format => "html", :phoenix_layout => %{_: {PinchflatWeb.Layouts, :app}}, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_root_l (truncated) 00:48:34.271 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:49:00.668 [info] {"source":"oban","duration":285,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:49:04.272 [info] {"source":"oban","duration":1081,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:49:06.360 [info] GET / 00:49:06.361 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 00:49:06.362 [debug] QUERY OK source="settings" db=0.3ms queue=0.2ms idle=541.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:06.363 [debug] QUERY OK source="media_profiles" db=0.7ms queue=0.3ms idle=383.9ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 00:49:06.364 [debug] QUERY OK source="sources" db=0.3ms queue=0.3ms idle=385.2ms SELECT count(s0."id") FROM "sources" AS s0 [] 00:49:06.365 [debug] QUERY OK source="media_items" db=0.1ms idle=386.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:49:06.365 [debug] QUERY OK source="media_items" db=0.2ms queue=0.3ms idle=386.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:49:06.366 [debug] QUERY OK source="settings" db=0.5ms idle=3.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:06.368 [debug] QUERY OK source="settings" db=0.7ms queue=0.4ms idle=3.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:06.369 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=4.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:06.371 [debug] QUERY OK source="tasks" db=0.3ms idle=5.5ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:49:06.372 [debug] QUERY OK source="media_items" db=0.3ms queue=0.2ms idle=6.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:49:06.372 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=5.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:49:06.373 [debug] QUERY OK source="sources" db=0.3ms idle=5.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:49:06.377 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=6.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:49:06.378 [debug] QUERY OK source="media_items" db=0.6ms queue=0.2ms idle=6.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:49:06.378 [debug] QUERY OK source="sources" db=0.3ms queue=0.2ms idle=5.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:49:06.380 [info] Sent 200 in 19ms 00:49:06.425 [info] CONNECTED TO Phoenix.LiveView.Socket in 31µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "G19MYHUzAzYvdDYPAmQDVDkiCndWBAUNJlz3FzEglCBeAWa-ULA1feFt", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://127.0.0.1:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://127.0.0.1:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:49:06.462 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "downloaded"} 00:49:06.463 [debug] QUERY OK source="media_items" db=0.3ms idle=89.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:49:06.464 [debug] QUERY OK source="media_items" db=0.7ms idle=89.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:49:06.465 [debug] QUERY OK source="sources" db=0.3ms idle=87.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:49:06.465 [debug] Replied in 3ms 00:49:06.469 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "media_state" => "pending"} 00:49:06.470 [debug] QUERY OK source="media_items" db=0.7ms idle=91.7ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:49:06.472 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms idle=92.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:49:06.473 [debug] QUERY OK source="sources" db=0.3ms queue=0.3ms idle=9.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:49:06.473 [debug] Replied in 3ms 00:49:06.476 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:49:06.477 [debug] QUERY OK source="tasks" db=0.3ms idle=12.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:49:06.477 [debug] Replied in 1ms 00:49:06.478 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:49:06.478 [debug] Replied in 226µs 00:49:09.922 [info] GET /settings 00:49:09.922 [debug] Processing with PinchflatWeb.Settings.SettingController.show/2 Parameters: %{} Pipelines: [:browser] 00:49:09.922 [debug] QUERY OK source="settings" db=0.2ms idle=1944.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:09.923 [debug] QUERY OK source="settings" db=0.2ms idle=1944.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:09.924 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1945.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:09.925 [debug] QUERY OK source="settings" db=0.3ms idle=1097.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:09.927 [info] Sent 200 in 5ms 00:49:09.954 [info] CONNECTED TO Phoenix.LiveView.Socket in 35µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "YV53FngWFAAVBxopFmwgCAQXfih7DgYT0mAEK_RQV0nCU_Bqhy5nKoEj", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://127.0.0.1:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://127.0.0.1:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:49:09.971 [debug] MOUNT Pinchflat.Settings.AppriseServerLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy", "value" => nil} 00:49:09.971 [debug] Replied in 267µs 00:49:09.973 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:49:09.973 [debug] Replied in 178µs 00:49:14.686 [info] GET /app_info 00:49:14.686 [debug] Processing with PinchflatWeb.Settings.SettingController.app_info/2 Parameters: %{} Pipelines: [:browser] 00:49:14.687 [debug] QUERY OK source="settings" db=0.6ms idle=1708.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:14.688 [debug] QUERY OK source="settings" db=0.3ms idle=1709.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:14.689 [debug] QUERY OK source="settings" db=0.3ms idle=1710.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:14.690 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1711.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:14.691 [debug] QUERY OK source="settings" db=0.0ms idle=850.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:49:14.692 [info] Sent 200 in 5ms 00:49:14.715 [info] CONNECTED TO Phoenix.LiveView.Socket in 33µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "DkZzCh4rKSJ2dBAIBWlQFCsWKRwBBHdM_uEY-bos5CdbFZ2mGxbZ1e45", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://127.0.0.1:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://127.0.0.1:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:49:14.725 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "Q36S3IFQC7tjC3bylnKF0aCy"} 00:49:14.725 [debug] Replied in 130µs 00:49:34.273 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:50:00.668 [info] {"source":"oban","duration":181,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:50:04.274 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:50:34.275 [info] {"source":"oban","duration":489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:51:00.667 [info] {"source":"oban","duration":211,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:51:04.275 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:51:34.277 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:52:00.666 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:52:04.278 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:52:34.278 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:53:00.666 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:53:04.280 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:53:34.280 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:54:00.666 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:54:04.282 [info] {"source":"oban","duration":1070,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:54:34.283 [info] {"source":"oban","duration":1055,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:55:00.666 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:55:04.283 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:55:34.284 [info] {"source":"oban","duration":683,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:56:00.666 [info] {"source":"oban","duration":461,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:56:04.285 [info] {"source":"oban","duration":908,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:56:34.289 [info] {"source":"oban","duration":1382,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:57:00.666 [info] {"source":"oban","duration":197,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:57:04.289 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:57:34.290 [info] {"source":"oban","duration":879,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:58:00.665 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:58:04.292 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:58:34.292 [info] {"source":"oban","duration":858,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:59:00.664 [info] {"source":"oban","duration":408,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:59:04.293 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:59:21.265 [info] GET / 00:59:21.265 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 00:59:21.266 [debug] QUERY OK source="settings" db=0.3ms idle=1302.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:21.266 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=1303.5ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 00:59:21.267 [debug] QUERY OK source="sources" db=0.1ms idle=1304.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 00:59:21.267 [debug] QUERY OK source="media_items" db=0.1ms idle=1211.7ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:21.267 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=208.1ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:21.268 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:21.269 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:21.270 [debug] QUERY OK source="settings" db=0.2ms idle=2.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:21.271 [debug] QUERY OK source="tasks" db=0.4ms idle=3.7ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:59:21.272 [debug] QUERY OK source="media_items" db=0.4ms idle=4.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:21.274 [debug] QUERY OK source="media_items" db=0.6ms idle=4.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:59:21.275 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=5.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:21.278 [debug] QUERY OK source="media_items" db=0.4ms idle=7.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:59:21.279 [debug] QUERY OK source="media_items" db=1.1ms idle=6.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:59:21.280 [debug] QUERY OK source="sources" db=0.3ms queue=0.3ms idle=7.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:21.282 [info] Sent 200 in 16ms 00:59:34.294 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:59:35.352 [info] GET / 00:59:35.352 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 00:59:35.353 [debug] QUERY OK source="settings" db=0.5ms idle=1058.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:35.354 [debug] QUERY OK source="media_profiles" db=0.3ms idle=391.4ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 00:59:35.354 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=391.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 00:59:35.355 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=392.5ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:35.355 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=265.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:35.356 [debug] QUERY OK source="settings" db=0.5ms queue=0.3ms idle=2.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:35.357 [debug] QUERY OK source="settings" db=0.1ms queue=0.2ms idle=2.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:35.358 [debug] QUERY OK source="settings" db=0.3ms idle=3.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:35.360 [debug] QUERY OK source="tasks" db=0.4ms queue=0.1ms idle=4.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:59:35.360 [debug] QUERY OK source="media_items" db=0.1ms idle=4.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:35.361 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=4.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:59:35.362 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=4.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:35.365 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=6.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:59:35.366 [debug] QUERY OK source="media_items" db=0.7ms idle=5.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:59:35.367 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=6.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:35.368 [info] Sent 200 in 16ms 00:59:36.004 [info] CONNECTED TO Phoenix.LiveView.Socket in 29µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "IAgdF2cVFyM8PFBEDx9PQwUPPHAaBTI2bBKdTDOOLk60VW891jn2xRxa", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:59:36.008 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW", "media_state" => "downloaded"} 00:59:36.009 [debug] QUERY OK source="media_items" db=0.3ms idle=647.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:36.009 [debug] QUERY OK source="media_items" db=0.4ms idle=646.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:59:36.010 [debug] QUERY OK source="sources" db=0.3ms idle=644.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:36.010 [debug] Replied in 2ms 00:59:36.013 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW", "media_state" => "pending"} 00:59:36.014 [debug] QUERY OK source="media_items" db=0.3ms idle=647.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:59:36.015 [debug] QUERY OK source="media_items" db=0.4ms idle=647.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:59:36.015 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=6.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:36.015 [debug] Replied in 2ms 00:59:36.017 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW"} 00:59:36.018 [debug] QUERY OK source="tasks" db=0.2ms idle=8.1ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:59:36.018 [debug] Replied in 776µs 00:59:36.019 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW"} 00:59:36.019 [debug] Replied in 126µs 00:59:37.455 [info] GET /sources 00:59:37.455 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 00:59:37.455 [debug] QUERY OK source="settings" db=0.1ms idle=1440.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:37.456 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1440.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:37.457 [debug] QUERY OK source="settings" db=0.2ms idle=1438.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:37.459 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=1366.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:37.460 [debug] QUERY OK source="settings" db=0.5ms idle=365.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:37.461 [debug] QUERY OK source="sources" db=0.6ms idle=4.7ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 00:59:37.463 [debug] QUERY OK source="sources" db=1.7ms idle=5.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 00:59:37.465 [info] Sent 200 in 10ms 00:59:37.516 [info] CONNECTED TO Phoenix.LiveView.Socket in 37µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "CisvQF8VHyEHBj9ZOCJPCWYHOA8SLhwVHay3lDGMwQY-aj8sRbjMpyVB", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:59:37.520 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 00:59:37.522 [debug] QUERY OK source="sources" db=0.9ms idle=64.2ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 00:59:37.526 [debug] QUERY OK source="sources" db=2.1ms queue=0.3ms idle=64.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 00:59:37.526 [debug] Replied in 6ms 00:59:37.530 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW"} 00:59:37.530 [debug] Replied in 259µs 00:59:40.473 [info] GET /media_profiles 00:59:40.474 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 00:59:40.475 [debug] QUERY OK source="media_profiles" db=0.8ms idle=1512.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", (SELECT count(ss0."id") AS "result" FROM "sources" AS ss0 WHERE (ss0."media_profile_id" = m0."id")) FROM "media_profiles" AS m0 WHERE (m0."marked_for_deletion_at" IS NULL) ORDER BY m0."name" [] 00:59:40.476 [debug] QUERY OK source="settings" db=0.7ms idle=1513.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:40.477 [debug] QUERY OK source="settings" db=0.6ms queue=0.1ms idle=1514.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:40.479 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=1380.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:40.481 [info] Sent 200 in 7ms 00:59:40.519 [info] GET / 00:59:40.519 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 00:59:40.520 [debug] QUERY OK source="settings" db=0.4ms idle=419.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:40.521 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=45.5ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 00:59:40.522 [debug] QUERY OK source="sources" db=0.7ms idle=45.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 00:59:40.523 [debug] QUERY OK source="media_items" db=0.4ms idle=45.3ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:40.523 [debug] QUERY OK source="media_items" db=0.0ms idle=44.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:40.525 [debug] QUERY OK source="settings" db=1.0ms idle=3.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:40.526 [debug] QUERY OK source="settings" db=0.8ms queue=0.2ms idle=3.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:40.529 [debug] QUERY OK source="settings" db=0.5ms queue=0.3ms idle=5.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:40.530 [info] CONNECTED TO Phoenix.LiveView.Socket in 55µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "LDglOgQ5aCQIejZFGH0AM1UGOg8UAQs9nrsI7h0Hx-P1A5wIachMvVAj", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:59:40.530 [debug] QUERY OK source="tasks" db=0.4ms idle=7.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:59:40.532 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=7.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:40.533 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=7.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:59:40.535 [debug] QUERY OK source="sources" db=0.6ms queue=0.2ms idle=7.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:40.537 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW"} 00:59:40.537 [debug] Replied in 275µs 00:59:40.540 [debug] QUERY OK source="media_items" db=0.7ms queue=0.1ms idle=10.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:59:40.543 [debug] QUERY OK source="media_items" db=1.9ms queue=0.1ms idle=10.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:59:40.545 [debug] QUERY OK source="sources" db=0.7ms queue=0.3ms idle=11.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:40.548 [info] Sent 200 in 29ms 00:59:41.462 [info] CONNECTED TO Phoenix.LiveView.Socket in 22µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "KQUIDBAgIwoYAzVuIDcnAlsLEx8vFDQKFJmnVlKdHGz9VsoL4aWjZWMa", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:59:41.634 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "oOebFLhnPDOWvDHNojDuuCyk", "media_state" => "downloaded"} 00:59:41.634 [debug] QUERY OK source="media_items" db=0.3ms idle=1099.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 00:59:41.635 [debug] QUERY OK source="media_items" db=0.5ms idle=1094.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:59:41.635 [debug] QUERY OK source="sources" db=0.2ms idle=1091.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:41.636 [debug] Replied in 2ms 00:59:41.639 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "oOebFLhnPDOWvDHNojDuuCyk", "media_state" => "pending"} 00:59:41.641 [debug] QUERY OK source="media_items" db=0.5ms idle=1095.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 00:59:41.642 [debug] QUERY OK source="media_items" db=0.8ms idle=539.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 00:59:41.643 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=8.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:41.643 [debug] Replied in 3ms 00:59:41.646 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "oOebFLhnPDOWvDHNojDuuCyk"} 00:59:41.646 [debug] QUERY OK source="tasks" db=0.4ms idle=10.9ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 00:59:41.646 [debug] Replied in 938µs 00:59:41.647 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "oOebFLhnPDOWvDHNojDuuCyk"} 00:59:41.647 [debug] Replied in 116µs 00:59:42.186 [info] GET /media_profiles/1 00:59:42.186 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 00:59:42.187 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.2ms idle=545.8ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 00:59:42.188 [debug] QUERY OK source="sources" db=0.2ms queue=0.2ms idle=545.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."media_profile_id" = ?) ORDER BY s0."custom_name" [1] 00:59:42.189 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=545.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:42.190 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=542.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:42.191 [debug] QUERY OK source="settings" db=0.6ms queue=0.1ms idle=86.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:42.193 [info] Sent 200 in 7ms 00:59:42.251 [info] CONNECTED TO Phoenix.LiveView.Socket in 45µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "CHsFAVgfHh0nYD8QaBIPM2sDNyMWPCUYJ1SrkNFqW7Yd1ZxI_featkoO", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:59:42.262 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW"} 00:59:42.262 [debug] Replied in 353µs 00:59:43.053 [info] GET /sources 00:59:43.053 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 00:59:43.054 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=866.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:43.055 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=866.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:43.056 [debug] QUERY OK source="settings" db=0.3ms idle=866.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:43.058 [debug] QUERY OK source="settings" db=0.6ms queue=0.1ms idle=867.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:43.059 [debug] QUERY OK source="settings" db=0.7ms queue=0.1ms idle=867.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:43.061 [debug] QUERY OK source="sources" db=0.8ms queue=0.2ms idle=5.7ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 00:59:43.064 [debug] QUERY OK source="sources" db=2.0ms queue=0.1ms idle=6.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 00:59:43.066 [info] Sent 200 in 13ms 00:59:43.118 [info] CONNECTED TO Phoenix.LiveView.Socket in 71µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "LRs4R3c-MzQXBiwiPSA1QnU_MAQjOxkboQn4DokXgQJVdhB8AZbFAlSL", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:59:43.122 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 00:59:43.125 [debug] QUERY OK source="sources" db=0.9ms queue=0.1ms idle=66.3ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 00:59:43.128 [debug] QUERY OK source="sources" db=1.6ms idle=66.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 00:59:43.128 [debug] Replied in 5ms 00:59:43.132 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW"} 00:59:43.132 [debug] Replied in 176µs 00:59:45.785 [info] GET /sources/1 00:59:45.786 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 00:59:45.787 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=824.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:45.788 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=825.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 00:59:45.807 [debug] QUERY OK source="tasks" db=18.9ms queue=0.1ms idle=826.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [1, "executing", "available", "scheduled", "retryable"] 00:59:45.808 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=845.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:45.809 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=697.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:45.809 [debug] QUERY OK source="settings" db=0.1ms idle=22.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:45.811 [debug] QUERY OK source="sources" db=0.2ms idle=23.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:45.812 [debug] QUERY OK source="media_items" db=0.2ms idle=4.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 00:59:45.813 [debug] QUERY OK source="media_items" db=0.8ms idle=4.3ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 00:59:45.815 [debug] QUERY OK source="sources" db=0.4ms idle=5.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:45.815 [debug] QUERY OK source="media_items" db=0.1ms idle=5.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 00:59:45.816 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=3.8ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 00:59:45.817 [debug] QUERY OK source="sources" db=0.2ms idle=4.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:45.817 [debug] QUERY OK source="media_items" db=0.2ms idle=3.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 00:59:45.818 [debug] QUERY OK source="media_items" db=0.4ms idle=3.1ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 00:59:45.819 [info] Sent 200 in 33ms 00:59:46.002 [info] CONNECTED TO Phoenix.LiveView.Socket in 47µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "LTodOmIdNwAqDz8iNS0zTUEAPRJbMQcOopKIQLolZXYVleD7ueoP9fMY", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 00:59:46.008 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW", "media_state" => "pending", "source_id" => 1} 00:59:46.009 [debug] QUERY OK source="sources" db=0.4ms idle=193.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:46.009 [debug] QUERY OK source="media_items" db=0.3ms idle=193.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 00:59:46.010 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=192.6ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 00:59:46.010 [debug] Replied in 2ms 00:59:46.012 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW", "media_state" => "downloaded", "source_id" => 1} 00:59:46.013 [debug] QUERY OK source="sources" db=0.7ms idle=195.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:46.014 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=195.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 00:59:46.015 [debug] QUERY OK source="media_items" db=0.6ms idle=5.8ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 00:59:46.015 [debug] Replied in 2ms 00:59:46.017 [debug] MOUNT PinchflatWeb.Sources.MediaItemTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW", "media_state" => "other", "source_id" => 1} 00:59:46.017 [debug] QUERY OK source="sources" db=0.2ms idle=7.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:46.018 [debug] QUERY OK source="media_items" db=0.5ms idle=7.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 00:59:46.020 [debug] QUERY OK source="media_items" db=0.5ms idle=5.5ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 00:59:46.020 [debug] Replied in 3ms 00:59:46.022 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW"} 00:59:46.022 [debug] Replied in 201µs 00:59:56.006 [info] GET /sources 00:59:56.006 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 00:59:56.008 [debug] QUERY OK source="settings" db=0.6ms queue=0.2ms idle=876.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:56.008 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=47.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:56.010 [debug] QUERY OK source="settings" db=0.5ms idle=48.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:56.011 [debug] QUERY OK source="settings" db=0.2ms idle=49.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:56.012 [debug] QUERY OK source="settings" db=0.5ms idle=50.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:56.013 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=4.3ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 00:59:56.015 [debug] QUERY OK source="sources" db=1.3ms queue=0.1ms idle=5.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 00:59:56.017 [info] Sent 200 in 11ms 00:59:58.019 [info] GET /sources/1/edit 00:59:58.020 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 00:59:58.020 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=885.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 00:59:58.021 [debug] QUERY OK source="media_profiles" db=0.2ms idle=59.8ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 00:59:58.021 [debug] QUERY OK source="settings" db=0.1ms idle=60.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:58.022 [debug] QUERY OK source="settings" db=0.5ms idle=60.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:58.023 [debug] QUERY OK source="settings" db=0.3ms idle=61.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 00:59:58.028 [info] Sent 200 in 8ms 01:00:00.663 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:00:04.295 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:00:05.286 [info] GET /sources 01:00:05.286 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 01:00:05.287 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1325.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:00:05.289 [debug] QUERY OK source="settings" db=1.4ms queue=0.2ms idle=1326.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:00:05.290 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1137.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:00:05.293 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=996.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:00:05.293 [debug] QUERY OK source="settings" db=0.2ms idle=136.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:00:05.295 [debug] QUERY OK source="sources" db=0.6ms idle=6.7ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 01:00:05.298 [debug] QUERY OK source="sources" db=2.2ms queue=0.1ms idle=6.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 01:00:05.301 [info] Sent 200 in 15ms 01:00:34.296 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:00:39.020 [info] CONNECTED TO Phoenix.LiveView.Socket in 25µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "CytuEVs9O18qAiM1GHooKlYvHSwpY31mIa8bhlc3ZUEAA2_PbJOnK471", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 01:00:39.053 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 01:00:39.054 [debug] QUERY OK source="sources" db=0.4ms idle=1093.7ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 01:00:39.055 [debug] QUERY OK source="sources" db=0.7ms idle=833.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 01:00:39.055 [debug] Replied in 2ms 01:00:39.056 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW"} 01:00:39.056 [debug] Replied in 86µs 01:00:39.057 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 01:00:39.058 [debug] QUERY OK source="sources" db=0.3ms idle=98.3ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 01:00:39.059 [debug] QUERY OK source="sources" db=0.8ms idle=99.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 01:00:39.059 [debug] Replied in 1ms 01:00:39.060 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW"} 01:00:39.060 [debug] Replied in 108µs 01:00:45.543 [info] GET / 01:00:45.543 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:00:45.543 [debug] QUERY OK source="settings" db=0.1ms idle=583.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:00:45.544 [debug] QUERY OK source="media_profiles" db=0.0ms queue=0.1ms idle=584.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:00:45.544 [debug] QUERY OK source="sources" db=0.0ms idle=584.4ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:00:45.544 [debug] QUERY OK source="media_items" db=0.0ms idle=584.6ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:00:45.545 [debug] QUERY OK source="media_items" db=0.1ms idle=308.9ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:00:45.545 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:00:45.545 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:00:45.546 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:00:45.546 [debug] QUERY OK source="tasks" db=0.1ms idle=1.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:00:45.547 [debug] QUERY OK source="media_items" db=0.1ms idle=2.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:00:45.547 [debug] QUERY OK source="media_items" db=0.2ms idle=2.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:00:45.548 [debug] QUERY OK source="sources" db=0.1ms idle=2.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:00:45.549 [debug] QUERY OK source="media_items" db=0.1ms idle=3.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:00:45.550 [debug] QUERY OK source="media_items" db=0.4ms idle=3.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:00:45.551 [debug] QUERY OK source="sources" db=0.2ms idle=3.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:00:45.552 [info] Sent 200 in 8ms 01:00:46.436 [info] CONNECTED TO Phoenix.LiveView.Socket in 23µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "ZVgjJ1wCailfJxt2OzsQUzghJwohBCoKW9kujQ2h5uXBkIWkJISDFFyr", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 01:00:46.554 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2aHR6SXAjRC4PrG8rhtNgBSx", "media_state" => "downloaded"} 01:00:46.555 [debug] QUERY OK source="media_items" db=0.2ms idle=1006.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:00:46.555 [debug] QUERY OK source="media_items" db=0.5ms idle=1005.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:00:46.556 [debug] QUERY OK source="sources" db=0.1ms idle=1005.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:00:46.556 [debug] Replied in 1ms 01:00:46.558 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2aHR6SXAjRC4PrG8rhtNgBSx", "media_state" => "pending"} 01:00:46.558 [debug] QUERY OK source="media_items" db=0.2ms idle=1007.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:00:46.559 [debug] QUERY OK source="media_items" db=0.3ms idle=320.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:00:46.559 [debug] QUERY OK source="sources" db=0.1ms queue=0.1ms idle=4.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:00:46.559 [debug] Replied in 1ms 01:00:46.561 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2aHR6SXAjRC4PrG8rhtNgBSx"} 01:00:46.561 [debug] QUERY OK source="tasks" db=0.1ms idle=5.5ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:00:46.561 [debug] Replied in 507µs 01:00:46.562 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2aHR6SXAjRC4PrG8rhtNgBSx"} 01:00:46.562 [debug] Replied in 52µs 01:01:00.662 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:01:04.298 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:01:34.299 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:02:00.661 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:02:04.300 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:02:34.301 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:03:00.661 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:03:04.301 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:03:34.302 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:04:00.660 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:04:04.304 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:04:34.355 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:05:00.710 [info] {"source":"oban","duration":294,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:05:04.356 [info] {"source":"oban","duration":1094,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:05:34.356 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:06:00.709 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:06:04.357 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:06:34.357 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:07:00.708 [info] {"source":"oban","duration":422,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:07:04.358 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:07:34.359 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:08:00.706 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:08:04.360 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:08:34.361 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:09:00.706 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:09:04.361 [info] {"source":"oban","duration":792,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:09:34.364 [info] {"source":"oban","duration":1710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:10:00.705 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:10:04.365 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:10:34.366 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:11:00.705 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:11:04.367 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:11:34.367 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:12:00.705 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:12:04.368 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:12:34.369 [info] {"source":"oban","duration":652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:13:00.704 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:13:04.371 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:13:34.371 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:14:00.702 [info] {"source":"oban","duration":220,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:14:04.372 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:14:34.373 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:15:00.699 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:15:04.372 [info] {"source":"oban","duration":721,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:15:34.374 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:16:00.700 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:16:04.377 [info] {"source":"oban","duration":2081,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:16:34.377 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:00.699 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:17:04.377 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:14.307 [info] GET / 01:17:14.308 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:17:14.309 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=330.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:14.309 [debug] QUERY OK source="media_profiles" db=0.0ms queue=0.1ms idle=331.8ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:17:14.309 [debug] QUERY OK source="sources" db=0.1ms idle=332.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:17:14.310 [debug] QUERY OK source="media_items" db=0.2ms idle=332.4ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:14.310 [debug] QUERY OK source="media_items" db=0.1ms idle=48.1ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:14.311 [debug] QUERY OK source="settings" db=0.5ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:14.311 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:14.312 [debug] QUERY OK source="settings" db=0.1ms idle=2.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:14.313 [debug] QUERY OK source="tasks" db=0.4ms queue=0.1ms idle=2.9ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:17:14.314 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=3.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:14.315 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=3.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:17:14.316 [debug] QUERY OK source="sources" db=0.1ms queue=0.1ms idle=4.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:17:14.319 [debug] QUERY OK source="media_items" db=0.4ms idle=6.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:17:14.320 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms idle=5.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:17:14.321 [debug] QUERY OK source="sources" db=0.2ms idle=6.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:17:14.322 [info] Sent 200 in 14ms 01:17:16.502 [info] GET / 01:17:16.502 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:17:16.503 [debug] QUERY OK source="settings" db=0.2ms idle=525.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:16.503 [debug] QUERY OK source="media_profiles" db=0.1ms queue=0.1ms idle=526.2ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:17:16.528 [debug] QUERY OK source="sources" db=24.1ms idle=526.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:17:16.529 [debug] QUERY OK source="media_items" db=0.3ms idle=551.2ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:16.529 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=263.2ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:16.530 [debug] QUERY OK source="settings" db=0.3ms idle=26.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:16.530 [debug] QUERY OK source="settings" db=0.2ms idle=26.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:16.531 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=3.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:16.533 [debug] QUERY OK source="tasks" db=0.3ms queue=0.1ms idle=4.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:17:16.533 [debug] QUERY OK source="media_items" db=0.1ms idle=4.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:16.534 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=3.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:17:16.535 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=4.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:17:16.538 [debug] QUERY OK source="media_items" db=0.6ms idle=5.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:17:16.541 [debug] QUERY OK source="media_items" db=2.0ms queue=0.1ms idle=5.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:17:16.542 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=7.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:17:16.544 [info] Sent 200 in 41ms 01:17:34.378 [info] {"source":"oban","duration":1046,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:34.393 [info] GET / 01:17:34.393 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:17:34.393 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=417.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:34.394 [debug] QUERY OK source="media_profiles" db=0.0ms queue=0.1ms idle=417.5ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:17:34.394 [debug] QUERY OK source="sources" db=0.1ms idle=417.7ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:17:34.394 [debug] QUERY OK source="media_items" db=0.0ms idle=95.5ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:34.394 [debug] QUERY OK source="media_items" db=0.0ms idle=16.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:34.395 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:34.395 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:34.395 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:34.397 [debug] QUERY OK source="tasks" db=0.5ms idle=2.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:17:34.398 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=3.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:34.399 [debug] QUERY OK source="media_items" db=0.4ms idle=3.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:17:34.400 [debug] QUERY OK source="sources" db=0.2ms idle=4.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:17:34.402 [debug] QUERY OK source="media_items" db=0.3ms idle=6.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:17:34.403 [debug] QUERY OK source="media_items" db=0.8ms idle=5.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:17:34.404 [debug] QUERY OK source="sources" db=0.4ms idle=5.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:17:34.406 [info] Sent 200 in 12ms 01:17:34.908 [info] GET / 01:17:34.908 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:17:34.908 [debug] QUERY OK source="settings" db=0.1ms idle=509.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:34.909 [debug] QUERY OK source="media_profiles" db=0.2ms idle=508.7ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:17:34.909 [debug] QUERY OK source="sources" db=0.0ms idle=506.8ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:17:34.909 [debug] QUERY OK source="media_items" db=0.2ms idle=505.9ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:34.910 [debug] QUERY OK source="media_items" db=0.1ms idle=505.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:34.910 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:34.911 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:34.912 [debug] QUERY OK source="settings" db=0.2ms idle=2.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:34.914 [debug] QUERY OK source="tasks" db=0.4ms queue=0.1ms idle=3.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:17:34.914 [debug] QUERY OK source="media_items" db=0.3ms idle=4.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:34.915 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=4.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:17:34.916 [debug] QUERY OK source="sources" db=0.4ms idle=4.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:17:34.919 [debug] QUERY OK source="media_items" db=0.3ms idle=6.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:17:34.920 [debug] QUERY OK source="media_items" db=0.8ms idle=5.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:17:34.921 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=5.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:17:34.924 [info] Sent 200 in 16ms 01:17:35.733 [info] GET / 01:17:35.733 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:17:35.734 [debug] QUERY OK source="settings" db=0.5ms idle=817.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:35.734 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=815.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:17:35.734 [debug] QUERY OK source="sources" db=0.1ms idle=814.4ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:17:35.735 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=813.8ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:35.735 [debug] QUERY OK source="media_items" db=0.1ms idle=434.2ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:35.736 [debug] QUERY OK source="settings" db=0.1ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:35.736 [debug] QUERY OK source="settings" db=0.3ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:35.738 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=2.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:17:35.740 [debug] QUERY OK source="tasks" db=0.2ms queue=0.1ms idle=4.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:17:35.741 [debug] QUERY OK source="media_items" db=0.2ms idle=5.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:17:35.741 [debug] QUERY OK source="media_items" db=0.2ms idle=5.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:17:35.742 [debug] QUERY OK source="sources" db=0.1ms idle=5.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:17:35.744 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=5.7ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:17:35.745 [debug] QUERY OK source="media_items" db=0.8ms idle=4.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:17:35.745 [debug] QUERY OK source="sources" db=0.1ms idle=4.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:17:35.747 [info] Sent 200 in 14ms 01:18:00.699 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:18:04.379 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:18:34.380 [info] {"source":"oban","duration":882,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:19:00.697 [info] {"source":"oban","duration":180,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:19:04.380 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:19:34.380 [info] {"source":"oban","duration":488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:20:00.696 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:20:04.381 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:20:34.382 [info] {"source":"oban","duration":831,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:21:00.695 [info] {"source":"oban","duration":445,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:21:04.383 [info] {"source":"oban","duration":488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:21:34.383 [info] {"source":"oban","duration":778,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:22:00.694 [info] {"source":"oban","duration":234,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:22:04.384 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:22:34.385 [info] {"source":"oban","duration":1548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:23:00.693 [info] {"source":"oban","duration":234,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:23:04.387 [info] {"source":"oban","duration":1628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:23:34.388 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:00.692 [info] {"source":"oban","duration":169,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:24:04.389 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:34.390 [info] {"source":"oban","duration":734,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:50.479 [info] GET / 01:24:50.479 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:24:50.480 [debug] QUERY OK source="settings" db=0.2ms idle=517.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:50.494 [debug] QUERY OK source="media_profiles" db=14.0ms idle=517.5ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:24:50.495 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=531.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:24:50.496 [debug] QUERY OK source="media_items" db=0.2ms queue=0.3ms idle=532.7ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:24:50.496 [debug] QUERY OK source="media_items" db=0.0ms idle=393.1ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:24:50.497 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=16.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:50.497 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=2.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:50.498 [debug] QUERY OK source="settings" db=0.0ms idle=2.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:50.499 [debug] QUERY OK source="tasks" db=0.2ms idle=2.6ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:24:50.499 [debug] QUERY OK source="media_items" db=0.0ms idle=2.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:24:50.500 [debug] QUERY OK source="media_items" db=0.3ms idle=2.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:24:50.500 [debug] QUERY OK source="sources" db=0.1ms idle=2.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:24:50.502 [debug] QUERY OK source="media_items" db=0.2ms idle=3.7ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:24:50.503 [debug] QUERY OK source="media_items" db=0.7ms queue=0.1ms idle=3.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:24:50.503 [debug] QUERY OK source="sources" db=0.1ms idle=3.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:24:50.504 [info] Sent 200 in 25ms 01:24:50.991 [info] GET / 01:24:50.991 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:24:50.991 [debug] QUERY OK source="settings" db=0.2ms decode=0.1ms idle=491.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:50.992 [debug] QUERY OK source="media_profiles" db=0.2ms idle=491.4ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:24:50.992 [debug] QUERY OK source="sources" db=0.0ms idle=490.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:24:50.992 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=489.2ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:24:50.993 [debug] QUERY OK source="media_items" db=0.1ms idle=489.2ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:24:50.993 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:50.993 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:50.994 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:50.994 [debug] QUERY OK source="tasks" db=0.2ms idle=1.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:24:50.995 [debug] QUERY OK source="media_items" db=0.0ms idle=2.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:24:50.995 [debug] QUERY OK source="media_items" db=0.2ms idle=2.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:24:50.996 [debug] QUERY OK source="sources" db=0.1ms idle=2.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:24:50.998 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=3.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:24:50.998 [debug] QUERY OK source="media_items" db=0.4ms idle=3.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:24:50.999 [debug] QUERY OK source="sources" db=0.1ms idle=3.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:24:51.000 [info] Sent 200 in 8ms 01:24:51.540 [info] CONNECTED TO Phoenix.LiveView.Socket in 28µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "RW8mbTMhKTwEcXQxOAE0GwMDSxEvMRQu3-gYtNoFjI7PhjsHLj8eNDli", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 01:24:51.601 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "vBA4GoFzn8CaPkGSOistauxG", "media_state" => "downloaded"} 01:24:51.602 [debug] QUERY OK source="media_items" db=0.3ms idle=605.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:24:51.603 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=604.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:24:51.603 [debug] QUERY OK source="sources" db=0.3ms idle=604.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:24:51.603 [debug] Replied in 2ms 01:24:51.606 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "vBA4GoFzn8CaPkGSOistauxG", "media_state" => "pending"} 01:24:51.606 [debug] QUERY OK source="media_items" db=0.2ms idle=607.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:24:51.607 [debug] QUERY OK source="media_items" db=0.3ms idle=502.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:24:51.607 [debug] QUERY OK source="sources" db=0.3ms idle=5.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:24:51.607 [debug] Replied in 1ms 01:24:51.609 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "vBA4GoFzn8CaPkGSOistauxG"} 01:24:51.609 [debug] QUERY OK source="tasks" db=0.1ms idle=6.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:24:51.609 [debug] Replied in 439µs 01:24:51.609 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "vBA4GoFzn8CaPkGSOistauxG"} 01:24:51.609 [debug] Replied in 85µs 01:24:52.094 [info] GET / 01:24:52.094 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:24:52.095 [debug] QUERY OK source="settings" db=0.3ms idle=490.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:52.095 [debug] QUERY OK source="media_profiles" db=0.1ms idle=488.4ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:24:52.095 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=488.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:24:52.096 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=488.2ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:24:52.096 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=486.9ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:24:52.096 [debug] QUERY OK source="settings" db=0.0ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:52.097 [debug] QUERY OK source="settings" db=0.1ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:52.097 [debug] QUERY OK source="settings" db=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:24:52.098 [debug] QUERY OK source="tasks" db=0.2ms idle=2.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:24:52.099 [debug] QUERY OK source="media_items" db=0.1ms idle=2.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:24:52.099 [debug] QUERY OK source="media_items" db=0.3ms idle=2.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:24:52.100 [debug] QUERY OK source="sources" db=0.2ms idle=2.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:24:52.101 [debug] QUERY OK source="media_items" db=0.1ms idle=3.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:24:52.102 [debug] QUERY OK source="media_items" db=0.4ms idle=3.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:24:52.102 [debug] QUERY OK source="sources" db=0.1ms idle=3.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:24:52.103 [info] Sent 200 in 9ms 01:25:00.691 [info] {"source":"oban","duration":217,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:25:04.390 [info] {"source":"oban","duration":480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:25:34.444 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:00.743 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:26:04.444 [info] {"source":"oban","duration":459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:34.444 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:49.804 [info] GET / 01:26:49.805 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:26:49.805 [debug] QUERY OK source="settings" db=0.1ms idle=1793.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:26:49.805 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1793.8ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:26:49.806 [debug] QUERY OK source="sources" db=0.1ms idle=1794.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:26:49.806 [debug] QUERY OK source="media_items" db=0.2ms idle=1411.4ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:26:49.807 [debug] QUERY OK source="media_items" db=0.2ms idle=409.8ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:26:49.807 [debug] QUERY OK source="settings" db=0.3ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:26:49.808 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:26:49.808 [debug] QUERY OK source="settings" db=0.0ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:26:49.809 [debug] QUERY OK source="tasks" db=0.1ms idle=2.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:26:49.809 [debug] QUERY OK source="media_items" db=0.1ms idle=2.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:26:49.810 [debug] QUERY OK source="media_items" db=0.3ms idle=2.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:26:49.811 [debug] QUERY OK source="sources" db=0.3ms idle=2.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:26:49.813 [debug] QUERY OK source="media_items" db=0.1ms idle=4.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:26:49.813 [debug] QUERY OK source="media_items" db=0.4ms idle=4.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:26:49.814 [debug] QUERY OK source="sources" db=0.1ms idle=4.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:26:49.815 [info] Sent 200 in 10ms 01:27:00.044 [info] GET / 01:27:00.044 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:27:00.045 [debug] QUERY OK source="settings" db=0.2ms idle=1034.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:27:00.045 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1034.9ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:27:00.046 [debug] QUERY OK source="sources" db=0.1ms queue=0.1ms idle=1035.2ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:27:00.046 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=1035.6ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:27:00.047 [debug] QUERY OK source="media_items" db=0.3ms idle=632.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:27:00.047 [debug] QUERY OK source="settings" db=0.1ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:27:00.047 [debug] QUERY OK source="settings" db=0.0ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:27:00.048 [debug] QUERY OK source="settings" db=0.1ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:27:00.049 [debug] QUERY OK source="tasks" db=0.1ms idle=2.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:27:00.049 [debug] QUERY OK source="media_items" db=0.1ms idle=2.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:27:00.050 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=2.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:27:00.050 [debug] QUERY OK source="sources" db=0.1ms idle=2.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:27:00.053 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=4.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:27:00.054 [debug] QUERY OK source="media_items" db=0.6ms idle=4.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:27:00.055 [debug] QUERY OK source="sources" db=0.2ms idle=5.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:27:00.056 [info] Sent 200 in 11ms 01:27:00.742 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:27:04.445 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:27:04.670 [info] CONNECTED TO Phoenix.LiveView.Socket in 19µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "HzsGFxgiLHojewgLIAEGMSJoBiARY2ABiIUH_kt2b-iQQwLvJYMet0Sv", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 01:27:04.805 [debug] LiveView session was misconfigured or the user token is outdated. 1) Ensure your session configuration in your endpoint is in a module attribute: @session_options [ ... ] 2) Change the `plug Plug.Session` to use said attribute: plug Plug.Session, @session_options 3) Also pass the `@session_options` to your LiveView socket: socket "/live", Phoenix.LiveView.Socket, websocket: [connect_info: [session: @session_options]] 4) Ensure the `protect_from_forgery` plug is in your router pipeline: plug :protect_from_forgery 5) Define the CSRF meta tag inside the `` tag in your layout: 6) Pass it forward in your app.js: let csrfToken = document.querySelector("meta[name='csrf-token']").getAttribute("content"); let liveSocket = new LiveSocket("/live", Socket, {params: {_csrf_token: csrfToken}}); 01:27:04.805 [debug] LiveView session was misconfigured or the user token is outdated. 1) Ensure your session configuration in your endpoint is in a module attribute: @session_options [ ... ] 2) Change the `plug Plug.Session` to use said attribute: plug Plug.Session, @session_options 3) Also pass the `@session_options` to your LiveView socket: socket "/live", Phoenix.LiveView.Socket, websocket: [connect_info: [session: @session_options]] 4) Ensure the `protect_from_forgery` plug is in your router pipeline: plug :protect_from_forgery 5) Define the CSRF meta tag inside the `` tag in your layout: 6) Pass it forward in your app.js: let csrfToken = document.querySelector("meta[name='csrf-token']").getAttribute("content"); let liveSocket = new LiveSocket("/live", Socket, {params: {_csrf_token: csrfToken}}); 01:27:04.806 [debug] LiveView session was misconfigured or the user token is outdated. 1) Ensure your session configuration in your endpoint is in a module attribute: @session_options [ ... ] 2) Change the `plug Plug.Session` to use said attribute: plug Plug.Session, @session_options 3) Also pass the `@session_options` to your LiveView socket: socket "/live", Phoenix.LiveView.Socket, websocket: [connect_info: [session: @session_options]] 4) Ensure the `protect_from_forgery` plug is in your router pipeline: plug :protect_from_forgery 5) Define the CSRF meta tag inside the `` tag in your layout: 6) Pass it forward in your app.js: let csrfToken = document.querySelector("meta[name='csrf-token']").getAttribute("content"); let liveSocket = new LiveSocket("/live", Socket, {params: {_csrf_token: csrfToken}}); 01:27:04.807 [debug] LiveView session was misconfigured or the user token is outdated. 1) Ensure your session configuration in your endpoint is in a module attribute: @session_options [ ... ] 2) Change the `plug Plug.Session` to use said attribute: plug Plug.Session, @session_options 3) Also pass the `@session_options` to your LiveView socket: socket "/live", Phoenix.LiveView.Socket, websocket: [connect_info: [session: @session_options]] 4) Ensure the `protect_from_forgery` plug is in your router pipeline: plug :protect_from_forgery 5) Define the CSRF meta tag inside the `` tag in your layout: 6) Pass it forward in your app.js: let csrfToken = document.querySelector("meta[name='csrf-token']").getAttribute("content"); let liveSocket = new LiveSocket("/live", Socket, {params: {_csrf_token: csrfToken}}); 01:27:05.087 [info] GET / 01:27:05.087 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:27:05.088 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=1077.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:27:05.089 [debug] QUERY OK source="media_profiles" db=0.1ms queue=0.1ms idle=1077.9ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:27:05.089 [debug] QUERY OK source="sources" db=0.2ms idle=1078.2ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:27:05.089 [debug] QUERY OK source="media_items" db=0.1ms idle=666.0ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:27:05.090 [debug] QUERY OK source="media_items" db=0.1ms idle=644.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:27:05.090 [debug] QUERY OK source="settings" db=0.3ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:27:05.091 [debug] QUERY OK source="settings" db=0.2ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:27:05.091 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:27:05.092 [debug] QUERY OK source="tasks" db=0.1ms idle=2.6ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:27:05.093 [debug] QUERY OK source="media_items" db=0.2ms idle=2.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:27:05.093 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=2.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:27:05.094 [debug] QUERY OK source="sources" db=0.5ms idle=3.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:27:05.097 [debug] QUERY OK source="media_items" db=0.2ms idle=4.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:27:05.098 [debug] QUERY OK source="media_items" db=0.8ms idle=4.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:27:05.098 [debug] QUERY OK source="sources" db=0.2ms idle=4.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:27:05.099 [info] Sent 200 in 11ms 01:27:10.717 [info] CONNECTED TO Phoenix.LiveView.Socket in 23µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "Mh0ZLgUnIAMTUx9sOCQ8Bz8yQhseRQZBHiAiQQiSRco-tLyuIJrxkvP1", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 01:27:10.860 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "ztXGTvIPA0pALhErvx0cu3Vp", "media_state" => "downloaded"} 01:27:10.861 [debug] QUERY OK source="media_items" db=0.6ms idle=1850.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:27:10.862 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=1850.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:27:10.863 [debug] QUERY OK source="sources" db=0.3ms idle=1851.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:27:10.863 [debug] Replied in 2ms 01:27:10.868 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "ztXGTvIPA0pALhErvx0cu3Vp", "media_state" => "pending"} 01:27:10.870 [debug] QUERY OK source="media_items" db=0.9ms idle=1434.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:27:10.871 [debug] QUERY OK source="media_items" db=1.1ms queue=0.1ms idle=434.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:27:10.872 [debug] QUERY OK source="sources" db=0.2ms idle=10.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:27:10.872 [debug] Replied in 4ms 01:27:10.874 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "ztXGTvIPA0pALhErvx0cu3Vp"} 01:27:10.875 [debug] QUERY OK source="tasks" db=0.3ms idle=12.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:27:10.875 [debug] Replied in 844µs 01:27:10.876 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "ztXGTvIPA0pALhErvx0cu3Vp"} 01:27:10.876 [debug] Replied in 137µs 01:27:34.444 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:28:00.741 [info] {"source":"oban","duration":209,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:28:04.446 [info] {"source":"oban","duration":803,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:28:34.448 [info] {"source":"oban","duration":1579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:29:00.740 [info] {"source":"oban","duration":283,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:29:04.450 [info] {"source":"oban","duration":1527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:29:34.451 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:30:00.739 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:30:04.451 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:30:34.452 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:31:00.739 [info] {"source":"oban","duration":749,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:31:04.452 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:31:34.453 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:32:00.739 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:32:04.455 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:32:34.455 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:33:00.738 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:33:04.456 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:33:34.456 [info] {"source":"oban","duration":714,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:34:00.737 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:34:04.458 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:34:34.459 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:35:00.736 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:35:04.459 [info] {"source":"oban","duration":796,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:35:34.461 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:36:00.735 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:36:04.461 [info] {"source":"oban","duration":826,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:36:34.462 [info] {"source":"oban","duration":773,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:00.733 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:37:04.463 [info] {"source":"oban","duration":830,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:34.463 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:43.842 [info] GET / 01:37:43.842 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:37:43.842 [debug] QUERY OK source="settings" db=0.2ms idle=1855.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:43.843 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.2ms idle=1855.7ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:37:43.843 [debug] QUERY OK source="sources" db=0.2ms idle=1856.4ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:37:43.844 [debug] QUERY OK source="media_items" db=0.1ms idle=1128.2ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:37:43.844 [debug] QUERY OK source="media_items" db=0.0ms idle=126.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:37:43.844 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:43.844 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:43.845 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:43.846 [debug] QUERY OK source="tasks" db=0.2ms idle=2.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:37:43.847 [debug] QUERY OK source="media_items" db=0.2ms idle=2.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:37:43.847 [debug] QUERY OK source="media_items" db=0.3ms idle=2.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:37:43.848 [debug] QUERY OK source="sources" db=0.1ms idle=3.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:37:43.850 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=4.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:37:43.850 [debug] QUERY OK source="media_items" db=0.4ms idle=3.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:37:43.851 [debug] QUERY OK source="sources" db=0.2ms idle=3.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:37:43.852 [info] Sent 200 in 10ms 01:37:49.392 [info] GET /sources/1 01:37:49.392 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 01:37:49.393 [debug] QUERY OK source="sources" db=0.4ms idle=662.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:37:49.394 [debug] QUERY OK source="media_profiles" db=0.6ms idle=406.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 01:37:49.418 [debug] QUERY OK source="tasks" db=24.2ms idle=407.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [1, "executing", "available", "scheduled", "retryable"] 01:37:49.419 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=431.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:49.420 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=432.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:49.421 [debug] QUERY OK source="settings" db=0.2ms idle=27.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:49.422 [debug] QUERY OK source="sources" db=0.1ms idle=28.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:37:49.423 [debug] QUERY OK source="media_items" db=0.1ms idle=4.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 01:37:49.423 [debug] QUERY OK source="media_items" db=0.7ms idle=3.4ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 01:37:49.424 [debug] QUERY OK source="sources" db=0.2ms idle=4.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:37:49.424 [debug] QUERY OK source="media_items" db=0.0ms idle=3.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 01:37:49.425 [debug] QUERY OK source="media_items" db=0.2ms idle=2.3ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 01:37:49.426 [debug] QUERY OK source="sources" db=0.2ms idle=2.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:37:49.426 [debug] QUERY OK source="media_items" db=0.1ms idle=2.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 01:37:49.426 [debug] QUERY OK source="media_items" db=0.3ms idle=1.9ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 01:37:49.427 [info] Sent 200 in 35ms 01:37:52.301 [info] GET /settings 01:37:52.301 [debug] Processing with PinchflatWeb.Settings.SettingController.show/2 Parameters: %{} Pipelines: [:browser] 01:37:52.301 [debug] QUERY OK source="settings" db=0.3ms idle=1314.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:52.302 [debug] QUERY OK source="settings" db=0.1ms idle=1315.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:52.302 [debug] QUERY OK source="settings" db=0.1ms idle=1315.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:52.303 [debug] QUERY OK source="settings" db=0.1ms idle=1316.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:52.304 [info] Sent 200 in 3ms 01:37:54.976 [info] GET /sources/1/media/1 01:37:54.976 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "1", "source_id" => "1"} Pipelines: [:browser] 01:37:54.977 [debug] QUERY OK source="media_items" db=0.1ms idle=992.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [1] 01:37:54.977 [debug] QUERY OK source="sources" db=0.2ms idle=992.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:37:54.978 [debug] QUERY OK source="tasks" db=0.7ms queue=0.1ms idle=992.6ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [1] 01:37:54.978 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=993.8ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [4] 01:37:54.979 [debug] QUERY OK source="settings" db=0.2ms idle=236.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:54.979 [debug] QUERY OK source="settings" db=0.2ms idle=2.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:54.980 [debug] QUERY OK source="settings" db=0.1ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:54.981 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=2.5ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 01:37:54.983 [info] Sent 200 in 6ms 01:37:57.304 [info] GET /sources/1/media/3 01:37:57.304 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "3", "source_id" => "1"} Pipelines: [:browser] 01:37:57.304 [debug] QUERY OK source="media_items" db=0.2ms idle=1319.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [3] 01:37:57.305 [debug] QUERY OK source="tasks" db=0.2ms idle=1319.9ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [3] 01:37:57.305 [debug] QUERY OK source="sources" db=0.3ms idle=1320.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:37:57.305 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=1320.6ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [6] 01:37:57.306 [debug] QUERY OK source="settings" db=0.2ms idle=559.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:57.306 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:57.306 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:37:57.307 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 01:37:57.309 [info] Sent 200 in 5ms 01:38:00.732 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:38:01.250 [info] GET /sources/1/media/7 01:38:01.250 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "7", "source_id" => "1"} Pipelines: [:browser] 01:38:01.250 [debug] QUERY OK source="media_items" db=0.3ms idle=518.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [7] 01:38:01.251 [debug] QUERY OK source="tasks" db=0.6ms idle=495.7ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [7] 01:38:01.251 [debug] QUERY OK source="sources" db=0.5ms idle=266.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:38:01.252 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=267.1ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [8] 01:38:01.252 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=267.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:01.253 [debug] QUERY OK source="settings" db=0.1ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:01.253 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:01.254 [debug] QUERY OK source="media_profiles" db=0.0ms idle=2.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 01:38:01.255 [info] Sent 200 in 5ms 01:38:03.022 [info] GET /app_info 01:38:03.023 [debug] Processing with PinchflatWeb.Settings.SettingController.app_info/2 Parameters: %{} Pipelines: [:browser] 01:38:03.025 [debug] QUERY OK source="settings" db=1.6ms queue=0.1ms idle=263.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:03.025 [debug] QUERY OK source="settings" db=0.3ms idle=40.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:03.027 [debug] QUERY OK source="settings" db=0.4ms queue=0.2ms idle=41.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:03.028 [debug] QUERY OK source="settings" db=0.1ms idle=42.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:03.028 [debug] QUERY OK source="settings" db=0.1ms idle=43.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:03.029 [info] Sent 200 in 6ms 01:38:04.463 [info] {"source":"oban","duration":659,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:38:04.573 [info] GET /sources 01:38:04.573 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 01:38:04.575 [debug] QUERY OK source="settings" db=0.9ms queue=0.1ms idle=1546.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:04.576 [debug] QUERY OK source="settings" db=0.2ms queue=0.2ms idle=1547.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:04.577 [debug] QUERY OK source="settings" db=0.3ms idle=1548.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:04.577 [debug] QUERY OK source="settings" db=0.1ms idle=815.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:04.578 [debug] QUERY OK source="settings" db=0.2ms idle=114.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:04.578 [debug] QUERY OK source="sources" db=0.4ms idle=3.3ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 01:38:04.579 [debug] QUERY OK source="sources" db=0.7ms idle=3.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 01:38:04.581 [info] Sent 200 in 7ms 01:38:05.926 [info] GET /media_profiles 01:38:05.926 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 01:38:05.927 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=1348.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", (SELECT count(ss0."id") AS "result" FROM "sources" AS ss0 WHERE (ss0."media_profile_id" = m0."id")) FROM "media_profiles" AS m0 WHERE (m0."marked_for_deletion_at" IS NULL) ORDER BY m0."name" [] 01:38:05.927 [debug] QUERY OK source="settings" db=0.2ms idle=1348.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:05.927 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1347.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:05.928 [debug] QUERY OK source="settings" db=0.1ms idle=1164.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:05.929 [info] Sent 200 in 3ms 01:38:08.273 [info] GET /sources/1/media/2 01:38:08.273 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2", "source_id" => "1"} Pipelines: [:browser] 01:38:08.274 [debug] QUERY OK source="media_items" db=0.2ms idle=1288.9ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 01:38:08.274 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=1289.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:38:08.275 [debug] QUERY OK source="tasks" db=0.6ms idle=1289.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [2] 01:38:08.276 [debug] QUERY OK source="oban_jobs" db=1.2ms idle=1290.3ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?)) [5, 7, 10] 01:38:08.277 [debug] QUERY OK source="settings" db=0.0ms idle=505.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:08.277 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=3.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:08.278 [debug] QUERY OK source="settings" db=0.2ms idle=3.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:08.279 [debug] QUERY OK source="media_profiles" db=0.1ms idle=4.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 01:38:08.281 [info] Sent 200 in 7ms 01:38:09.277 [info] GET /media_profiles/1 01:38:09.277 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 01:38:09.278 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1000.5ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 01:38:09.278 [debug] QUERY OK source="sources" db=0.3ms idle=1000.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."media_profile_id" = ?) ORDER BY s0."custom_name" [1] 01:38:09.279 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1000.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:09.279 [debug] QUERY OK source="settings" db=0.1ms idle=1000.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:09.280 [debug] QUERY OK source="settings" db=0.0ms queue=0.1ms idle=506.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:09.281 [info] Sent 200 in 4ms 01:38:10.168 [info] GET /sources/1/edit 01:38:10.168 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 01:38:10.168 [debug] QUERY OK source="sources" db=0.2ms idle=889.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:38:10.169 [debug] QUERY OK source="media_profiles" db=0.2ms idle=889.5ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 01:38:10.169 [debug] QUERY OK source="settings" db=0.3ms idle=889.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:10.170 [debug] QUERY OK source="settings" db=0.0ms idle=889.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:10.170 [debug] QUERY OK source="settings" db=0.3ms idle=394.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:10.174 [info] Sent 200 in 5ms 01:38:10.956 [info] GET /sources/1/force_index 01:38:10.957 [debug] QUERY OK source="settings" db=0.1ms idle=787.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:10.958 [debug] QUERY OK source="settings" db=0.6ms queue=0.1ms idle=787.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:10.958 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 01:38:10.958 [error] #PID<0.8479.0> running PinchflatWeb.Endpoint (connection #PID<0.8478.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /sources/1/force_index ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/force_index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8478.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_index", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 47427}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.8479.0>, params: %{}, path_info: ["sources", "1", "force_index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"connection", "upgrade"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ"}, {"from", "gptbot(at)openai.com"}, {"host", "flat.wdm9.m1dg9r.org"}, {"referer", "https://flat.wdm9.m1dg9r.org/sources/1"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)"}, {"x-forwarded-for", "74.7.227.12"}, {"x-forwarded-proto", "https"}, {"x-openai-host-hash", "192013935"}, {"x-real-ip", "74.7.227.12"} ], request_path: "/sources/1/force_index", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtT3e8D5QSOlLEAAbOB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8478.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_index", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 47427}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/force_index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8478.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_index", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 47427}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ (truncated) 01:38:11.669 [info] GET /sources/1/sync_files_on_disk 01:38:11.669 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1499.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:11.670 [debug] QUERY OK source="settings" db=0.0ms idle=1498.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:11.670 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 01:38:11.670 [error] #PID<0.8481.0> running PinchflatWeb.Endpoint (connection #PID<0.8480.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /sources/1/sync_files_on_disk ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/sync_files_on_disk (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8480.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/sync_files_on_disk", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 25991}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.8481.0>, params: %{}, path_info: ["sources", "1", "sync_files_on_disk"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"connection", "upgrade"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ"}, {"from", "gptbot(at)openai.com"}, {"host", "flat.wdm9.m1dg9r.org"}, {"referer", "https://flat.wdm9.m1dg9r.org/sources/1"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)"}, {"x-forwarded-for", "74.7.227.12"}, {"x-forwarded-proto", "https"}, {"x-openai-host-hash", "192013935"}, {"x-real-ip", "74.7.227.12"} ], request_path: "/sources/1/sync_files_on_disk", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtT3hl8kCeXVgUAAbPB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8480.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/sync_files_on_disk", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 25991}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/sync_files_on_disk (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8480.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/sync_files_on_disk", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 25991}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, (truncated) 01:38:13.860 [info] GET /sources/1/force_redownload 01:38:13.861 [debug] QUERY OK source="settings" db=0.1ms idle=1875.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:13.861 [debug] QUERY OK source="settings" db=0.1ms idle=1078.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:13.861 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 01:38:13.861 [error] #PID<0.8483.0> running PinchflatWeb.Endpoint (connection #PID<0.8482.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /sources/1/force_redownload ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/force_redownload (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8482.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_redownload", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 42254}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.8483.0>, params: %{}, path_info: ["sources", "1", "force_redownload"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"connection", "upgrade"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ"}, {"from", "gptbot(at)openai.com"}, {"host", "flat.wdm9.m1dg9r.org"}, {"referer", "https://flat.wdm9.m1dg9r.org/sources/1"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)"}, {"x-forwarded-for", "74.7.227.12"}, {"x-forwarded-proto", "https"}, {"x-openai-host-hash", "192013935"}, {"x-real-ip", "74.7.227.12"} ], request_path: "/sources/1/force_redownload", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtT3pwgR49XGxcAAbQB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8482.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_redownload", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 42254}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/force_redownload (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8482.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_redownload", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 42254}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_p (truncated) 01:38:20.167 [info] GET /sources/1/media/7 01:38:20.168 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "7", "prevent_download" => "true", "source_id" => "1"} Pipelines: [:browser] 01:38:20.168 [debug] QUERY OK source="media_items" db=0.1ms idle=1183.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [7] 01:38:20.169 [debug] QUERY OK source="sources" db=0.1ms idle=1183.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:38:20.169 [debug] QUERY OK source="tasks" db=0.4ms idle=1183.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [7] 01:38:20.169 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=1184.5ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [8] 01:38:20.170 [debug] QUERY OK source="settings" db=0.1ms idle=371.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:20.170 [debug] QUERY OK source="settings" db=0.0ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:20.170 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:20.171 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 01:38:20.173 [info] Sent 200 in 5ms 01:38:34.465 [info] {"source":"oban","duration":487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:38:38.728 [info] GET /download_logs 01:38:38.728 [debug] Processing with PinchflatWeb.Settings.SettingController.download_logs/2 Parameters: %{} Pipelines: [:browser] 01:38:38.729 [info] Sent 200 in 745µs 01:38:55.946 [info] GET /sources/new 01:38:55.946 [debug] Processing with PinchflatWeb.Sources.SourceController.new/2 Parameters: %{} Pipelines: [:browser] 01:38:55.947 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1963.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 01:38:55.947 [debug] QUERY OK source="settings" db=0.1ms idle=1963.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:55.947 [debug] QUERY OK source="settings" db=0.1ms idle=1963.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:55.948 [debug] QUERY OK source="settings" db=0.0ms idle=1082.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:55.948 [debug] QUERY OK source="settings" db=0.1ms idle=80.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:55.949 [debug] QUERY OK source="settings" db=0.1ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:38:55.951 [info] Sent 200 in 4ms 01:39:00.733 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:39:04.465 [info] {"source":"oban","duration":470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:39:12.245 [info] GET /media_profiles/1/ 01:39:12.245 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 01:39:12.245 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1261.8ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 01:39:12.246 [debug] QUERY OK source="sources" db=0.2ms idle=1262.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."media_profile_id" = ?) ORDER BY s0."custom_name" [1] 01:39:12.246 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=340.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:12.247 [debug] QUERY OK source="settings" db=0.1ms idle=263.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:12.247 [debug] QUERY OK source="settings" db=0.1ms idle=263.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:12.248 [info] Sent 200 in 3ms 01:39:26.474 [info] GET /media_profiles/new 01:39:26.474 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.new/2 Parameters: %{} Pipelines: [:browser] 01:39:26.474 [debug] QUERY OK source="settings" db=0.1ms idle=538.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:26.475 [debug] QUERY OK source="settings" db=0.1ms idle=492.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:26.475 [debug] QUERY OK source="settings" db=0.1ms idle=492.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:26.476 [debug] QUERY OK source="settings" db=0.2ms idle=493.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:26.477 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=494.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:26.478 [info] Sent 200 in 4ms 01:39:34.466 [info] {"source":"oban","duration":867,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:39:39.326 [info] GET /sources/1/ 01:39:39.326 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 01:39:39.327 [debug] QUERY OK source="sources" db=0.1ms idle=1344.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:39:39.327 [debug] QUERY OK source="media_profiles" db=0.3ms idle=1344.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 01:39:39.328 [debug] QUERY OK source="tasks" db=0.3ms queue=0.1ms idle=1345.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [1, "executing", "available", "scheduled", "retryable"] 01:39:39.328 [debug] QUERY OK source="settings" db=0.1ms idle=1345.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:39.329 [debug] QUERY OK source="settings" db=0.1ms idle=369.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:39.329 [debug] QUERY OK source="settings" db=0.0ms idle=2.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:39.331 [debug] QUERY OK source="sources" db=0.1ms idle=3.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:39:39.331 [debug] QUERY OK source="media_items" db=0.2ms idle=2.7ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 01:39:39.332 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=2.7ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 01:39:39.333 [debug] QUERY OK source="sources" db=0.1ms idle=3.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:39:39.333 [debug] QUERY OK source="media_items" db=0.2ms idle=3.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 01:39:39.333 [debug] QUERY OK source="media_items" db=0.1ms idle=2.5ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 01:39:39.334 [debug] QUERY OK source="sources" db=0.1ms idle=2.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:39:39.335 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=2.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 01:39:39.335 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=2.1ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 01:39:39.336 [info] Sent 200 in 10ms 01:39:50.732 [info] GET /media_profiles/1/edit 01:39:50.732 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.edit/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 01:39:50.733 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1750.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 01:39:50.733 [debug] QUERY OK source="settings" db=0.0ms idle=1750.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:50.733 [debug] QUERY OK source="settings" db=0.2ms idle=1750.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:50.734 [debug] QUERY OK source="settings" db=0.2ms idle=1750.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:39:50.735 [info] Sent 200 in 3ms 01:40:00.732 [info] {"source":"oban","duration":390,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:40:01.161 [info] GET /sources/1/force_download_pending 01:40:01.162 [debug] QUERY OK source="settings" db=0.1ms idle=1180.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:40:01.162 [debug] QUERY OK source="settings" db=0.2ms idle=1180.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:40:01.162 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 01:40:01.162 [error] #PID<0.8511.0> running PinchflatWeb.Endpoint (connection #PID<0.8510.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /sources/1/force_download_pending ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/force_download_pending (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8510.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_download_pending", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 28941}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.8511.0>, params: %{}, path_info: ["sources", "1", "force_download_pending"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"connection", "upgrade"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ"}, {"from", "gptbot(at)openai.com"}, {"host", "flat.wdm9.m1dg9r.org"}, {"referer", "https://flat.wdm9.m1dg9r.org/sources/1"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)"}, {"x-forwarded-for", "74.7.227.12"}, {"x-forwarded-proto", "https"}, {"x-openai-host-hash", "192013935"}, {"x-real-ip", "74.7.227.12"} ], request_path: "/sources/1/force_download_pending", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtT95f3h65ZQ2QAAbaB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8510.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_download_pending", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 28941}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/force_download_pending (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8510.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_download_pending", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 28941}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined (truncated) 01:40:04.467 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:40:10.134 [info] GET /sources/1/force_metadata_refresh 01:40:10.135 [debug] QUERY OK source="settings" db=0.4ms idle=1115.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:40:10.136 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=154.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:40:10.136 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 01:40:10.136 [error] #PID<0.8513.0> running PinchflatWeb.Endpoint (connection #PID<0.8512.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /sources/1/force_metadata_refresh ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/force_metadata_refresh (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8512.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_metadata_refresh", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 23241}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.8513.0>, params: %{}, path_info: ["sources", "1", "force_metadata_refresh"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"connection", "upgrade"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ"}, {"from", "gptbot(at)openai.com"}, {"host", "flat.wdm9.m1dg9r.org"}, {"referer", "https://flat.wdm9.m1dg9r.org/sources/1"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)"}, {"x-forwarded-for", "74.7.227.12"}, {"x-forwarded-proto", "https"}, {"x-openai-host-hash", "192013935"}, {"x-real-ip", "74.7.227.12"} ], request_path: "/sources/1/force_metadata_refresh", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtT-a7NHbs0hIYAAbbB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8512.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_metadata_refresh", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 23241}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/force_metadata_refresh (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8512.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/force_metadata_refresh", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 23241}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined (truncated) 01:40:34.468 [info] {"source":"oban","duration":1039,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:40:38.388 [info] GET /sources/1/media/1/force_download 01:40:38.389 [debug] QUERY OK source="settings" db=0.1ms idle=408.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:40:38.389 [debug] QUERY OK source="settings" db=0.2ms idle=409.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:40:38.389 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 01:40:38.390 [error] #PID<0.8517.0> running PinchflatWeb.Endpoint (connection #PID<0.8516.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /sources/1/media/1/force_download ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/media/1/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8516.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/1/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 46824}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.8517.0>, params: %{}, path_info: ["sources", "1", "media", "1", "force_download"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"connection", "upgrade"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ"}, {"from", "gptbot(at)openai.com"}, {"host", "flat.wdm9.m1dg9r.org"}, {"referer", "https://flat.wdm9.m1dg9r.org/sources/1/media/1"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)"}, {"x-forwarded-for", "74.7.227.12"}, {"x-forwarded-proto", "https"}, {"x-openai-host-hash", "192013935"}, {"x-real-ip", "74.7.227.12"} ], request_path: "/sources/1/media/1/force_download", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtUAELvsh__2R8AANtC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8516.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/1/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 46824}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/media/1/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8516.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/1/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 46824}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYaGdwVkRGZ2Q0d1hGTzI2V2FOeUhZdFZu.fX1h-qydG8ZG8AG8zKC0Onx9k-yyH8RRCfSInl51YwQ", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/1", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, (truncated) 01:41:00.732 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:41:04.469 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:41:10.097 [info] GET / 01:41:10.097 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:41:10.098 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=966.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:41:10.098 [debug] QUERY OK source="media_profiles" db=0.1ms queue=0.1ms idle=118.8ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:41:10.099 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=119.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:41:10.099 [debug] QUERY OK source="media_items" db=0.0ms queue=0.1ms idle=119.7ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:41:10.099 [debug] QUERY OK source="media_items" db=0.0ms queue=0.1ms idle=120.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:41:10.100 [debug] QUERY OK source="settings" db=0.0ms queue=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:41:10.100 [debug] QUERY OK source="settings" db=0.1ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:41:10.101 [debug] QUERY OK source="settings" db=0.3ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:41:10.102 [debug] QUERY OK source="tasks" db=0.2ms idle=3.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:41:10.103 [debug] QUERY OK source="media_items" db=0.1ms idle=3.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:41:10.103 [debug] QUERY OK source="media_items" db=0.2ms idle=3.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:41:10.104 [debug] QUERY OK source="sources" db=0.1ms idle=3.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:41:10.106 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=5.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:41:10.107 [debug] QUERY OK source="media_items" db=0.7ms idle=3.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:41:10.107 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=4.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:41:10.109 [info] Sent 200 in 12ms 01:41:34.469 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:41:41.189 [info] GET /sources/1/media/1/edit 01:41:41.189 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "1", "source_id" => "1"} Pipelines: [:browser] 01:41:41.190 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=1211.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [1] 01:41:41.191 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1212.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:41:41.192 [debug] QUERY OK source="settings" db=0.6ms queue=0.2ms idle=1212.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:41:41.193 [debug] QUERY OK source="settings" db=0.3ms idle=1214.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:41:41.194 [info] Sent 200 in 5ms 01:42:00.732 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:42:04.470 [info] {"source":"oban","duration":880,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:42:34.471 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:42:44.068 [info] GET /sources/1/media/7/edit 01:42:44.068 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "7", "source_id" => "1"} Pipelines: [:browser] 01:42:44.069 [debug] QUERY OK source="media_items" db=0.3ms idle=1092.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [7] 01:42:44.069 [debug] QUERY OK source="settings" db=0.3ms idle=748.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:42:44.070 [debug] QUERY OK source="settings" db=0.5ms idle=93.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:42:44.071 [debug] QUERY OK source="settings" db=0.1ms idle=94.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:42:44.072 [info] Sent 200 in 4ms 01:43:00.731 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:43:04.472 [info] {"source":"oban","duration":1509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:43:34.474 [info] {"source":"oban","duration":930,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:43:45.943 [info] GET /sources/1/media/2/edit 01:43:45.943 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2", "source_id" => "1"} Pipelines: [:browser] 01:43:45.943 [debug] QUERY OK source="media_items" db=0.1ms idle=1968.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 01:43:45.944 [debug] QUERY OK source="settings" db=0.3ms idle=1968.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:43:45.944 [debug] QUERY OK source="settings" db=0.1ms idle=1968.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:43:45.945 [debug] QUERY OK source="settings" db=0.6ms queue=0.1ms idle=1499.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:43:45.947 [info] Sent 200 in 4ms 01:44:00.770 [info] {"source":"oban","duration":424,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:44:04.514 [info] {"source":"oban","duration":761,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:44:34.523 [info] {"source":"oban","duration":646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:44:36.207 [info] GET /sources/1/media/3/edit 01:44:36.207 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "3", "source_id" => "1"} Pipelines: [:browser] 01:44:36.208 [debug] QUERY OK source="media_items" db=0.3ms idle=1187.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [3] 01:44:36.209 [debug] QUERY OK source="settings" db=0.1ms idle=611.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:44:36.209 [debug] QUERY OK source="settings" db=0.1ms idle=188.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:44:36.209 [debug] QUERY OK source="settings" db=0.0ms idle=189.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:44:36.210 [info] Sent 200 in 3ms 01:45:00.778 [info] {"source":"oban","duration":210,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:45:04.526 [info] {"source":"oban","duration":2689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:45:22.036 [info] GET /sources/1/media/7/force_download 01:45:22.037 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=335.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:45:22.037 [debug] QUERY OK source="settings" db=0.2ms idle=16.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:45:22.038 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 01:45:22.038 [error] #PID<0.8556.0> running PinchflatWeb.Endpoint (connection #PID<0.8555.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /sources/1/media/7/force_download ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/media/7/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8555.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/7/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 64360}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/7", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8" }, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.8556.0>, params: %{}, path_info: ["sources", "1", "media", "7", "force_download"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"connection", "upgrade"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8"}, {"from", "gptbot(at)openai.com"}, {"host", "flat.wdm9.m1dg9r.org"}, {"referer", "https://flat.wdm9.m1dg9r.org/sources/1/media/7"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)"}, {"x-forwarded-for", "74.7.227.12"}, {"x-forwarded-proto", "https"}, {"x-openai-host-hash", "192013935"}, {"x-real-ip", "74.7.227.12"} ], request_path: "/sources/1/media/7/force_download", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtUQkz98mCy2q4AAbqB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8555.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/7/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 64360}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/7", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/media/7/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8555.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/7/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 64360}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/7", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, (truncated) 01:45:34.527 [info] {"source":"oban","duration":679,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:46:00.777 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:46:02.403 [info] GET /sources/1/media/3/force_download 01:46:02.404 [debug] QUERY OK source="settings" db=0.1ms idle=616.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:46:02.405 [debug] QUERY OK source="settings" db=0.3ms idle=386.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:46:02.405 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 01:46:02.405 [error] #PID<0.8560.0> running PinchflatWeb.Endpoint (connection #PID<0.8559.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /sources/1/media/3/force_download ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/media/3/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8559.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/3/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 61410}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/3", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8" }, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.8560.0>, params: %{}, path_info: ["sources", "1", "media", "3", "force_download"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"connection", "upgrade"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8"}, {"from", "gptbot(at)openai.com"}, {"host", "flat.wdm9.m1dg9r.org"}, {"referer", "https://flat.wdm9.m1dg9r.org/sources/1/media/3"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)"}, {"x-forwarded-for", "74.7.227.12"}, {"x-forwarded-proto", "https"}, {"x-openai-host-hash", "192013935"}, {"x-real-ip", "74.7.227.12"} ], request_path: "/sources/1/media/3/force_download", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtUS7MyeYk-Xk4AAbsB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8559.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/3/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 61410}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/3", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/media/3/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8559.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/3/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 61410}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/3", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, (truncated) 01:46:04.529 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:46:34.529 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:47:00.776 [info] {"source":"oban","duration":236,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:47:04.530 [info] {"source":"oban","duration":658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:47:05.294 [info] GET /sources/1/media/2/force_download 01:47:05.295 [debug] QUERY OK source="settings" db=0.4ms idle=1277.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:47:05.295 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1278.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:47:05.295 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 01:47:05.296 [error] #PID<0.8567.0> running PinchflatWeb.Endpoint (connection #PID<0.8566.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /sources/1/media/2/force_download ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/media/2/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8566.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/2/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 39137}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/2", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8" }, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.8567.0>, params: %{}, path_info: ["sources", "1", "media", "2", "force_download"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"connection", "upgrade"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8"}, {"from", "gptbot(at)openai.com"}, {"host", "flat.wdm9.m1dg9r.org"}, {"referer", "https://flat.wdm9.m1dg9r.org/sources/1/media/2"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)"}, {"x-forwarded-for", "74.7.227.12"}, {"x-forwarded-proto", "https"}, {"x-openai-host-hash", "192013935"}, {"x-real-ip", "74.7.227.12"} ], request_path: "/sources/1/media/2/force_download", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtUWlflCJDGnTAAAN6C"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8566.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/2/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 39137}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/2", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/1/media/2/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8566.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/1/media/2/force_download", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 39137}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "connection" => "upgrade", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbEYwU09nX2llRmxFUUQwOGF1Nl9NOTZV.RvcCReamlTSGn1zy5ALWz-7nyfcD5s8cmZ_pXqNDdW8", "from" => "gptbot(at)openai.com", "host" => "flat.wdm9.m1dg9r.org", "referer" => "https://flat.wdm9.m1dg9r.org/sources/1/media/2", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)", "x-forwarded-for" => "74.7.227.12", "x-forwarded-proto" => "https", "x-openai-host-hash" => "192013935", "x-real-ip" => "74.7.227.12" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, (truncated) 01:47:34.531 [info] {"source":"oban","duration":780,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:48:00.774 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:48:04.531 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:48:34.534 [info] {"source":"oban","duration":2092,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:49:00.773 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:49:04.534 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:49:34.536 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:50:00.771 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:50:04.536 [info] {"source":"oban","duration":794,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:50:34.538 [info] {"source":"oban","duration":1148,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:51:00.772 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:51:04.538 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:51:34.538 [info] {"source":"oban","duration":807,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:52:00.772 [info] {"source":"oban","duration":417,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:52:04.540 [info] {"source":"oban","duration":728,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:52:34.541 [info] {"source":"oban","duration":1361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:53:00.771 [info] {"source":"oban","duration":240,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:53:04.541 [info] {"source":"oban","duration":652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:53:34.542 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:54:00.769 [info] {"source":"oban","duration":303,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:54:04.543 [info] {"source":"oban","duration":776,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:54:34.544 [info] {"source":"oban","duration":778,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:55:00.768 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:55:04.545 [info] {"source":"oban","duration":829,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:55:34.545 [info] {"source":"oban","duration":857,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:56:00.768 [info] {"source":"oban","duration":230,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:56:04.547 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:56:34.548 [info] {"source":"oban","duration":1892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:00.766 [info] {"source":"oban","duration":397,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:57:04.549 [info] {"source":"oban","duration":885,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:18.451 [info] GET / 01:57:18.451 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 01:57:18.452 [debug] QUERY OK source="settings" db=0.4ms idle=457.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:57:18.452 [debug] QUERY OK source="media_profiles" db=0.1ms idle=458.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 01:57:18.452 [debug] QUERY OK source="sources" db=0.0ms idle=458.3ms SELECT count(s0."id") FROM "sources" AS s0 [] 01:57:18.453 [debug] QUERY OK source="media_items" db=0.1ms idle=458.4ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:57:18.453 [debug] QUERY OK source="media_items" db=0.1ms idle=293.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:57:18.453 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:57:18.454 [debug] QUERY OK source="settings" db=0.3ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:57:18.454 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 01:57:18.455 [debug] QUERY OK source="tasks" db=0.2ms idle=2.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 01:57:18.456 [debug] QUERY OK source="media_items" db=0.2ms idle=2.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 01:57:18.456 [debug] QUERY OK source="media_items" db=0.4ms idle=2.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:57:18.457 [debug] QUERY OK source="sources" db=0.2ms idle=3.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:57:18.459 [debug] QUERY OK source="media_items" db=0.1ms idle=4.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 01:57:18.460 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=3.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 01:57:18.460 [debug] QUERY OK source="sources" db=0.1ms queue=0.1ms idle=3.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 01:57:18.461 [info] Sent 200 in 9ms 01:57:34.607 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:42.473 [info] GET /sources/91371044-2e1d-4fe4-8fe7-eae989cebf36/feed.xml 01:57:42.473 [debug] Processing with PinchflatWeb.Podcasts.PodcastController.rss_feed/2 Parameters: %{"uuid" => "91371044-2e1d-4fe4-8fe7-eae989cebf36"} Pipelines: [:maybe_basic_auth] 01:57:42.489 [debug] QUERY OK source="sources" db=15.9ms queue=0.2ms idle=423.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."uuid" = ?) ["91371044-2e1d-4fe4-8fe7-eae989cebf36"] 01:57:42.491 [debug] QUERY OK source="media_items" db=0.8ms queue=0.3ms idle=439.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? [1, 2000] 01:57:42.494 [debug] QUERY OK source="source_metadata" db=0.8ms idle=443.2ms SELECT s0."id", s0."metadata_filepath", s0."fanart_filepath", s0."poster_filepath", s0."banner_filepath", s0."source_id", s0."inserted_at", s0."updated_at", s0."source_id" FROM "source_metadata" AS s0 WHERE (s0."source_id" = ?) [1] 01:57:42.502 [debug] QUERY OK source="media_metadata" db=7.2ms queue=0.1ms idle=444.2ms SELECT m0."id", m0."metadata_filepath", m0."thumbnail_filepath", m0."media_item_id", m0."inserted_at", m0."updated_at", m0."media_item_id" FROM "media_metadata" AS m0 WHERE (m0."media_item_id" = ?) [1] 01:57:42.504 [info] Sent 200 in 30ms 01:58:00.822 [info] {"source":"oban","duration":245,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:58:04.608 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:58:34.608 [info] {"source":"oban","duration":700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:59:00.822 [info] {"source":"oban","duration":459,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:59:04.609 [info] {"source":"oban","duration":983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:59:34.610 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:00:00.825 [info] {"source":"oban","duration":4220,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[12]} 02:00:00.832 [info] {"args":{},"id":12,"meta":{"cron":true,"cron_expr":"0 1 * * *","cron_tz":"Etc/UTC"},"system_time":1773104400837183706,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.Downloading.MediaRetentionWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","local_data"]} 02:00:00.833 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=785.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" WHERE ((NOT (m0."media_filepath" IS NULL) AND IFNULL(retention_period_days, 0) > 0 AND DATETIME(media_downloaded_at, '+' || retention_period_days || ' day') < DATETIME('now') ) AND NOT (m0."prevent_culling" = 1)) [] 02:00:00.833 [info] Culling 0 media items past their retention date 02:00:00.833 [debug] QUERY OK source="media_items" db=0.1ms queue=0.2ms idle=785.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" WHERE ((NOT (m0."media_filepath" IS NULL) AND NOT ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND NOT (m0."prevent_culling" = 1)) [] 02:00:00.833 [info] Deleting 0 media items that are from before the source cutoff 02:00:00.835 [info] {"args":{},"id":12,"meta":{"cron":true,"cron_expr":"0 1 * * *","cron_tz":"Etc/UTC"},"state":"success","max_attempts":20,"queue":"local_data","worker":"Pinchflat.Downloading.MediaRetentionWorker","source":"oban","duration":1475,"event":"job:stop","queue_time":829474,"attempt":1,"tags":["media_item","local_data"]} 02:00:04.611 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:00:07.653 [info] GET /media_profiles/new 02:00:07.653 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.new/2 Parameters: %{"template_id" => "1"} Pipelines: [:browser] 02:00:07.653 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1605.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 02:00:07.654 [debug] QUERY OK source="settings" db=0.2ms idle=1605.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:00:07.654 [debug] QUERY OK source="settings" db=0.1ms idle=1606.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:00:07.654 [debug] QUERY OK source="settings" db=0.0ms idle=1086.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:00:07.655 [debug] QUERY OK source="settings" db=0.0ms idle=85.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:00:07.655 [debug] QUERY OK source="settings" db=0.1ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:00:07.657 [info] Sent 200 in 4ms 02:00:34.168 [info] GET /sources/1 02:00:34.169 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"delete_files" => "true", "id" => "1"} Pipelines: [:browser] 02:00:34.169 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1122.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:00:34.170 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1123.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 02:00:34.170 [debug] QUERY OK source="tasks" db=0.1ms idle=1123.5ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [1, "executing", "available", "scheduled", "retryable"] 02:00:34.170 [debug] QUERY OK source="settings" db=0.2ms idle=1123.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:00:34.171 [debug] QUERY OK source="settings" db=0.1ms idle=549.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:00:34.171 [debug] QUERY OK source="settings" db=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:00:34.173 [debug] QUERY OK source="sources" db=0.1ms idle=3.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:00:34.174 [debug] QUERY OK source="media_items" db=0.2ms idle=3.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 02:00:34.175 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=3.2ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 02:00:34.175 [debug] QUERY OK source="sources" db=0.3ms idle=4.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:00:34.176 [debug] QUERY OK source="media_items" db=0.2ms idle=4.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 02:00:34.177 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=2.9ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 02:00:34.177 [debug] QUERY OK source="sources" db=0.1ms idle=3.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:00:34.178 [debug] QUERY OK source="media_items" db=0.1ms idle=3.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 02:00:34.179 [debug] QUERY OK source="media_items" db=0.7ms queue=0.4ms idle=2.6ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 02:00:34.180 [info] Sent 200 in 11ms 02:00:34.612 [info] {"source":"oban","duration":1166,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:01:00.825 [info] {"source":"oban","duration":377,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:01:04.613 [info] {"source":"oban","duration":671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:01:34.614 [info] {"source":"oban","duration":772,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:02:00.825 [info] {"source":"oban","duration":1021,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:02:04.615 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:02:27.991 [info] GET /sources/new 02:02:27.992 [debug] Processing with PinchflatWeb.Sources.SourceController.new/2 Parameters: %{"template_id" => "1"} Pipelines: [:browser] 02:02:27.992 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1950.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:02:27.993 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=1950.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 02:02:27.993 [debug] QUERY OK source="settings" db=0.1ms idle=1951.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:02:27.994 [debug] QUERY OK source="settings" db=0.1ms idle=1115.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:02:27.994 [debug] QUERY OK source="settings" db=0.3ms idle=112.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:02:27.995 [debug] QUERY OK source="settings" db=0.0ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:02:27.995 [debug] QUERY OK source="settings" db=0.1ms idle=2.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:02:27.998 [info] Sent 200 in 6ms 02:02:34.616 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:00.824 [info] {"source":"oban","duration":243,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:03:03.368 [info] GET /media_profiles/1 02:03:03.368 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.show/2 Parameters: %{"delete_files" => "true", "id" => "1"} Pipelines: [:browser] 02:03:03.369 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.2ms idle=1327.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 02:03:03.370 [debug] QUERY OK source="sources" db=0.8ms queue=0.2ms idle=1328.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."media_profile_id" = ?) ORDER BY s0."custom_name" [1] 02:03:03.372 [debug] QUERY OK source="settings" db=0.6ms queue=0.2ms idle=408.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:03:03.375 [debug] QUERY OK source="settings" db=2.3ms queue=0.1ms idle=331.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:03:03.382 [debug] QUERY OK source="settings" db=4.1ms queue=0.5ms idle=335.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:03:03.384 [info] Sent 200 in 16ms 02:03:04.617 [info] {"source":"oban","duration":469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:34.619 [info] {"source":"oban","duration":1633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:52.807 [info] GET /sources/1/media/1 02:03:52.807 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "1", "prevent_download" => "true", "source_id" => "1"} Pipelines: [:browser] 02:03:52.808 [debug] QUERY OK source="media_items" db=0.2ms idle=1767.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [1] 02:03:52.809 [debug] QUERY OK source="tasks" db=0.4ms idle=1727.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [1] 02:03:52.809 [debug] QUERY OK source="sources" db=0.4ms idle=768.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:03:52.809 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=769.1ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [4] 02:03:52.810 [debug] QUERY OK source="settings" db=0.1ms idle=725.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:03:52.810 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:03:52.811 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:03:52.811 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 02:03:52.814 [info] Sent 200 in 6ms 02:03:57.292 [info] GET /sources/1/media/3 02:03:57.292 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "3", "prevent_download" => "true", "source_id" => "1"} Pipelines: [:browser] 02:03:57.293 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=1253.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [3] 02:03:57.294 [debug] QUERY OK source="sources" db=0.2ms idle=1253.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:03:57.294 [debug] QUERY OK source="tasks" db=0.3ms idle=1253.9ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [3] 02:03:57.294 [debug] QUERY OK source="oban_jobs" db=0.4ms idle=1202.3ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [6] 02:03:57.295 [debug] QUERY OK source="settings" db=0.2ms idle=201.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:03:57.295 [debug] QUERY OK source="settings" db=0.0ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:03:57.295 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:03:57.296 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.7ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 02:03:57.299 [info] Sent 200 in 6ms 02:04:00.824 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:04:01.221 [info] GET /sources/1/media/2 02:04:01.221 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2", "prevent_download" => "true", "source_id" => "1"} Pipelines: [:browser] 02:04:01.222 [debug] QUERY OK source="media_items" db=0.2ms idle=397.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 02:04:01.222 [debug] QUERY OK source="tasks" db=0.3ms idle=182.7ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [2] 02:04:01.222 [debug] QUERY OK source="sources" db=0.4ms idle=182.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:04:01.223 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=183.5ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?)) [5, 7, 10] 02:04:01.224 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=120.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:04:01.224 [debug] QUERY OK source="settings" db=0.1ms idle=2.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:04:01.225 [debug] QUERY OK source="settings" db=0.1ms idle=2.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:04:01.226 [debug] QUERY OK source="media_profiles" db=0.3ms idle=3.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 02:04:01.228 [info] Sent 200 in 6ms 02:04:04.620 [info] {"source":"oban","duration":1016,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:04:08.149 [info] GET /sources/opml.xml 02:04:08.149 [debug] Processing with PinchflatWeb.Podcasts.PodcastController.opml_feed/2 Parameters: %{"route_token" => "38ca8133-df7f-4e20-8c05-77c1ba08abde"} Pipelines: [:maybe_basic_auth, :token_protected_route] 02:04:08.150 [debug] QUERY OK source="settings" db=0.3ms idle=1110.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:04:08.150 [debug] QUERY OK source="sources" db=0.1ms queue=0.2ms idle=1110.7ms SELECT s0."custom_name", s0."uuid" FROM "sources" AS s0 WHERE (s0."marked_for_deletion_at" IS NULL) ORDER BY s0."custom_name" [] 02:04:08.150 [info] Sent 200 in 1ms 02:04:11.125 [info] GET /media/994b1fdf-df7f-482d-95aa-3afd2f1243ff/stream 02:04:11.126 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.stream/2 Parameters: %{"uuid" => "994b1fdf-df7f-482d-95aa-3afd2f1243ff", "v" => "1773034367"} Pipelines: [:maybe_basic_auth] 02:04:11.139 [debug] QUERY OK source="media_items" db=12.8ms queue=0.2ms idle=1086.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."uuid" = ?) ["994b1fdf-df7f-482d-95aa-3afd2f1243ff"] 02:04:11.139 [debug] Invalid range request for media item: 994b1fdf-df7f-482d-95aa-3afd2f1243ff - serving full file 02:04:11.140 [info] Sent 200 in 14ms 02:04:13.681 [info] GET /media/a0c06a8a-9894-4d12-83cf-d077fa8eb3e7/stream 02:04:13.682 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.stream/2 Parameters: %{"uuid" => "a0c06a8a-9894-4d12-83cf-d077fa8eb3e7", "v" => "1773034981"} Pipelines: [:maybe_basic_auth] 02:04:13.683 [debug] QUERY OK source="media_items" db=0.4ms idle=1642.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."uuid" = ?) ["a0c06a8a-9894-4d12-83cf-d077fa8eb3e7"] 02:04:13.684 [debug] Invalid range request for media item: a0c06a8a-9894-4d12-83cf-d077fa8eb3e7 - serving full file 02:04:13.685 [info] Sent 200 in 3ms 02:04:19.032 [info] GET /media/f47bef4a-5ce1-408e-8969-3cda2e2bd020/stream 02:04:19.033 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.stream/2 Parameters: %{"uuid" => "f47bef4a-5ce1-408e-8969-3cda2e2bd020", "v" => "1773034132"} Pipelines: [:maybe_basic_auth] 02:04:19.033 [debug] QUERY OK source="media_items" db=0.3ms idle=1993.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."uuid" = ?) ["f47bef4a-5ce1-408e-8969-3cda2e2bd020"] 02:04:19.033 [debug] Invalid range request for media item: f47bef4a-5ce1-408e-8969-3cda2e2bd020 - serving full file 02:04:19.033 [info] Sent 200 in 919µs 02:04:34.622 [info] {"source":"oban","duration":1745,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:05:00.823 [info] {"source":"oban","duration":175,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:05:04.622 [info] {"source":"oban","duration":483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:05:34.623 [info] {"source":"oban","duration":492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:00.822 [info] {"source":"oban","duration":175,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:06:04.623 [info] {"source":"oban","duration":822,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:32.430 [info] CONNECTED TO Phoenix.LiveView.Socket in 28µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "ZglnEwInXAVvYSMURx8GWyMVAH8EImkTTz4KV_3FBQFZjYa4gmd5vt6_", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 02:06:32.537 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 02:06:32.539 [debug] QUERY OK source="sources" db=0.7ms idle=502.9ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 02:06:32.541 [debug] QUERY OK source="sources" db=1.8ms queue=0.2ms idle=504.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 02:06:32.542 [debug] Replied in 4ms 02:06:32.544 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 02:06:32.544 [debug] Replied in 210µs 02:06:34.624 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:36.523 [info] CONNECTED TO Phoenix.LiveView.Socket in 32µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "CytuEVs9O18qAiM1GHooKlYvHSwpY31mIa8bhlc3ZUEAA2_PbJOnK471", "_live_referer" => "undefined", "_mount_attempts" => "1", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 02:06:36.526 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 02:06:36.527 [debug] QUERY OK source="sources" db=0.5ms idle=491.2ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 02:06:36.528 [debug] QUERY OK source="sources" db=0.8ms idle=492.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 02:06:36.528 [debug] Replied in 2ms 02:06:36.530 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "BJVs3QXlpWftYHwz4eRBbWJW"} 02:06:36.530 [debug] Replied in 102µs 02:06:36.547 [debug] HANDLE EVENT "check_matching_text" in Pinchflat.UpgradeButtonLive Parameters: %{"_target" => ["unlock-pro-textbox"], "_unused_unlock-pro-textbox" => "", "unlock-pro-textbox" => ""} 02:06:36.547 [debug] Replied in 146µs 02:07:00.821 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:07:04.625 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:07:34.625 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:08:00.821 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:08:04.626 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:08:34.627 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:09:00.820 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:09:04.628 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:09:34.630 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:10:00.820 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:10:04.631 [info] {"source":"oban","duration":930,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:10:34.632 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:11:00.819 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:11:04.633 [info] {"source":"oban","duration":1132,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:11:16.824 [info] GET / 02:11:16.824 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 02:11:16.824 [debug] QUERY OK source="settings" db=0.2ms idle=860.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:11:16.825 [debug] QUERY OK source="media_profiles" db=0.0ms idle=798.9ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 02:11:16.825 [debug] QUERY OK source="sources" db=0.0ms idle=799.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 02:11:16.825 [debug] QUERY OK source="media_items" db=0.0ms idle=799.3ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 02:11:16.825 [debug] QUERY OK source="media_items" db=0.0ms idle=799.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 02:11:16.825 [debug] QUERY OK source="settings" db=0.1ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:11:16.826 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:11:16.826 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:11:16.827 [debug] QUERY OK source="tasks" db=0.1ms idle=1.9ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 02:11:16.828 [debug] QUERY OK source="media_items" db=0.2ms idle=2.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 02:11:16.828 [debug] QUERY OK source="media_items" db=0.2ms idle=2.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 02:11:16.828 [debug] QUERY OK source="sources" db=0.1ms idle=2.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:11:16.830 [debug] QUERY OK source="media_items" db=0.2ms idle=3.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 02:11:16.831 [debug] QUERY OK source="media_items" db=0.4ms idle=3.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 02:11:16.831 [debug] QUERY OK source="sources" db=0.3ms idle=3.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:11:16.833 [info] Sent 200 in 8ms 02:11:34.633 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:12:00.819 [info] {"source":"oban","duration":227,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:12:04.635 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:12:34.635 [info] {"source":"oban","duration":736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:13:00.818 [info] {"source":"oban","duration":373,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:13:04.637 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:13:34.638 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:00.817 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:14:04.638 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:34.640 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:44.520 [debug] Tzdata polling for update. 02:14:44.618 [debug] Tzdata polling shows the loaded tz database is up to date. 02:15:00.816 [info] {"source":"oban","duration":283,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:15:04.641 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:15:34.641 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:16:00.815 [info] {"source":"oban","duration":305,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:16:04.643 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:16:34.644 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:17:00.814 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:17:04.645 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:17:29.874 [info] GET /sources 02:17:29.874 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 02:17:29.875 [debug] QUERY OK source="settings" db=0.1ms idle=1861.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:17:29.875 [debug] QUERY OK source="settings" db=0.0ms idle=1862.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:17:29.876 [debug] QUERY OK source="settings" db=0.0ms idle=1862.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:17:29.876 [debug] QUERY OK source="settings" db=0.2ms idle=1118.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:17:29.877 [debug] QUERY OK source="settings" db=0.1ms idle=115.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:17:29.878 [debug] QUERY OK source="sources" db=0.3ms idle=2.2ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 02:17:29.879 [debug] QUERY OK source="sources" db=0.8ms idle=2.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 02:17:29.880 [info] Sent 200 in 5ms 02:17:29.928 [info] CONNECTED TO Phoenix.LiveView.Socket in 23µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "Yjc3dRo_PhJcXgANSDUpNxUrLiAiO248PDd-NGQQqneCesNXQSJjPm1p", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "http://localhost:64040/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "http://localhost:64040/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 02:17:29.986 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 02:17:29.987 [debug] QUERY OK source="sources" db=0.6ms idle=110.3ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 02:17:29.989 [debug] QUERY OK source="sources" db=1.1ms queue=0.2ms idle=110.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 02:17:29.989 [debug] Replied in 3ms 02:17:29.990 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "2sSXTxoC-0eN-FgoDxdJrV_L"} 02:17:29.990 [debug] Replied in 72µs 02:17:34.645 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:18:00.894 [info] {"source":"oban","duration":251,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:18:04.726 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:18:34.727 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:19:00.894 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:19:04.729 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:19:34.730 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:20:00.893 [info] {"source":"oban","duration":407,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:20:04.730 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:20:34.731 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:21:00.893 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:21:04.733 [info] {"source":"oban","duration":1578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:21:34.735 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:22:00.893 [info] {"source":"oban","duration":260,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:22:04.735 [info] {"source":"oban","duration":499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:22:34.736 [info] {"source":"oban","duration":1125,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:23:00.893 [info] {"source":"oban","duration":256,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:23:04.737 [info] {"source":"oban","duration":482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:23:34.737 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:24:00.892 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:24:04.738 [info] {"source":"oban","duration":800,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:24:34.739 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:25:00.892 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:25:04.740 [info] {"source":"oban","duration":680,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:25:34.742 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:26:00.891 [info] {"source":"oban","duration":174,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:26:04.742 [info] {"source":"oban","duration":482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:26:34.743 [info] {"source":"oban","duration":855,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:00.891 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:27:04.744 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:34.747 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:46.400 [info] GET / 02:27:46.401 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 02:27:46.402 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=395.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:27:46.402 [debug] QUERY OK source="media_profiles" db=0.2ms idle=326.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 02:27:46.403 [debug] QUERY OK source="sources" db=0.2ms queue=0.2ms idle=326.4ms SELECT count(s0."id") FROM "sources" AS s0 [] 02:27:46.403 [debug] QUERY OK source="media_items" db=0.3ms idle=327.0ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 02:27:46.404 [debug] QUERY OK source="media_items" db=0.0ms queue=0.2ms idle=327.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 02:27:46.404 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:27:46.404 [debug] QUERY OK source="settings" db=0.0ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:27:46.405 [debug] QUERY OK source="settings" db=0.1ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:27:46.406 [debug] QUERY OK source="tasks" db=0.1ms idle=2.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 02:27:46.406 [debug] QUERY OK source="media_items" db=0.1ms idle=2.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 02:27:46.407 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=2.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 02:27:46.407 [debug] QUERY OK source="sources" db=0.2ms idle=2.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:27:46.409 [debug] QUERY OK source="media_items" db=0.3ms idle=4.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 02:27:46.411 [debug] QUERY OK source="media_items" db=0.7ms idle=3.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 02:27:46.412 [debug] QUERY OK source="sources" db=0.7ms queue=0.1ms idle=4.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:27:46.413 [info] Sent 200 in 12ms 02:28:00.891 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:28:04.748 [info] {"source":"oban","duration":1181,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:28:34.748 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:29:00.890 [info] {"source":"oban","duration":239,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:29:04.750 [info] {"source":"oban","duration":759,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:29:34.751 [info] {"source":"oban","duration":1106,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:30:00.890 [info] {"source":"oban","duration":415,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:30:04.752 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:30:34.753 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:31:00.890 [info] {"source":"oban","duration":189,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:31:04.755 [info] {"source":"oban","duration":853,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:31:34.757 [info] {"source":"oban","duration":1737,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:32:00.889 [info] {"source":"oban","duration":211,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:32:04.758 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:32:34.759 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:33:00.888 [info] {"source":"oban","duration":183,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:33:04.760 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:33:34.762 [info] {"source":"oban","duration":980,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:34:00.888 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:34:04.764 [info] {"source":"oban","duration":1698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:34:34.768 [info] {"source":"oban","duration":3747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:35:00.887 [info] {"source":"oban","duration":190,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:35:04.768 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:35:34.768 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:36:00.887 [info] {"source":"oban","duration":405,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:36:04.770 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:36:34.771 [info] {"source":"oban","duration":887,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:37:00.957 [info] {"source":"oban","duration":394,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:37:04.842 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:37:34.843 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:38:00.958 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:38:04.844 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:38:34.846 [info] {"source":"oban","duration":1231,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:39:00.957 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:39:04.847 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:39:34.848 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:40:00.957 [info] {"source":"oban","duration":196,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:40:04.849 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:40:34.850 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:41:00.958 [info] {"source":"oban","duration":195,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:41:04.851 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:41:34.852 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:42:00.958 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:42:04.854 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:42:34.855 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:43:00.957 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:43:04.856 [info] {"source":"oban","duration":673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:43:34.858 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:44:00.958 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:44:04.860 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:44:34.861 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:45:00.958 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:45:04.862 [info] {"source":"oban","duration":694,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:45:34.863 [info] {"source":"oban","duration":864,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:46:00.958 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:46:04.865 [info] {"source":"oban","duration":749,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:46:34.866 [info] {"source":"oban","duration":782,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:47:00.958 [info] {"source":"oban","duration":256,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:47:04.867 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:47:34.868 [info] {"source":"oban","duration":715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:48:00.958 [info] {"source":"oban","duration":438,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:48:04.870 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:48:34.873 [info] {"source":"oban","duration":1639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:49:00.958 [info] {"source":"oban","duration":396,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:49:04.874 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:49:34.875 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:50:00.959 [info] {"source":"oban","duration":408,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:50:04.877 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:50:34.877 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:51:00.960 [info] {"source":"oban","duration":681,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:51:04.879 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:51:34.881 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:52:00.960 [info] {"source":"oban","duration":244,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:52:04.883 [info] {"source":"oban","duration":712,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:52:34.884 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:53:00.960 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:53:04.885 [info] {"source":"oban","duration":648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:53:34.887 [info] {"source":"oban","duration":724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:54:00.959 [info] {"source":"oban","duration":191,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:54:04.888 [info] {"source":"oban","duration":869,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:54:34.889 [info] {"source":"oban","duration":668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:00.958 [info] {"source":"oban","duration":236,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:55:04.890 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:34.925 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:57.566 [info] GET / 02:55:57.566 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 02:55:57.567 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1338.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.567 [debug] QUERY OK source="media_profiles" db=0.0ms queue=0.2ms idle=1339.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 02:55:57.568 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=1339.5ms SELECT count(s0."id") FROM "sources" AS s0 [] 02:55:57.568 [debug] QUERY OK source="media_items" db=0.0ms idle=1131.3ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 02:55:57.568 [debug] QUERY OK source="media_items" db=0.0ms idle=129.8ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 02:55:57.569 [debug] QUERY OK source="settings" db=0.3ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.569 [debug] QUERY OK source="settings" db=0.1ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.569 [debug] QUERY OK source="settings" db=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.570 [debug] QUERY OK source="tasks" db=0.2ms idle=2.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 02:55:57.571 [debug] QUERY OK source="media_items" db=0.2ms idle=2.7ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 02:55:57.572 [debug] QUERY OK source="media_items" db=0.4ms idle=2.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 02:55:57.572 [debug] QUERY OK source="sources" db=0.3ms idle=3.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:55:57.575 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=5.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 02:55:57.576 [debug] QUERY OK source="media_items" db=0.6ms idle=4.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 02:55:57.576 [debug] QUERY OK source="sources" db=0.2ms idle=4.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 02:55:57.577 [info] Sent 200 in 11ms 02:55:57.643 [info] GET /assets/js/auth.js 02:55:57.644 [debug] QUERY OK source="settings" db=0.1ms idle=72.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.644 [debug] QUERY OK source="settings" db=0.1ms idle=71.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.644 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 02:55:57.645 [error] #PID<0.9012.0> running PinchflatWeb.Endpoint (connection #PID<0.9011.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /assets/js/auth.js ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /assets/js/auth (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9011.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/assets/js/auth.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 53932}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9012.0>, params: %{}, path_info: ["assets", "js", "auth"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36"}, {"x-forwarded-for", "178.22.106.230"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "178.22.106.230"} ], request_path: "/assets/js/auth.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtYHHpudtjP0P8AAd7B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9011.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/assets/js/auth.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 53932}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /assets/js/auth (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9011.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/assets/js/auth.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 53932}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9012.0>, params: %{}, path_info: ["assets", "js", "auth"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix (truncated) 02:55:57.706 [info] GET /assets/js/message.js 02:55:57.708 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=131.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.708 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=132.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.708 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 02:55:57.709 [error] #PID<0.9016.0> running PinchflatWeb.Endpoint (connection #PID<0.9015.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /assets/js/message.js ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /assets/js/message (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9015.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/assets/js/message.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 28619}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9016.0>, params: %{}, path_info: ["assets", "js", "message"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36"}, {"x-forwarded-for", "178.22.106.230"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "178.22.106.230"} ], request_path: "/assets/js/message.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtYHH4owuzmyUMAAO3C"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9015.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/assets/js/message.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 28619}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /assets/js/message (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9015.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/assets/js/message.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 28619}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9016.0>, params: %{}, path_info: ["assets", "js", "message"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.R (truncated) 02:55:57.840 [info] GET /static/style/protect/index.js 02:55:57.841 [debug] QUERY OK source="settings" db=0.3ms idle=264.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.841 [debug] QUERY OK source="settings" db=0.1ms idle=196.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.841 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 02:55:57.842 [error] #PID<0.9022.0> running PinchflatWeb.Endpoint (connection #PID<0.9021.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /static/style/protect/index.js ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /static/style/protect/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9021.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/static/style/protect/index.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 44033}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9022.0>, params: %{}, path_info: ["static", "style", "protect", "index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36"}, {"x-forwarded-for", "178.22.106.230"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "178.22.106.230"} ], request_path: "/static/style/protect/index.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtYHIYkXr1aynUAAO4C"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9021.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/static/style/protect/index.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 44033}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /static/style/protect/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9021.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/static/style/protect/index.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 44033}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9022.0>, params: %{}, path_info: ["static", "style", "protect", "index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_rout (truncated) 02:55:57.908 [info] GET /js/lkk_ch.js 02:55:57.909 [debug] QUERY OK source="settings" db=0.2ms idle=264.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.909 [debug] QUERY OK source="settings" db=0.2ms idle=201.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:57.910 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 02:55:57.910 [error] #PID<0.9026.0> running PinchflatWeb.Endpoint (connection #PID<0.9025.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /js/lkk_ch.js ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /js/lkk_ch (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9025.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/js/lkk_ch.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 57464}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9026.0>, params: %{}, path_info: ["js", "lkk_ch"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36"}, {"x-forwarded-for", "178.22.106.230"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "178.22.106.230"} ], request_path: "/js/lkk_ch.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtYHIo1ZEYSCAsAAd8B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9025.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/js/lkk_ch.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 57464}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /js/lkk_ch (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9025.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/js/lkk_ch.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 57464}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9026.0>, params: %{}, path_info: ["js", "lkk_ch"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logg (truncated) 02:55:58.107 [info] GET /assets/js/qr_modal.js 02:55:58.108 [debug] QUERY OK source="settings" db=0.2ms queue=0.2ms idle=399.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:58.108 [debug] QUERY OK source="settings" db=0.2ms idle=267.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:58.108 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 02:55:58.109 [error] #PID<0.9028.0> running PinchflatWeb.Endpoint (connection #PID<0.9027.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /assets/js/qr_modal.js ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /assets/js/qr_modal (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9027.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/assets/js/qr_modal.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 65519}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9028.0>, params: %{}, path_info: ["assets", "js", "qr_modal"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36"}, {"x-forwarded-for", "178.22.106.230"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "178.22.106.230"} ], request_path: "/assets/js/qr_modal.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtYHJYRIw1RiPwAAO5C"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9027.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/assets/js/qr_modal.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 65519}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /assets/js/qr_modal (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9027.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/assets/js/qr_modal.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 65519}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9028.0>, params: %{}, path_info: ["assets", "js", "qr_modal"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => Pinch (truncated) 02:55:58.252 [info] GET /css/support_parent.css 02:55:58.253 [debug] QUERY OK source="settings" db=0.2ms idle=411.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:58.253 [debug] QUERY OK source="settings" db=0.1ms idle=344.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:58.253 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 02:55:58.254 [error] #PID<0.9034.0> running PinchflatWeb.Endpoint (connection #PID<0.9033.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /css/support_parent.css ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /css/support_parent (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9033.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/css/support_parent.css", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 26372}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9034.0>, params: %{}, path_info: ["css", "support_parent"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36"}, {"x-forwarded-for", "178.22.106.230"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "178.22.106.230"} ], request_path: "/css/support_parent.css", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtYHJ632n86KrkAAO6C"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9033.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/css/support_parent.css", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 26372}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /css/support_parent (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9033.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/css/support_parent.css", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 26372}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9034.0>, params: %{}, path_info: ["css", "support_parent"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => Pinchf (truncated) 02:55:58.283 [info] GET /js/twint_ch.js 02:55:58.283 [debug] QUERY OK source="settings" db=0.2ms idle=373.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:58.284 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=175.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:58.284 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 02:55:58.285 [error] #PID<0.9036.0> running PinchflatWeb.Endpoint (connection #PID<0.9035.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /js/twint_ch.js ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /js/twint_ch (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9035.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/js/twint_ch.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 38413}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9036.0>, params: %{}, path_info: ["js", "twint_ch"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36"}, {"x-forwarded-for", "178.22.106.230"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "178.22.106.230"} ], request_path: "/js/twint_ch.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtYHKCJs7qVtqgAAO7C"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9035.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/js/twint_ch.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 38413}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /js/twint_ch (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9035.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/js/twint_ch.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 38413}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9036.0>, params: %{}, path_info: ["js", "twint_ch"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logg (truncated) 02:55:58.318 [info] GET /static/style/sys_files/index.js 02:55:58.319 [debug] QUERY OK source="settings" db=0.1ms idle=210.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:58.319 [debug] QUERY OK source="settings" db=0.2ms idle=66.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 02:55:58.319 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 02:55:58.320 [error] #PID<0.9038.0> running PinchflatWeb.Endpoint (connection #PID<0.9037.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /static/style/sys_files/index.js ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /static/style/sys_files/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9037.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/static/style/sys_files/index.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 24317}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9038.0>, params: %{}, path_info: ["static", "style", "sys_files", "index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"}, {"accept-encoding", "gzip, deflate"}, {"accept-language", "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36"}, {"x-forwarded-for", "178.22.106.230"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "178.22.106.230"} ], request_path: "/static/style/sys_files/index.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtYHKKlEvQNQagAAd9B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9037.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/static/style/sys_files/index.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 24317}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /static/style/sys_files/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9037.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/static/style/sys_files/index.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 24317}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", "accept-encoding" => "gzip, deflate", "accept-language" => "en-US,en;q=0.9,de-CH;q=0.8,de;q=0.7,ca;q=0.6", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36", "x-forwarded-for" => "178.22.106.230", "x-forwarded-proto" => "https", "x-real-ip" => "178.22.106.230" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9038.0>, params: %{}, path_info: ["static", "style", "sys_files", "index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, (truncated) 02:56:01.001 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:56:04.934 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:56:34.936 [info] {"source":"oban","duration":702,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:57:00.002 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:57:04.937 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:57:34.932 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:58:00.002 [info] {"source":"oban","duration":212,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:58:04.940 [info] {"source":"oban","duration":710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:58:34.941 [info] {"source":"oban","duration":908,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:59:00.002 [info] {"source":"oban","duration":414,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:59:04.942 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:59:34.943 [info] {"source":"oban","duration":443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:00:00.004 [info] {"source":"oban","duration":3340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[13]} 03:00:00.011 [info] {"args":{},"id":13,"meta":{"cron":true,"cron_expr":"0 2 * * *","cron_tz":"Etc/UTC"},"system_time":1773108000008501975,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaQualityUpgradeWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 03:00:00.011 [debug] QUERY OK source="media_items" db=0.1ms queue=0.2ms idle=1779.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((NOT (m0."media_filepath" IS NULL) AND NOT (m0."prevent_download" = 1)) AND NOT (NOT (m0."media_redownloaded_at" IS NULL))) AND IFNULL(redownload_delay_days, 0) > 0 AND DATE('now', '-' || redownload_delay_days || ' day') > DATE(uploaded_at) AND DATE(media_downloaded_at, '-' || redownload_delay_days || ' day') < DATE(uploaded_at) ) [] 03:00:00.011 [info] Redownloading 0 media items 03:00:00.012 [info] {"args":{},"id":13,"meta":{"cron":true,"cron_expr":"0 2 * * *","cron_tz":"Etc/UTC"},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaQualityUpgradeWorker","source":"oban","duration":924,"event":"job:stop","queue_time":9457,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 03:00:04.944 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:00:34.945 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:01:00.004 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:01:04.947 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:01:34.948 [info] {"source":"oban","duration":829,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:00.004 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:02:04.950 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:34.950 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:51.648 [info] GET /.git/config 03:02:51.649 [debug] QUERY OK source="settings" db=0.4ms idle=1418.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:02:51.649 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1419.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:02:51.649 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:02:51.650 [error] #PID<0.9073.0> running PinchflatWeb.Endpoint (connection #PID<0.9072.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /.git/config ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9072.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 49659}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-charset" => "utf-8", "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (ZZ; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36", "x-forwarded-for" => "44.204.29.236", "x-forwarded-proto" => "https", "x-real-ip" => "44.204.29.236" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9073.0>, params: %{}, path_info: [".git", "config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-charset", "utf-8"}, {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (ZZ; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36"}, {"x-forwarded-for", "44.204.29.236"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "44.204.29.236"} ], request_path: "/.git/config", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtYfN999oFYFxcAAeMB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9072.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 49659}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-charset" => "utf-8", "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (ZZ; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36", "x-forwarded-for" => "44.204.29.236", "x-forwarded-proto" => "https", "x-real-ip" => "44.204.29.236" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9072.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 49659}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-charset" => "utf-8", "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (ZZ; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36", "x-forwarded-for" => "44.204.29.236", "x-forwarded-proto" => "https", "x-real-ip" => "44.204.29.236" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9073.0>, params: %{}, path_info: [".git", "config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-charset", "utf-8"}, {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (ZZ; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36"}, {"x-forwarded-for", "44.204.29.236"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "44.204.29.236"} ], request_path: "/.git/config", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtYfN999oFYFxcAAeMB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: (truncated) 03:03:00.003 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:03:04.951 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:03:34.953 [info] {"source":"oban","duration":875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:04:00.004 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:04:04.954 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:04:34.955 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:05:00.003 [info] {"source":"oban","duration":194,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:05:04.956 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:05:34.958 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:06:00.004 [info] {"source":"oban","duration":211,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:06:04.959 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:06:34.960 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:07:00.003 [info] {"source":"oban","duration":380,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:07:04.961 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:07:34.961 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:08:00.004 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:08:04.963 [info] {"source":"oban","duration":497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:08:34.963 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:09:00.004 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:09:04.965 [info] {"source":"oban","duration":1141,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:09:34.966 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:10:00.004 [info] {"source":"oban","duration":247,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:10:04.967 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:10:34.968 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:11:00.004 [info] {"source":"oban","duration":211,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:11:04.969 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:11:35.044 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:12:00.077 [info] {"source":"oban","duration":296,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:12:05.045 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:12:35.047 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:13:00.078 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:13:05.048 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:13:35.049 [info] {"source":"oban","duration":1138,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:14:00.077 [info] {"source":"oban","duration":260,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:14:05.050 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:14:18.617 [info] GET / 03:14:18.617 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:14:18.617 [debug] QUERY OK source="settings" db=0.1ms idle=886.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:14:18.618 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=333.4ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:14:18.618 [debug] QUERY OK source="sources" db=0.2ms idle=333.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:14:18.618 [debug] QUERY OK source="media_items" db=0.0ms idle=334.2ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:14:18.619 [debug] QUERY OK source="media_items" db=0.2ms idle=334.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:14:18.619 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:14:18.620 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:14:18.620 [debug] QUERY OK source="settings" db=0.1ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:14:18.621 [debug] QUERY OK source="tasks" db=0.3ms idle=2.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:14:18.622 [debug] QUERY OK source="media_items" db=0.2ms idle=2.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:14:18.622 [debug] QUERY OK source="media_items" db=0.3ms idle=2.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:14:18.623 [debug] QUERY OK source="sources" db=0.2ms idle=3.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 03:14:18.625 [debug] QUERY OK source="media_items" db=0.2ms idle=4.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 03:14:18.625 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=3.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:14:18.626 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=3.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 03:14:18.627 [info] Sent 200 in 10ms 03:14:35.054 [info] {"source":"oban","duration":2588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:15:00.077 [info] {"source":"oban","duration":213,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:15:05.055 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:15:35.066 [info] {"source":"oban","duration":9823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:00.078 [info] {"source":"oban","duration":213,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:16:05.068 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:35.069 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:17:00.078 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:17:05.071 [info] {"source":"oban","duration":712,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:17:35.072 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:18:00.078 [info] {"source":"oban","duration":215,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:18:05.074 [info] {"source":"oban","duration":744,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:18:35.075 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:19:00.079 [info] {"source":"oban","duration":293,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:19:05.077 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:19:35.079 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:20:00.079 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:20:05.081 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:20:35.081 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:00.078 [info] {"source":"oban","duration":457,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:21:05.083 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:35.085 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:22:00.080 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:22:05.087 [info] {"source":"oban","duration":1202,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:22:35.088 [info] {"source":"oban","duration":692,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:23:00.080 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:23:05.090 [info] {"source":"oban","duration":1137,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:23:35.092 [info] {"source":"oban","duration":854,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:24:00.080 [info] {"source":"oban","duration":199,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:24:05.093 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:24:35.094 [info] {"source":"oban","duration":617,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:25:00.080 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:25:05.097 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:25:35.098 [info] {"source":"oban","duration":1155,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:26:00.081 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:26:05.100 [info] {"source":"oban","duration":1343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:26:35.102 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:27:00.081 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:27:05.104 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:27:35.105 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:28:00.082 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:28:05.106 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:28:35.108 [info] {"source":"oban","duration":740,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:00.082 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:29:05.109 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:35.172 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:30:00.142 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:30:05.174 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:30:35.176 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:31:00.143 [info] {"source":"oban","duration":402,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:31:05.177 [info] {"source":"oban","duration":782,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:31:35.178 [info] {"source":"oban","duration":691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:32:00.144 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:32:05.181 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:32:35.182 [info] {"source":"oban","duration":737,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:33:00.144 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:33:05.184 [info] {"source":"oban","duration":1178,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:33:35.186 [info] {"source":"oban","duration":857,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:34:00.145 [info] {"source":"oban","duration":425,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:34:05.187 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:34:35.188 [info] {"source":"oban","duration":1156,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:35:00.146 [info] {"source":"oban","duration":436,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:35:05.189 [info] {"source":"oban","duration":1179,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:35:35.191 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:36:00.147 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:36:05.192 [info] {"source":"oban","duration":1127,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:36:35.194 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:37:00.147 [info] {"source":"oban","duration":284,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:37:05.196 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:37:35.198 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:38:00.148 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:38:05.200 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:38:35.201 [info] {"source":"oban","duration":1227,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:39:00.149 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:39:05.203 [info] {"source":"oban","duration":775,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:39:35.203 [info] {"source":"oban","duration":481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:40:00.146 [info] {"source":"oban","duration":171,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:40:05.201 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:40:35.206 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:41:00.149 [info] {"source":"oban","duration":427,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:41:05.207 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:41:35.209 [info] {"source":"oban","duration":1151,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:42:00.149 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:42:05.210 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:42:35.213 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:43:00.150 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:43:05.214 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:43:35.215 [info] {"source":"oban","duration":659,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:44:00.151 [info] {"source":"oban","duration":251,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:44:05.217 [info] {"source":"oban","duration":789,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:44:35.231 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:00.192 [info] {"source":"oban","duration":274,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:45:05.261 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:35.267 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:49.190 [info] GET /settings 03:45:49.190 [debug] Processing with PinchflatWeb.Settings.SettingController.show/2 Parameters: %{} Pipelines: [:browser] 03:45:49.190 [debug] QUERY OK source="settings" db=0.2ms idle=751.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:45:49.191 [debug] QUERY OK source="settings" db=0.3ms idle=752.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:45:49.191 [debug] QUERY OK source="settings" db=0.1ms idle=753.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:45:49.192 [debug] QUERY OK source="settings" db=0.1ms idle=753.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:45:49.193 [info] Sent 200 in 3ms 03:46:00.197 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:46:05.269 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:46:35.270 [info] {"source":"oban","duration":673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:46:45.645 [info] GET /app_info 03:46:45.645 [debug] Processing with PinchflatWeb.Settings.SettingController.app_info/2 Parameters: %{} Pipelines: [:browser] 03:46:45.646 [debug] QUERY OK source="settings" db=0.5ms idle=1207.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:46:45.646 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1208.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:46:45.647 [debug] QUERY OK source="settings" db=0.0ms idle=1208.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:46:45.647 [debug] QUERY OK source="settings" db=0.2ms idle=1209.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:46:45.648 [debug] QUERY OK source="settings" db=0.3ms idle=652.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:46:45.649 [info] Sent 200 in 4ms 03:47:00.197 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:47:05.272 [info] {"source":"oban","duration":816,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:47:26.075 [info] GET /sources/1 03:47:26.075 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 03:47:26.076 [debug] QUERY OK source="sources" db=0.2ms idle=1639.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 03:47:26.076 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=995.8ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 03:47:26.077 [debug] QUERY OK source="tasks" db=0.2ms idle=640.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [1, "executing", "available", "scheduled", "retryable"] 03:47:26.077 [debug] QUERY OK source="settings" db=0.1ms idle=640.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:47:26.078 [debug] QUERY OK source="settings" db=0.4ms idle=641.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:47:26.078 [debug] QUERY OK source="settings" db=0.0ms idle=2.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:47:26.080 [debug] QUERY OK source="sources" db=0.1ms idle=3.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 03:47:26.080 [debug] QUERY OK source="media_items" db=0.2ms idle=3.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [1] 03:47:26.081 [debug] QUERY OK source="media_items" db=0.3ms idle=3.1ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 03:47:26.082 [debug] QUERY OK source="sources" db=0.3ms idle=3.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 03:47:26.082 [debug] QUERY OK source="media_items" db=0.1ms idle=2.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 03:47:26.082 [debug] QUERY OK source="media_items" db=0.2ms idle=1.9ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 03:47:26.083 [debug] QUERY OK source="sources" db=0.0ms queue=0.1ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 03:47:26.084 [debug] QUERY OK source="media_items" db=0.4ms idle=1.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) [1] 03:47:26.084 [debug] QUERY OK source="media_items" db=0.4ms idle=2.0ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [1, 10, 0] 03:47:26.085 [info] Sent 200 in 10ms 03:47:35.273 [info] {"source":"oban","duration":1099,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:48:00.197 [info] {"source":"oban","duration":207,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:48:02.924 [info] GET /sources/1/media/3 03:48:02.924 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "3", "source_id" => "1"} Pipelines: [:browser] 03:48:02.924 [debug] QUERY OK source="media_items" db=0.2ms idle=1488.6ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [3] 03:48:02.925 [debug] QUERY OK source="tasks" db=0.2ms idle=1489.1ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [3] 03:48:02.925 [debug] QUERY OK source="sources" db=0.1ms idle=1489.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 03:48:02.925 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=1489.6ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [6] 03:48:02.926 [debug] QUERY OK source="settings" db=0.1ms idle=771.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:48:02.926 [debug] QUERY OK source="settings" db=0.2ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:48:02.927 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:48:02.928 [debug] QUERY OK source="media_profiles" db=0.2ms idle=2.8ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 03:48:02.950 [info] Sent 200 in 26ms 03:48:05.275 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:48:23.168 [info] GET /sources/1/media/7 03:48:23.168 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "7", "source_id" => "1"} Pipelines: [:browser] 03:48:23.169 [debug] QUERY OK source="media_items" db=0.5ms idle=975.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [7] 03:48:23.170 [debug] QUERY OK source="tasks" db=0.2ms idle=734.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [7] 03:48:23.170 [debug] QUERY OK source="sources" db=0.3ms idle=734.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 03:48:23.171 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=734.7ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" = ?) [8] 03:48:23.171 [debug] QUERY OK source="settings" db=0.0ms idle=735.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:48:23.171 [debug] QUERY OK source="settings" db=0.4ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:48:23.172 [debug] QUERY OK source="settings" db=0.1ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:48:23.173 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 03:48:23.175 [info] Sent 200 in 6ms 03:48:35.276 [info] {"source":"oban","duration":731,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:49:00.196 [info] {"source":"oban","duration":271,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:49:05.277 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:49:35.278 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:00.198 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:50:05.279 [info] {"source":"oban","duration":989,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:35.280 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:39.636 [info] GET /media_profiles 03:50:39.636 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 03:50:39.637 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=1204.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", (SELECT count(ss0."id") AS "result" FROM "sources" AS ss0 WHERE (ss0."media_profile_id" = m0."id")) FROM "media_profiles" AS m0 WHERE (m0."marked_for_deletion_at" IS NULL) ORDER BY m0."name" [] 03:50:39.638 [debug] QUERY OK source="settings" db=0.2ms idle=1205.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:50:39.638 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=1205.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:50:39.639 [debug] QUERY OK source="settings" db=0.2ms idle=1178.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:50:39.640 [info] Sent 200 in 3ms 03:51:00.198 [info] {"source":"oban","duration":234,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:51:05.282 [info] {"source":"oban","duration":816,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:51:13.073 [info] GET /sources/1/media/2 03:51:13.073 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2", "source_id" => "1"} Pipelines: [:browser] 03:51:13.074 [debug] QUERY OK source="media_items" db=0.3ms idle=1641.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 WHERE (m0."id" = ?) [2] 03:51:13.074 [debug] QUERY OK source="tasks" db=0.4ms idle=1642.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", t0."media_item_id" FROM "tasks" AS t0 WHERE (t0."media_item_id" = ?) ORDER BY t0."media_item_id" [2] 03:51:13.075 [debug] QUERY OK source="sources" db=0.5ms idle=1548.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 03:51:13.075 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=643.5ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?)) [5, 7, 10] 03:51:13.076 [debug] QUERY OK source="settings" db=0.0ms idle=548.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:51:13.076 [debug] QUERY OK source="settings" db=0.1ms idle=2.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:51:13.077 [debug] QUERY OK source="settings" db=0.1ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:51:13.077 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 03:51:13.079 [info] Sent 200 in 6ms 03:51:35.283 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:51:38.718 [info] GET /sources 03:51:38.718 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 03:51:38.718 [debug] QUERY OK source="settings" db=0.3ms idle=287.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:51:38.719 [debug] QUERY OK source="settings" db=0.1ms idle=287.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:51:38.719 [debug] QUERY OK source="settings" db=0.2ms idle=288.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:51:38.720 [debug] QUERY OK source="settings" db=0.1ms idle=289.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:51:38.720 [debug] QUERY OK source="settings" db=0.1ms idle=136.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:51:38.721 [debug] QUERY OK source="sources" db=0.4ms idle=2.3ms SELECT count(s0."id") FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) [] 03:51:38.722 [debug] QUERY OK source="sources" db=0.7ms queue=0.1ms idle=2.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 03:51:38.724 [info] Sent 200 in 5ms 03:52:00.198 [info] {"source":"oban","duration":289,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:52:05.284 [info] {"source":"oban","duration":753,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:52:35.285 [info] {"source":"oban","duration":770,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:53:00.199 [info] {"source":"oban","duration":412,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:53:05.287 [info] {"source":"oban","duration":1260,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:53:35.289 [info] {"source":"oban","duration":777,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:54:00.199 [info] {"source":"oban","duration":279,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:54:05.291 [info] {"source":"oban","duration":776,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:54:35.291 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:55:00.199 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:55:05.292 [info] {"source":"oban","duration":746,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:55:35.293 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:56:00.199 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:56:05.294 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:56:35.296 [info] {"source":"oban","duration":883,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:57:00.199 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:57:05.297 [info] {"source":"oban","duration":800,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:57:35.298 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:58:00.200 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:58:05.300 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:58:35.301 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:59:00.200 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:59:05.302 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:59:35.304 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:00:00.200 [info] {"source":"oban","duration":493,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:00:05.306 [info] {"source":"oban","duration":1144,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:00:35.306 [info] {"source":"oban","duration":694,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:00.201 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:01:05.309 [info] {"source":"oban","duration":1369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:35.310 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:38.340 [info] GET / 04:01:38.340 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 04:01:38.340 [debug] QUERY OK source="settings" db=0.1ms idle=1923.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:01:38.341 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1923.2ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 04:01:38.341 [debug] QUERY OK source="sources" db=0.1ms idle=1923.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 04:01:38.341 [debug] QUERY OK source="media_items" db=0.0ms idle=1553.9ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:01:38.342 [debug] QUERY OK source="media_items" db=0.2ms idle=552.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:01:38.342 [debug] QUERY OK source="settings" db=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:01:38.342 [debug] QUERY OK source="settings" db=0.1ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:01:38.343 [debug] QUERY OK source="settings" db=0.1ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:01:38.344 [debug] QUERY OK source="tasks" db=0.1ms idle=2.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 04:01:38.344 [debug] QUERY OK source="media_items" db=0.1ms idle=2.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:01:38.345 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=2.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:01:38.345 [debug] QUERY OK source="sources" db=0.1ms queue=0.1ms idle=2.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:01:38.347 [debug] QUERY OK source="media_items" db=0.1ms idle=3.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 04:01:38.348 [debug] QUERY OK source="media_items" db=0.3ms idle=3.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:01:38.348 [debug] QUERY OK source="sources" db=0.1ms idle=3.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:01:38.349 [info] Sent 200 in 9ms 04:01:38.370 [info] GET / 04:01:38.370 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 04:01:38.370 [debug] QUERY OK source="settings" db=0.1ms idle=24.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:01:38.370 [debug] QUERY OK source="media_profiles" db=0.2ms idle=24.8ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 04:01:38.371 [debug] QUERY OK source="sources" db=0.0ms idle=23.5ms SELECT count(s0."id") FROM "sources" AS s0 [] 04:01:38.371 [debug] QUERY OK source="media_items" db=0.0ms idle=23.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:01:38.371 [debug] QUERY OK source="media_items" db=0.0ms idle=22.9ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:01:38.371 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:01:38.372 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:01:38.372 [debug] QUERY OK source="settings" db=0.2ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:01:38.373 [debug] QUERY OK source="tasks" db=0.2ms idle=2.1ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 04:01:38.374 [debug] QUERY OK source="media_items" db=0.2ms idle=2.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:01:38.374 [debug] QUERY OK source="media_items" db=0.2ms idle=2.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:01:38.375 [debug] QUERY OK source="sources" db=0.2ms idle=2.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:01:38.376 [debug] QUERY OK source="media_items" db=0.1ms idle=4.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 04:01:38.377 [debug] QUERY OK source="media_items" db=0.4ms idle=3.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:01:38.378 [debug] QUERY OK source="sources" db=0.2ms idle=3.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:01:38.379 [info] Sent 200 in 9ms 04:02:00.208 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:02:05.319 [info] {"source":"oban","duration":1171,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:02:35.336 [info] {"source":"oban","duration":14336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:03:00.210 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:03:05.338 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:03:35.338 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:04:00.209 [info] {"source":"oban","duration":205,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:04:05.339 [info] {"source":"oban","duration":785,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:04:35.339 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:05:00.208 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:05:05.340 [info] {"source":"oban","duration":805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:05:35.341 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:06:00.208 [info] {"source":"oban","duration":256,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:06:05.343 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:06:35.343 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:07:00.207 [info] {"source":"oban","duration":287,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:07:05.344 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:07:35.345 [info] {"source":"oban","duration":737,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:08:00.207 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:08:05.346 [info] {"source":"oban","duration":1141,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:08:35.347 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:09:00.206 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:09:05.348 [info] {"source":"oban","duration":1092,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:09:35.349 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:10:00.206 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:10:05.350 [info] {"source":"oban","duration":491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:10:35.351 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:11:00.205 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:11:05.352 [info] {"source":"oban","duration":1215,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:11:35.353 [info] {"source":"oban","duration":767,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:12:00.205 [info] {"source":"oban","duration":493,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:12:05.354 [info] {"source":"oban","duration":758,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:12:35.354 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:13:00.205 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:13:05.355 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:13:35.357 [info] {"source":"oban","duration":692,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:14:00.204 [info] {"source":"oban","duration":237,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:14:05.358 [info] {"source":"oban","duration":1207,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:14:35.358 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:15:00.205 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:15:05.360 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:15:35.361 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:16:00.204 [info] {"source":"oban","duration":240,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:16:05.362 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:16:35.363 [info] {"source":"oban","duration":842,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:17:00.203 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:17:05.364 [info] {"source":"oban","duration":728,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:17:35.364 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:18:00.203 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:18:05.365 [info] {"source":"oban","duration":486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:18:35.367 [info] {"source":"oban","duration":1157,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:19:00.203 [info] {"source":"oban","duration":266,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:19:05.367 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:19:35.368 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:20:00.202 [info] {"source":"oban","duration":269,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:20:05.369 [info] {"source":"oban","duration":708,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:20:35.424 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:21:00.256 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:21:05.426 [info] {"source":"oban","duration":758,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:21:35.428 [info] {"source":"oban","duration":1631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:22:00.256 [info] {"source":"oban","duration":237,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:22:05.428 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:22:35.429 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:23:00.255 [info] {"source":"oban","duration":244,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:23:05.430 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:23:35.431 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:00.253 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:24:05.432 [info] {"source":"oban","duration":838,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:35.433 [info] {"source":"oban","duration":913,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:25:00.252 [info] {"source":"oban","duration":283,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:25:05.434 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:25:35.434 [info] {"source":"oban","duration":808,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:25:40.335 [info] GET / 04:25:40.336 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 04:25:40.336 [debug] QUERY OK source="settings" db=0.2ms idle=1895.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:25:40.336 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1895.4ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 04:25:40.337 [debug] QUERY OK source="sources" db=0.1ms queue=0.1ms idle=1895.8ms SELECT count(s0."id") FROM "sources" AS s0 [] 04:25:40.337 [debug] QUERY OK source="media_items" db=0.0ms queue=0.1ms idle=1525.4ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:25:40.337 [debug] QUERY OK source="media_items" db=0.2ms queue=0.1ms idle=523.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:25:40.338 [debug] QUERY OK source="settings" db=0.0ms queue=0.1ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:25:40.338 [debug] QUERY OK source="settings" db=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:25:40.339 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:25:40.339 [debug] QUERY OK source="tasks" db=0.2ms idle=2.0ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 04:25:40.340 [debug] QUERY OK source="media_items" db=0.0ms idle=2.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:25:40.340 [debug] QUERY OK source="media_items" db=0.2ms idle=2.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:25:40.341 [debug] QUERY OK source="sources" db=0.1ms idle=2.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:25:40.342 [debug] QUERY OK source="media_items" db=0.2ms idle=3.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 04:25:40.343 [debug] QUERY OK source="media_items" db=0.4ms idle=3.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:25:40.343 [debug] QUERY OK source="sources" db=0.2ms idle=3.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:25:40.344 [info] Sent 200 in 8ms 04:25:41.506 [info] CONNECTED TO Phoenix.LiveView.Socket in 23µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "NQU5ASwgPX5DDC8THF0aGihSDgkUPzJ7sRJwtfpJrxFBq4bYAeKz_IUL", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 04:25:41.687 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "FWsvXFM41tiQmixCi7EsKvg7", "media_state" => "downloaded"} 04:25:41.688 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=871.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:25:41.688 [debug] QUERY OK source="media_items" db=0.3ms idle=247.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:25:41.689 [debug] QUERY OK source="sources" db=0.3ms idle=248.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:25:41.689 [debug] Replied in 2ms 04:25:41.691 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "FWsvXFM41tiQmixCi7EsKvg7", "media_state" => "pending"} 04:25:41.691 [debug] QUERY OK source="media_items" db=0.1ms queue=0.1ms idle=250.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 04:25:41.692 [debug] QUERY OK source="media_items" db=0.4ms idle=251.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:25:41.692 [debug] QUERY OK source="sources" db=0.1ms idle=4.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:25:41.692 [debug] Replied in 1ms 04:25:41.694 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "FWsvXFM41tiQmixCi7EsKvg7"} 04:25:41.694 [debug] QUERY OK source="tasks" db=0.1ms idle=5.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 04:25:41.694 [debug] Replied in 352µs 04:25:41.694 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "FWsvXFM41tiQmixCi7EsKvg7"} 04:25:41.694 [debug] Replied in 63µs 04:25:45.702 [info] GET / 04:25:45.702 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 04:25:45.702 [debug] QUERY OK source="settings" db=0.2ms idle=877.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:25:45.703 [debug] QUERY OK source="media_profiles" db=0.1ms idle=262.0ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 04:25:45.703 [debug] QUERY OK source="sources" db=0.0ms idle=262.2ms SELECT count(s0."id") FROM "sources" AS s0 [] 04:25:45.703 [debug] QUERY OK source="media_items" db=0.1ms idle=262.3ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:25:45.703 [debug] QUERY OK source="media_items" db=0.0ms idle=262.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:25:45.704 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:25:45.704 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:25:45.704 [debug] QUERY OK source="settings" db=0.3ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:25:45.705 [debug] QUERY OK source="tasks" db=0.2ms idle=1.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 04:25:45.706 [debug] QUERY OK source="media_items" db=0.1ms idle=2.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:25:45.706 [debug] QUERY OK source="media_items" db=0.2ms idle=2.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:25:45.706 [debug] QUERY OK source="sources" db=0.1ms idle=2.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:25:45.708 [debug] QUERY OK source="media_items" db=0.2ms idle=3.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 04:25:45.709 [debug] QUERY OK source="media_items" db=0.6ms idle=3.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:25:45.709 [debug] QUERY OK source="sources" db=0.2ms idle=3.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:25:45.710 [info] Sent 200 in 8ms 04:25:46.831 [info] CONNECTED TO Phoenix.LiveView.Socket in 16µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "Jh5_EC4cV38wJg4GTxs7fQknMlQhRC0tbHNswy14Hvxv8uiMhsmaPwUZ", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://flat.wdm9.m1dg9r.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://flat.wdm9.m1dg9r.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 04:25:47.479 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "DV1cYefKxPvpwnR0aT_5q3xw", "media_state" => "downloaded"} 04:25:47.480 [debug] QUERY OK source="media_items" db=0.2ms idle=649.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:25:47.481 [debug] QUERY OK source="media_items" db=0.5ms idle=39.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:25:47.481 [debug] QUERY OK source="sources" db=0.1ms idle=39.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:25:47.481 [debug] Replied in 1ms 04:25:47.483 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "DV1cYefKxPvpwnR0aT_5q3xw", "media_state" => "pending"} 04:25:47.484 [debug] QUERY OK source="media_items" db=0.2ms idle=42.7ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 04:25:47.484 [debug] QUERY OK source="media_items" db=0.4ms idle=43.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:25:47.485 [debug] QUERY OK source="sources" db=0.2ms idle=4.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:25:47.485 [debug] Replied in 1ms 04:25:47.486 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "DV1cYefKxPvpwnR0aT_5q3xw"} 04:25:47.487 [debug] QUERY OK source="tasks" db=0.1ms idle=5.7ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 04:25:47.487 [debug] Replied in 475µs 04:25:47.487 [debug] MOUNT Pinchflat.UpgradeButtonLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "DV1cYefKxPvpwnR0aT_5q3xw"} 04:25:47.487 [debug] Replied in 90µs 04:26:00.251 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:26:05.434 [info] {"source":"oban","duration":827,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:26:35.435 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:27:00.250 [info] {"source":"oban","duration":416,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:27:05.436 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:27:35.437 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:28:00.248 [info] {"source":"oban","duration":234,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:28:05.437 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:28:35.438 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:29:00.248 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:29:05.439 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:29:35.439 [info] {"source":"oban","duration":1067,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:30:00.247 [info] {"source":"oban","duration":241,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:30:05.440 [info] {"source":"oban","duration":813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:30:35.442 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:31:00.246 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:31:05.443 [info] {"source":"oban","duration":884,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:31:35.443 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:32:00.245 [info] {"source":"oban","duration":248,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:32:05.443 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:32:35.444 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:33:00.243 [info] {"source":"oban","duration":230,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:33:05.445 [info] {"source":"oban","duration":716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:33:35.446 [info] {"source":"oban","duration":648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:34:00.243 [info] {"source":"oban","duration":436,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:34:05.448 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:34:35.449 [info] {"source":"oban","duration":679,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:35:00.243 [info] {"source":"oban","duration":188,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:35:05.450 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:35:35.451 [info] {"source":"oban","duration":613,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:36:00.242 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:36:05.451 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:36:35.453 [info] {"source":"oban","duration":674,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:37:00.240 [info] {"source":"oban","duration":409,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:37:05.454 [info] {"source":"oban","duration":3010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:37:35.456 [info] {"source":"oban","duration":753,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:38:00.241 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:38:05.457 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:38:35.457 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:39:00.240 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:39:05.458 [info] {"source":"oban","duration":884,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:39:35.459 [info] {"source":"oban","duration":850,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:00.239 [info] {"source":"oban","duration":190,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:40:05.459 [info] {"source":"oban","duration":764,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:35.461 [info] {"source":"oban","duration":689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:59.624 [info] GET / 04:40:59.625 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 04:40:59.625 [debug] QUERY OK source="settings" db=0.2ms idle=876.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:40:59.626 [debug] QUERY OK source="media_profiles" db=0.1ms queue=0.1ms idle=213.8ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 04:40:59.626 [debug] QUERY OK source="sources" db=0.1ms idle=214.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 04:40:59.626 [debug] QUERY OK source="media_items" db=0.1ms idle=214.3ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:40:59.626 [debug] QUERY OK source="media_items" db=0.3ms idle=214.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:40:59.627 [debug] QUERY OK source="settings" db=0.2ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:40:59.627 [debug] QUERY OK source="settings" db=0.2ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:40:59.628 [debug] QUERY OK source="settings" db=0.1ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:40:59.629 [debug] QUERY OK source="tasks" db=0.5ms idle=2.6ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 04:40:59.630 [debug] QUERY OK source="media_items" db=0.1ms idle=3.1ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:40:59.630 [debug] QUERY OK source="media_items" db=0.4ms idle=2.8ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:40:59.631 [debug] QUERY OK source="sources" db=0.1ms idle=3.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:40:59.633 [debug] QUERY OK source="media_items" db=0.1ms idle=4.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 04:40:59.633 [debug] QUERY OK source="media_items" db=0.6ms idle=3.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:40:59.634 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=3.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 04:40:59.635 [info] Sent 200 in 10ms 04:40:59.809 [info] GET /%22/assets/app-521b5c83d8b2f79295a25943104e99d5.js 04:40:59.810 [debug] QUERY OK source="settings" db=0.2ms idle=178.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:40:59.810 [debug] QUERY OK source="settings" db=0.1ms queue=0.2ms idle=177.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:40:59.811 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:40:59.811 [error] #PID<0.9609.0> running PinchflatWeb.Endpoint (connection #PID<0.9608.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /%22/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d" ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /%22/assets/app-521b5c83d8b2f79295a25943104e99d5 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9608.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/%22/assets/app-521b5c83d8b2f79295a25943104e99d5.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 49459}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "vsn=d\"", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9609.0>, params: %{"vsn" => "d\""}, path_info: ["%22", "assets", "app-521b5c83d8b2f79295a25943104e99d5"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"vsn" => "d\""}, query_string: "vsn=d\"", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/%22/assets/app-521b5c83d8b2f79295a25943104e99d5.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd19FNHqalZW4AAQpC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9608.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/%22/assets/app-521b5c83d8b2f79295a25943104e99d5.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 49459}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "vsn=d\"", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /%22/assets/app-521b5c83d8b2f79295a25943104e99d5 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9608.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/%22/assets/app-521b5c83d8b2f79295a25943104e99d5.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 49459}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "vsn=d\"", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9609.0>, params: %{"vsn" => "d\""}, path_info: ["%22", "assets", "app-521b5c83d8b2f79295a25943104e99d5"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"vsn" => "d\""}, query_string: "vsn=d\"", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/%22/assets/app-521b5c83d8b2f79295a25943104e99d5.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-a (truncated) 04:40:59.938 [info] GET /.env 04:40:59.938 [debug] QUERY OK source="settings" db=0.4ms idle=304.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:40:59.939 [debug] QUERY OK source="settings" db=0.1ms idle=304.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:40:59.939 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:40:59.939 [error] #PID<0.9613.0> running PinchflatWeb.Endpoint (connection #PID<0.9612.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /.env ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET / (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9612.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 34515}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9613.0>, params: %{}, path_info: [""], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd19jx6Kc678kAAQqC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9612.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 34515}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET / (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9612.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 34515}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9613.0>, params: %{}, path_info: [""], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd19jx6Kc678kAAQqC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_ (truncated) 04:40:59.987 [info] GET /.env 04:40:59.987 [debug] QUERY OK source="settings" db=0.3ms idle=236.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:40:59.988 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=177.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:40:59.988 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:40:59.988 [error] #PID<0.9615.0> running PinchflatWeb.Endpoint (connection #PID<0.9614.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /.env ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET / (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9614.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 56474}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9615.0>, params: %{}, path_info: [""], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd19vfTxLeS5QAAQrC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9614.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 56474}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET / (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9614.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 56474}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9615.0>, params: %{}, path_info: [""], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd19vfTxLeS5QAAQrC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_ (truncated) 04:41:00.035 [info] GET /.env.bak 04:41:00.036 [debug] QUERY OK source="settings" db=0.3ms idle=225.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.037 [debug] QUERY OK source="settings" db=0.3ms idle=97.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.037 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.037 [error] #PID<0.9617.0> running PinchflatWeb.Endpoint (connection #PID<0.9616.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /.env.bak ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9616.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env.bak", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 61658}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9617.0>, params: %{}, path_info: [".env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.env.bak", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd197G6xcC9Q0AAQsC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9616.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env.bak", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 61658}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9616.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env.bak", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 61658}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9617.0>, params: %{}, path_info: [".env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.env.bak", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd197G6xcC9Q0AAQsC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Route (truncated) 04:41:00.080 [info] GET /.env.save 04:41:00.080 [debug] QUERY OK source="settings" db=0.3ms idle=141.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.081 [debug] QUERY OK source="settings" db=0.2ms idle=93.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.081 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.081 [error] #PID<0.9619.0> running PinchflatWeb.Endpoint (connection #PID<0.9618.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /.env.save ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9618.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env.save", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 28157}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9619.0>, params: %{}, path_info: [".env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.env.save", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1-Fn77dlP8AAAQtC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9618.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env.save", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 28157}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9618.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env.save", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 28157}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9619.0>, params: %{}, path_info: [".env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.env.save", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1-Fn77dlP8AAAQtC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: (truncated) 04:41:00.129 [info] GET /backend/.env 04:41:00.130 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=141.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.131 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=94.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.131 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.131 [error] #PID<0.9621.0> running PinchflatWeb.Endpoint (connection #PID<0.9620.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /backend/.env ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /backend/ (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9620.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/backend/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 54846}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9621.0>, params: %{}, path_info: ["backend", ""], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/backend/.env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1-RetauvDvcAAQuC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9620.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/backend/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 54846}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /backend/ (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9620.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/backend/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 54846}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9621.0>, params: %{}, path_info: ["backend", ""], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/backend/.env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1-RetauvDvcAAQuC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 4 (truncated) 04:41:00.181 [info] GET /admin/.env 04:41:00.182 [debug] QUERY OK source="settings" db=0.2ms idle=144.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.182 [debug] QUERY OK source="settings" db=0.1ms idle=101.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.182 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.183 [error] #PID<0.9623.0> running PinchflatWeb.Endpoint (connection #PID<0.9622.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /admin/.env ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /admin/ (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9622.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/admin/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 22583}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9623.0>, params: %{}, path_info: ["admin", ""], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/admin/.env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1-d3eL6MvW4AAQvC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9622.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/admin/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 22583}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /admin/ (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9622.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/admin/.env", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 22583}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9623.0>, params: %{}, path_info: ["admin", ""], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/admin/.env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1-d3eL6MvW4AAQvC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoen (truncated) 04:41:00.227 [info] GET /.git/config 04:41:00.228 [debug] QUERY OK source="settings" db=0.2ms idle=146.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.228 [debug] QUERY OK source="settings" db=0.0ms idle=98.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.228 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.229 [error] #PID<0.9625.0> running PinchflatWeb.Endpoint (connection #PID<0.9624.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /.git/config ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9624.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 44251}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9625.0>, params: %{}, path_info: [".git", "config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.git/config", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1-o4bapLDFYAAQwC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9624.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 44251}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9624.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 44251}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9625.0>, params: %{}, path_info: [".git", "config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.git/config", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1-o4bapLDFYAAQwC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: (truncated) 04:41:00.238 [info] {"source":"oban","duration":191,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:41:00.277 [info] GET /wp-config.php 04:41:00.278 [debug] QUERY OK source="settings" db=0.1ms idle=95.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.278 [debug] QUERY OK source="settings" db=0.2ms idle=95.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.278 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.279 [error] #PID<0.9627.0> running PinchflatWeb.Endpoint (connection #PID<0.9626.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /wp-config.php ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9626.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-config.php", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 23904}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9627.0>, params: %{}, path_info: ["wp-config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/wp-config.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1-0r-6vbIn4AAguB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9626.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-config.php", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 23904}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9626.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-config.php", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 23904}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9627.0>, params: %{}, path_info: ["wp-config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/wp-config.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1-0r-6vbIn4AAguB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, statu (truncated) 04:41:00.326 [info] GET /wp-config.php.old 04:41:00.326 [debug] QUERY OK source="settings" db=0.2ms idle=97.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.327 [debug] QUERY OK source="settings" db=0.3ms idle=98.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.327 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.327 [error] #PID<0.9629.0> running PinchflatWeb.Endpoint (connection #PID<0.9628.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /wp-config.php.old ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-config.php (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9628.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-config.php.old", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 48381}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9629.0>, params: %{}, path_info: ["wp-config.php"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/wp-config.php.old", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_ASfQgQ2OMAAQxC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9628.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-config.php.old", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 48381}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-config.php (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9628.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-config.php.old", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 48381}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9629.0>, params: %{}, path_info: ["wp-config.php"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/wp-config.php.old", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_ASfQgQ2OMAAQxC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {Pinc (truncated) 04:41:00.375 [info] GET /config.php 04:41:00.376 [debug] QUERY OK source="settings" db=0.3ms idle=138.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.376 [debug] QUERY OK source="settings" db=0.2ms idle=98.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.377 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.377 [error] #PID<0.9631.0> running PinchflatWeb.Endpoint (connection #PID<0.9630.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /config.php ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9630.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.php", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 45088}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9631.0>, params: %{}, path_info: ["config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/config.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_MH_5yjMTUAAQyC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9630.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.php", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 45088}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9630.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.php", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 45088}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9631.0>, params: %{}, path_info: ["config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/config.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_MH_5yjMTUAAQyC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, (truncated) 04:41:00.420 [info] GET /config.php.bak 04:41:00.421 [debug] QUERY OK source="settings" db=0.1ms idle=142.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.421 [debug] QUERY OK source="settings" db=0.3ms idle=94.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.421 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.422 [error] #PID<0.9633.0> running PinchflatWeb.Endpoint (connection #PID<0.9632.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /config.php.bak ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /config.php (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9632.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.php.bak", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 21788}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9633.0>, params: %{}, path_info: ["config.php"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/config.php.bak", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_W5OvD7iyYAAQzC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9632.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.php.bak", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 21788}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /config.php (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9632.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.php.bak", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 21788}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9633.0>, params: %{}, path_info: ["config.php"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/config.php.bak", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_W5OvD7iyYAAQzC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_build (truncated) 04:41:00.463 [info] GET /config.js 04:41:00.464 [debug] QUERY OK source="settings" db=0.3ms idle=136.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.464 [debug] QUERY OK source="settings" db=0.2ms idle=88.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.465 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.465 [error] #PID<0.9635.0> running PinchflatWeb.Endpoint (connection #PID<0.9634.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /config.js ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9634.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 38954}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9635.0>, params: %{}, path_info: ["config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/config.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_hHjTnFhIMAAgvB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9634.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 38954}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9634.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 38954}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9635.0>, params: %{}, path_info: ["config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/config.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_hHjTnFhIMAAgvB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_w (truncated) 04:41:00.509 [info] GET /aws-config.js 04:41:00.510 [debug] QUERY OK source="settings" db=0.2ms idle=133.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.510 [debug] QUERY OK source="settings" db=0.2ms idle=88.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.510 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.511 [error] #PID<0.9637.0> running PinchflatWeb.Endpoint (connection #PID<0.9636.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /aws-config.js ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /aws-config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9636.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/aws-config.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 53333}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9637.0>, params: %{}, path_info: ["aws-config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/aws-config.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_sFyndiqp8AAgwB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9636.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/aws-config.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 53333}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /aws-config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9636.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/aws-config.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 53333}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9637.0>, params: %{}, path_info: ["aws-config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/aws-config.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_sFyndiqp8AAgwB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [fil (truncated) 04:41:00.558 [info] GET /aws.config.js 04:41:00.559 [debug] QUERY OK source="settings" db=0.2ms idle=137.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.559 [debug] QUERY OK source="settings" db=0.1ms idle=95.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.559 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.560 [error] #PID<0.9639.0> running PinchflatWeb.Endpoint (connection #PID<0.9638.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /aws.config.js ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /aws.config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9638.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/aws.config.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 54148}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9639.0>, params: %{}, path_info: ["aws.config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/aws.config.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_3yF6TYmBoAAgxB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9638.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/aws.config.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 54148}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /aws.config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9638.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/aws.config.js", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 54148}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9639.0>, params: %{}, path_info: ["aws.config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/aws.config.js", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd1_3yF6TYmBoAAgxB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_cal (truncated) 04:41:00.608 [info] GET /.git/HEAD 04:41:00.609 [debug] QUERY OK source="settings" db=0.1ms idle=144.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.609 [debug] QUERY OK source="settings" db=0.1ms idle=99.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.609 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.610 [error] #PID<0.9641.0> running PinchflatWeb.Endpoint (connection #PID<0.9640.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /.git/HEAD ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/HEAD (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9640.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/HEAD", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 30937}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9641.0>, params: %{}, path_info: [".git", "HEAD"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.git/HEAD", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd2ADrzwyDSfwAAgyB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9640.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/HEAD", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 30937}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/HEAD (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9640.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/HEAD", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 30937}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9641.0>, params: %{}, path_info: [".git", "HEAD"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.git/HEAD", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd2ADrzwyDSfwAAgyB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Rou (truncated) 04:41:00.651 [info] GET /.git/config 04:41:00.652 [debug] QUERY OK source="settings" db=0.3ms idle=141.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.652 [debug] QUERY OK source="settings" db=0.1ms queue=0.2ms idle=92.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:41:00.653 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:41:00.653 [error] #PID<0.9643.0> running PinchflatWeb.Endpoint (connection #PID<0.9642.0>, stream id 1) terminated Server: flat.wdm9.m1dg9r.org:80 (http) Request: GET /.git/config ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9642.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 43242}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9643.0>, params: %{}, path_info: [".git", "config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.git/config", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd2AN6Mz_kt30AAgzB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {Plug.Cowboy.Handler, :init, 2, [file: ~c"lib/plug/cowboy/handler.ex", line: 11]}, {:cowboy_handler, :execute, 2, [file: ~c"/app/deps/cowboy/src/cowboy_handler.erl", line: 37]}, {:cowboy_stream_h, :execute, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 310]}, {:cowboy_stream_h, :request_process, 3, [file: ~c"/app/deps/cowboy/src/cowboy_stream_h.erl", line: 299]}, {:proc_lib, :init_p_do_apply, 3, [file: ~c"proc_lib.erl", line: 329]} ], kind: :error, conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9642.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 43242}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.9642.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "flat.wdm9.m1dg9r.org", peer: {{172, 66, 169, 148}, 43242}, bindings: %{}, sock: {{172, 19, 0, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "upgrade", "host" => "flat.wdm9.m1dg9r.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "x-forwarded-for" => "93.123.109.214", "x-forwarded-proto" => "https", "x-real-ip" => "93.123.109.214" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "flat.wdm9.m1dg9r.org", method: "GET", owner: #PID<0.9643.0>, params: %{}, path_info: [".git", "config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://flat.wdm9.m1dg9r.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {172, 66, 169, 148}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "upgrade"}, {"host", "flat.wdm9.m1dg9r.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"}, {"x-forwarded-for", "93.123.109.214"}, {"x-forwarded-proto", "https"}, {"x-real-ip", "93.123.109.214"} ], request_path: "/.git/config", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJtd2AN6Mz_kt30AAgzB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ (truncated) 04:41:05.461 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:41:35.462 [info] {"source":"oban","duration":646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:42:00.237 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:42:05.464 [info] {"source":"oban","duration":1531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:42:35.465 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:43:00.236 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:43:05.466 [info] {"source":"oban","duration":772,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:43:35.575 [info] {"source":"oban","duration":647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:44:00.345 [info] {"source":"oban","duration":256,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:44:05.576 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:44:35.577 [info] {"source":"oban","duration":733,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:45:00.345 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:45:05.578 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:45:35.579 [info] {"source":"oban","duration":727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:46:00.344 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:46:05.580 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:46:35.581 [info] {"source":"oban","duration":742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:47:00.343 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:47:05.583 [info] {"source":"oban","duration":1136,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:47:35.583 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:48:00.343 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:48:05.584 [info] {"source":"oban","duration":634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:48:35.586 [info] {"source":"oban","duration":748,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:49:00.342 [info] {"source":"oban","duration":209,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:49:05.587 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:49:35.587 [info] {"source":"oban","duration":760,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:50:00.341 [info] {"source":"oban","duration":213,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:50:05.589 [info] {"source":"oban","duration":730,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:50:35.590 [info] {"source":"oban","duration":745,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:51:00.341 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:51:05.591 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:51:35.592 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:00.341 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:52:05.593 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:35.594 [info] {"source":"oban","duration":756,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:53:00.341 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:53:05.595 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:53:35.596 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:54:00.340 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:54:05.597 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:54:35.598 [info] {"source":"oban","duration":829,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:55:00.340 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:55:05.600 [info] {"source":"oban","duration":869,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:55:35.600 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:56:00.340 [info] {"source":"oban","duration":246,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:56:05.600 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:56:35.602 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:57:00.339 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:57:05.602 [info] {"source":"oban","duration":645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:57:35.603 [info] {"source":"oban","duration":754,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:58:00.339 [info] {"source":"oban","duration":256,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:58:05.605 [info] {"source":"oban","duration":1228,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:58:35.606 [info] {"source":"oban","duration":1170,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:59:00.339 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:59:05.607 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:59:35.607 [info] {"source":"oban","duration":682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:00:00.338 [info] {"source":"oban","duration":208,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:00:05.608 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:00:35.608 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:00.337 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:01:05.610 [info] {"source":"oban","duration":841,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:35.610 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:02:00.336 [info] {"source":"oban","duration":216,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:02:05.612 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:02:35.613 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:03:00.335 [info] {"source":"oban","duration":260,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:03:05.614 [info] {"source":"oban","duration":634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:03:35.615 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:04:00.335 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:04:05.616 [info] {"source":"oban","duration":786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:04:35.617 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:05:00.334 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:05:05.618 [info] {"source":"oban","duration":853,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:05:35.618 [info] {"source":"oban","duration":467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:06:00.332 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:06:05.619 [info] {"source":"oban","duration":766,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:06:35.620 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:07:00.422 [info] {"source":"oban","duration":423,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:07:05.712 [info] {"source":"oban","duration":1070,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:07:35.713 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:08:00.421 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:08:05.715 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:08:35.715 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:09:00.421 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:09:05.716 [info] {"source":"oban","duration":668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:09:35.717 [info] {"source":"oban","duration":665,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:10:00.420 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:10:05.718 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:10:35.719 [info] {"source":"oban","duration":691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:11:00.419 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:11:05.720 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:11:35.722 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:12:00.418 [info] {"source":"oban","duration":256,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:12:05.723 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:12:35.724 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:00.418 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:13:05.725 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:35.725 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:58.800 [info] GET /sources/new 05:13:58.800 [debug] Processing with PinchflatWeb.Sources.SourceController.new/2 Parameters: %{} Pipelines: [:browser] 05:13:58.800 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1249.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 05:13:58.801 [debug] QUERY OK source="settings" db=0.2ms idle=1250.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 05:13:58.801 [debug] QUERY OK source="settings" db=0.1ms idle=1250.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 05:13:58.801 [debug] QUERY OK source="settings" db=0.1ms idle=1251.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 05:13:58.802 [debug] QUERY OK source="settings" db=0.1ms idle=964.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 05:13:58.803 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 05:13:58.805 [info] Sent 200 in 5ms 05:13:59.299 [info] GET /sources/1/edit 05:13:59.299 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 05:13:59.299 [debug] QUERY OK source="sources" db=0.1ms idle=497.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 05:13:59.300 [debug] QUERY OK source="media_profiles" db=0.2ms idle=497.8ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 05:13:59.300 [debug] QUERY OK source="settings" db=0.4ms idle=497.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 05:13:59.301 [debug] QUERY OK source="settings" db=0.3ms idle=497.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 05:13:59.301 [debug] QUERY OK source="settings" db=0.1ms idle=460.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 05:13:59.304 [info] Sent 200 in 5ms 05:14:00.418 [info] {"source":"oban","duration":380,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:14:05.727 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0}