20:25:10.187 [info] GET /about.php 20:25:10.188 [debug] QUERY OK source="settings" db=0.3ms idle=62.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 [] 20:25:10.188 [debug] QUERY OK source="settings" db=0.3ms idle=34.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 [] 20:25:10.188 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.189 [error] #PID<0.331600.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 114) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /about.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 /about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 114, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331600.0>, params: %{}, path_info: ["about"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/about.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxAL3z7wCSWYAObbB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 114, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 114, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331600.0>, params: %{}, path_info: ["about"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/about.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxAL3z7wCSWYAObbB"} ], 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 (truncated) 20:25:10.223 [info] GET /wp-content/themes/deeto/login.php 20:25:10.224 [debug] QUERY OK source="settings" db=0.1ms idle=69.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 [] 20:25:10.224 [debug] QUERY OK source="settings" db=0.2ms idle=46.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 [] 20:25:10.224 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.225 [error] #PID<0.331601.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 115) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-content/themes/deeto/login.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-content/themes/deeto/login (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/themes/deeto/login.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 115, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331601.0>, params: %{}, path_info: ["wp-content", "themes", "deeto", "login"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/themes/deeto/login.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxAUfgF_d_-oAObcB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/themes/deeto/login.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 115, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-content/themes/deeto/login (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/themes/deeto/login.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 115, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331601.0>, params: %{}, path_info: ["wp-content", "themes", "deeto", "login"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/themes/deeto/login.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxAUfgF_d_-oAObcB"} ], scheme: :http, scri (truncated) 20:25:10.255 [info] GET /v2.php 20:25:10.256 [debug] QUERY OK source="settings" db=0.2ms idle=70.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 [] 20:25:10.256 [debug] QUERY OK source="settings" db=0.2ms idle=68.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 [] 20:25:10.256 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.257 [error] #PID<0.331602.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 116) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /v2.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 /v2 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 116, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331602.0>, params: %{}, path_info: ["v2"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/v2.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxAcICbvTbJkAObdB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 116, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /v2 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 116, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331602.0>, params: %{}, path_info: ["v2"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/v2.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxAcICbvTbJkAObdB"} ], 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 (truncated) 20:25:10.289 [info] GET /wp-content/themes/hideo/network.php 20:25:10.290 [debug] QUERY OK source="settings" db=0.2ms idle=101.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 [] 20:25:10.291 [debug] QUERY OK source="settings" db=0.1ms idle=66.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 [] 20:25:10.291 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.291 [error] #PID<0.331604.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 117) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-content/themes/hideo/network.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-content/themes/hideo/network (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/themes/hideo/network.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 117, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331604.0>, params: %{}, path_info: ["wp-content", "themes", "hideo", "network"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/themes/hideo/network.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxAkTc9YYr3UAObeB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/themes/hideo/network.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 117, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-content/themes/hideo/network (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/themes/hideo/network.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 117, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331604.0>, params: %{}, path_info: ["wp-content", "themes", "hideo", "network"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/themes/hideo/network.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxAkTc9YYr3UAObeB"} ], scheme: : (truncated) 20:25:10.323 [info] GET /x/ 20:25:10.324 [debug] QUERY OK source="settings" db=0.2ms idle=99.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 [] 20:25:10.325 [debug] QUERY OK source="settings" db=0.3ms idle=68.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 [] 20:25:10.325 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.325 [error] #PID<0.331605.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 118) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /x/ ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /x (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/x/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 118, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331605.0>, params: %{}, path_info: ["x"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/x/", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxAsZ55F9r5IAObfB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/x/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 118, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /x (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/x/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 118, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331605.0>, params: %{}, path_info: ["x"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/x/", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxAsZ55F9r5IAObfB"} ], 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.En (truncated) 20:25:10.357 [info] GET /.cache/x.php 20:25:10.358 [debug] QUERY OK source="settings" db=0.3ms idle=101.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 [] 20:25:10.359 [debug] QUERY OK source="settings" db=0.2ms idle=68.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 [] 20:25:10.359 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.359 [error] #PID<0.331606.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 119) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /.cache/x.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 /.cache/x (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.cache/x.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 119, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331606.0>, params: %{}, path_info: [".cache", "x"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/.cache/x.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxA0hBF_SCBEAObgB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.cache/x.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 119, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.cache/x (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.cache/x.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 119, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331606.0>, params: %{}, path_info: [".cache", "x"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/.cache/x.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxA0hBF_SCBEAObgB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, (truncated) 20:25:10.392 [info] GET /dr.php 20:25:10.392 [debug] QUERY OK source="settings" db=0.2ms idle=101.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 [] 20:25:10.393 [debug] QUERY OK source="settings" db=0.2ms idle=68.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 [] 20:25:10.393 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.393 [error] #PID<0.331607.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 120) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /dr.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 /dr (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dr.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 120, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331607.0>, params: %{}, path_info: ["dr"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/dr.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxA8qsAKjjm0AObhB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dr.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 120, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /dr (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dr.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 120, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331607.0>, params: %{}, path_info: ["dr"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/dr.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxA8qsAKjjm0AObhB"} ], 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 (truncated) 20:25:10.426 [info] GET /raw.php 20:25:10.427 [debug] QUERY OK source="settings" db=0.3ms idle=101.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 [] 20:25:10.427 [debug] QUERY OK source="settings" db=0.3ms idle=68.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 [] 20:25:10.427 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.428 [error] #PID<0.331608.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 121) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /raw.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 /raw (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/raw.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 121, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331608.0>, params: %{}, path_info: ["raw"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/raw.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBE0Uer5dGAAObiB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/raw.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 121, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /raw (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/raw.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 121, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331608.0>, params: %{}, path_info: ["raw"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/raw.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBE0Uer5dGAAObiB"} ], 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", (truncated) 20:25:10.461 [info] GET /wp-includes/css/about.php 20:25:10.462 [debug] QUERY OK source="settings" db=0.3ms idle=103.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 [] 20:25:10.463 [debug] QUERY OK source="settings" db=0.3ms idle=70.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 [] 20:25:10.463 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.463 [error] #PID<0.331609.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 122) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-includes/css/about.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-includes/css/about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-includes/css/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 122, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331609.0>, params: %{}, path_info: ["wp-includes", "css", "about"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-includes/css/about.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBNT7U9xc3cAObjB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-includes/css/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 122, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-includes/css/about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-includes/css/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 122, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331609.0>, params: %{}, path_info: ["wp-includes", "css", "about"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-includes/css/about.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBNT7U9xc3cAObjB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, statu (truncated) 20:25:10.494 [info] GET /wp-content/index.php 20:25:10.495 [debug] QUERY OK source="settings" db=0.3ms idle=101.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 [] 20:25:10.496 [debug] QUERY OK source="settings" db=0.3ms idle=68.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 [] 20:25:10.496 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.496 [error] #PID<0.331610.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 123) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-content/index.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-content/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 123, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331610.0>, params: %{}, path_info: ["wp-content", "index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBVHXF-1ds4AHifC"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 123, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-content/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 123, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331610.0>, params: %{}, path_info: ["wp-content", "index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBVHXF-1ds4AHifC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router (truncated) 20:25:10.528 [info] GET /ioxi-o2.php 20:25:10.529 [debug] QUERY OK source="settings" db=0.3ms idle=101.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 [] 20:25:10.530 [debug] QUERY OK source="settings" db=0.2ms idle=67.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 [] 20:25:10.530 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.530 [error] #PID<0.331611.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 124) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ioxi-o2.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 /ioxi-o2 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ioxi-o2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 124, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331611.0>, params: %{}, path_info: ["ioxi-o2"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ioxi-o2.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBdSJMNIQDwAObkB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ioxi-o2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 124, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ioxi-o2 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ioxi-o2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 124, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331611.0>, params: %{}, path_info: ["ioxi-o2"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ioxi-o2.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBdSJMNIQDwAObkB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: (truncated) 20:25:10.562 [info] GET /dropdown.php 20:25:10.563 [debug] QUERY OK source="settings" db=0.3ms idle=99.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 [] 20:25:10.564 [debug] QUERY OK source="settings" db=0.2ms idle=68.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 [] 20:25:10.564 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.564 [error] #PID<0.331612.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 125) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /dropdown.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 /dropdown (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dropdown.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 125, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331612.0>, params: %{}, path_info: ["dropdown"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/dropdown.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBlYqx_E1SYAOblB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dropdown.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 125, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /dropdown (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dropdown.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 125, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331612.0>, params: %{}, path_info: ["dropdown"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/dropdown.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBlYqx_E1SYAOblB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, (truncated) 20:25:10.602 [info] GET /dlu.php 20:25:10.603 [debug] QUERY OK source="settings" db=0.3ms idle=106.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 [] 20:25:10.604 [debug] QUERY OK source="settings" db=0.2ms 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 [] 20:25:10.604 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.604 [error] #PID<0.331613.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 126) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /dlu.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 /dlu (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dlu.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 126, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331613.0>, params: %{}, path_info: ["dlu"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/dlu.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBu4bwhwvG4AObmB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dlu.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 126, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /dlu (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dlu.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 126, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331613.0>, params: %{}, path_info: ["dlu"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/dlu.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBu4bwhwvG4AObmB"} ], 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", (truncated) 20:25:10.623 [info] GET /wp-content/about.php 20:25:10.624 [debug] QUERY OK source="settings" db=0.3ms idle=93.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 [] 20:25:10.624 [debug] QUERY OK source="settings" db=0.3ms 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 [] 20:25:10.624 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.625 [error] #PID<0.331614.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 127) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-content/about.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-content/about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 127, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331614.0>, params: %{}, path_info: ["wp-content", "about"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/about.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBzzW3-N_DUAObnB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 127, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-content/about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 127, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331614.0>, params: %{}, path_info: ["wp-content", "about"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/about.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxBzzW3-N_DUAObnB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router (truncated) 20:25:10.656 [info] GET /db.php 20:25:10.657 [debug] QUERY OK source="settings" db=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 [] 20:25:10.657 [debug] QUERY OK source="settings" db=0.2ms idle=54.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 [] 20:25:10.658 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.658 [error] #PID<0.331615.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 128) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /db.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 /db (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/db.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 128, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331615.0>, params: %{}, path_info: ["db"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/db.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxB7yQS2N8dAAOboB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/db.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 128, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /db (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/db.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 128, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331615.0>, params: %{}, path_info: ["db"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/db.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxB7yQS2N8dAAOboB"} ], 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 (truncated) 20:25:10.690 [info] GET /packed.php 20:25:10.691 [debug] QUERY OK source="settings" db=0.3ms idle=87.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 [] 20:25:10.692 [debug] QUERY OK source="settings" db=0.2ms idle=67.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 [] 20:25:10.692 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.692 [error] #PID<0.331616.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 129) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /packed.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 /packed (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/packed.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 129, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331616.0>, params: %{}, path_info: ["packed"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/packed.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCD5M2k0DZoAObpB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/packed.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 129, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /packed (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/packed.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 129, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331616.0>, params: %{}, path_info: ["packed"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/packed.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCD5M2k0DZoAObpB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/p (truncated) 20:25:10.736 [info] GET /wp-configs.php 20:25:10.737 [debug] QUERY OK source="settings" db=0.2ms idle=112.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 [] 20:25:10.737 [debug] QUERY OK source="settings" db=0.3ms idle=79.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 [] 20:25:10.737 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.738 [error] #PID<0.331617.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 130) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-configs.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-configs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-configs.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 130, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331617.0>, params: %{}, path_info: ["wp-configs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-configs.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCOwKj092ZAAObqB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-configs.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 130, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-configs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-configs.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 130, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331617.0>, params: %{}, path_info: ["wp-configs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-configs.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCOwKj092ZAAObqB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Rou (truncated) 20:25:10.767 [info] GET /404.php 20:25:10.768 [debug] QUERY OK source="settings" db=0.3ms idle=110.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 [] 20:25:10.768 [debug] QUERY OK source="settings" db=0.2ms idle=76.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 [] 20:25:10.768 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.769 [error] #PID<0.331618.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 131) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /404.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 /404 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/404.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 131, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331618.0>, params: %{}, path_info: ["404"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/404.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCWMkUS4pyAAObrB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/404.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 131, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /404 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/404.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 131, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331618.0>, params: %{}, path_info: ["404"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/404.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCWMkUS4pyAAObrB"} ], 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", (truncated) 20:25:10.802 [info] GET /des.php 20:25:10.803 [debug] QUERY OK source="settings" db=0.2ms idle=110.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 [] 20:25:10.803 [debug] QUERY OK source="settings" db=0.3ms idle=66.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 [] 20:25:10.803 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.804 [error] #PID<0.331619.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 132) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /des.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 /des (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/des.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 132, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331619.0>, params: %{}, path_info: ["des"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/des.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCegoy2OlhEAObsB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/des.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 132, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /des (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/des.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 132, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331619.0>, params: %{}, path_info: ["des"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/des.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCegoy2OlhEAObsB"} ], 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", (truncated) 20:25:10.836 [info] GET /.well-known/content.php 20:25:10.836 [debug] QUERY OK source="settings" db=0.3ms idle=98.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 [] 20:25:10.837 [debug] QUERY OK source="settings" db=0.3ms idle=68.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 [] 20:25:10.837 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.838 [error] #PID<0.331620.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 133) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /.well-known/content.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 /.well-known/content (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.well-known/content.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 133, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331620.0>, params: %{}, path_info: [".well-known", "content"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/.well-known/content.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCmfj4KfKUwAObtB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.well-known/content.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 133, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.well-known/content (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.well-known/content.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 133, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331620.0>, params: %{}, path_info: [".well-known", "content"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/.well-known/content.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCmfj4KfKUwAObtB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, (truncated) 20:25:10.868 [info] GET /lufix.php 20:25:10.869 [debug] QUERY OK source="settings" db=0.2ms idle=100.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 [] 20:25:10.869 [debug] QUERY OK source="settings" db=0.3ms 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 [] 20:25:10.869 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 20:25:10.870 [error] #PID<0.331621.0> running PinchflatWeb.Endpoint (connection #PID<0.331485.0>, stream id 134) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /lufix.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 /lufix (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lufix.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 134, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331621.0>, params: %{}, path_info: ["lufix"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/lufix.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCuPAFyc-ukAObuB"} ], 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.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lufix.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 134, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /lufix (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.331485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lufix.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 44766}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 134, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.331621.0>, params: %{}, path_info: ["lufix"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/lufix.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8VxCuPAFyc-ukAObuB"} ], 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 (truncated) 20:25:23.125 [info] {"source":"oban","duration":1524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:25:53.127 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:26:00.214 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:26:23.129 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:26:53.131 [info] {"source":"oban","duration":1379,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:27:00.215 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:27:23.133 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:27:53.135 [info] {"source":"oban","duration":1156,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:28:00.216 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:28:23.137 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:28:53.139 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:29:00.217 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:29:23.141 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:29:53.143 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:30:00.218 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:30:23.145 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:30:53.147 [info] {"source":"oban","duration":1263,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:31:00.219 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:31:23.148 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:31:53.151 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:32:00.220 [info] {"source":"oban","duration":355,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:32:23.152 [info] {"source":"oban","duration":908,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:32:53.155 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:33:00.221 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:33:23.157 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:33:53.159 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:34:00.222 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:34:23.161 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:34:53.163 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:35:00.223 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:35:23.165 [info] {"source":"oban","duration":1341,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:35:53.167 [info] {"source":"oban","duration":1119,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:36:00.227 [info] {"source":"oban","duration":2203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:36:23.169 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:36:53.171 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:37:00.229 [info] {"source":"oban","duration":381,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:37:23.173 [info] {"source":"oban","duration":1325,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:37:53.175 [info] {"source":"oban","duration":1179,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:38:00.230 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:38:23.177 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:38:53.179 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:39:00.231 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:39:23.181 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:39:53.182 [info] {"source":"oban","duration":768,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:40:00.232 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:40:23.183 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:40:53.186 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:41:00.233 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:41:23.188 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:41:53.190 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:42:00.234 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:42:23.192 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:42:53.194 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:43:00.235 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:43:23.196 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:43:53.198 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:44:00.236 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:44:23.200 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:44:53.202 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:45:00.237 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:45:23.204 [info] {"source":"oban","duration":1202,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:45:53.206 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:46:00.238 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:46:23.208 [info] {"source":"oban","duration":1202,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:46:53.210 [info] {"source":"oban","duration":1064,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:47:00.239 [info] {"source":"oban","duration":258,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:47:23.212 [info] {"source":"oban","duration":1136,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:47:53.214 [info] {"source":"oban","duration":1204,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:48:00.240 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:48:23.216 [info] {"source":"oban","duration":1081,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:48:53.218 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:49:00.241 [info] {"source":"oban","duration":390,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:49:23.220 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:49:53.222 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:00.242 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:50:23.224 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:53.226 [info] {"source":"oban","duration":1567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:51:00.243 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:51:23.228 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:51:53.230 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:52:00.245 [info] {"source":"oban","duration":1008,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:52:23.232 [info] {"source":"oban","duration":1355,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:52:53.234 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:53:00.246 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:53:23.236 [info] {"source":"oban","duration":1217,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:53:53.238 [info] {"source":"oban","duration":1200,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:54:00.247 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:54:23.240 [info] {"source":"oban","duration":1168,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:54:53.242 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:55:00.248 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:55:23.244 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:55:53.246 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:56:00.249 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:56:23.248 [info] {"source":"oban","duration":1017,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:56:53.250 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:57:00.250 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:57:23.252 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:57:53.254 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:00.251 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:58:23.256 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:53.258 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:59:00.252 [info] {"source":"oban","duration":382,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:59:23.260 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:59:53.262 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:00:00.253 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:00:23.264 [info] {"source":"oban","duration":1559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:00:53.266 [info] {"source":"oban","duration":1520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:01:00.254 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:01:23.268 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:01:53.270 [info] {"source":"oban","duration":1375,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:02:00.255 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:02:23.272 [info] {"source":"oban","duration":1689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:02:53.275 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:03:00.256 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:03:23.277 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:03:53.279 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:04:00.257 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:04:23.281 [info] {"source":"oban","duration":1122,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:04:53.283 [info] {"source":"oban","duration":1066,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:05:00.258 [info] {"source":"oban","duration":423,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:05:23.285 [info] {"source":"oban","duration":1207,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:05:53.287 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:06:00.259 [info] {"source":"oban","duration":492,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:06:23.289 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:06:53.292 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:07:00.260 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:07:23.294 [info] {"source":"oban","duration":1355,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:07:53.296 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:08:00.261 [info] {"source":"oban","duration":407,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:08:23.298 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:08:53.300 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:09:00.262 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:09:23.302 [info] {"source":"oban","duration":1204,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:09:53.304 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:10:00.263 [info] {"source":"oban","duration":463,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:10:23.306 [info] {"source":"oban","duration":1253,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:10:53.307 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:11:00.265 [info] {"source":"oban","duration":1223,"event":"plugin:stop","jobs":[2971],"plugin":"Oban.Plugins.Cron"} 21:11:00.272 [info] {"args":{},"id":2971,"meta":{"cron":true,"cron_expr":"11 4 * * *","cron_tz":"Etc/UTC"},"system_time":1769659860272326590,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","event":"job:start","attempt":1,"tags":["local_data"]} 21:11:00.272 [info] Updating yt-dlp 21:11:00.272 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update 21:11:02.005 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update exited: 0 with: Latest version: stable@2025.12.08 from yt-dlp/yt-dlp yt-dlp is up to date (stable@2025.12.08 from yt-dlp/yt-dlp) 21:11:02.006 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 21:11:03.413 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2025.12.08 21:11:03.413 [debug] QUERY OK source="settings" db=0.3ms idle=1410.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 [] 21:11:03.414 [info] {"args":{},"id":2971,"meta":{"cron":true,"cron_expr":"11 4 * * *","cron_tz":"Etc/UTC"},"state":"success","max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","duration":3141546,"event":"job:stop","queue_time":270913,"attempt":1,"tags":["local_data"]} 21:11:23.310 [info] {"source":"oban","duration":1176,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:11:53.312 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:12:00.266 [info] {"source":"oban","duration":266,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:12:23.314 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:12:53.316 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:13:00.267 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:13:23.317 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:13:53.320 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:14:00.268 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:14:23.322 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:14:53.324 [info] {"source":"oban","duration":1662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:15:00.269 [info] {"source":"oban","duration":272,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:15:23.327 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:15:53.329 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:16:00.270 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:16:23.331 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:16:53.333 [info] {"source":"oban","duration":1575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:17:00.271 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:17:23.335 [info] {"source":"oban","duration":1225,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:17:53.337 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:18:00.272 [info] {"source":"oban","duration":306,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:18:23.339 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:18:53.341 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:19:00.273 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:19:23.343 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:19:53.345 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:20:00.274 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:20:23.347 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:20:53.349 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:21:00.275 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:21:23.351 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:21:53.353 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:22:00.276 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:22:23.355 [info] {"source":"oban","duration":1347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:22:53.357 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:23:00.277 [info] {"source":"oban","duration":241,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:23:23.359 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:23:53.361 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:24:00.278 [info] {"source":"oban","duration":386,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:24:23.363 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:24:53.365 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:25:00.279 [info] {"source":"oban","duration":410,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:25:23.367 [info] {"source":"oban","duration":1254,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:25:53.369 [info] {"source":"oban","duration":1168,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:26:00.280 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:26:23.371 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:26:53.373 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:27:00.281 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:27:23.375 [info] {"source":"oban","duration":1055,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:27:53.377 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:28:00.282 [info] {"source":"oban","duration":257,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:28:23.379 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:28:53.381 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:29:00.283 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:29:23.383 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:29:53.385 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:30:00.284 [info] {"source":"oban","duration":251,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:30:23.387 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:30:53.389 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:31:00.285 [info] {"source":"oban","duration":417,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:31:23.391 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:31:53.393 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:32:00.286 [info] {"source":"oban","duration":362,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:32:23.395 [info] {"source":"oban","duration":1270,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:32:53.397 [info] {"source":"oban","duration":1209,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:33:00.287 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:33:23.399 [info] {"source":"oban","duration":1184,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:33:53.401 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:34:00.288 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:34:23.403 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:34:53.405 [info] {"source":"oban","duration":1170,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:35:00.289 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:35:23.407 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:35:53.409 [info] {"source":"oban","duration":1058,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:36:00.290 [info] {"source":"oban","duration":259,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:36:23.411 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:36:53.413 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:37:00.291 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:37:23.415 [info] {"source":"oban","duration":1168,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:37:53.417 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:38:00.292 [info] {"source":"oban","duration":499,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:38:23.419 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:38:53.421 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:39:00.294 [info] {"source":"oban","duration":395,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:39:23.423 [info] {"source":"oban","duration":1163,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:39:53.425 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:40:00.295 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:40:23.427 [info] {"source":"oban","duration":1381,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:40:53.429 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:41:00.296 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:41:23.431 [info] {"source":"oban","duration":1272,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:41:53.433 [info] {"source":"oban","duration":1182,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:42:00.297 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:42:23.435 [info] {"source":"oban","duration":1283,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:42:53.437 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:43:00.298 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:43:23.438 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:43:53.441 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:44:00.299 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:44:23.443 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:44:53.445 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:45:00.300 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:45:23.447 [info] {"source":"oban","duration":1046,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:45:53.449 [info] {"source":"oban","duration":1776,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:46:00.301 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:46:23.452 [info] {"source":"oban","duration":1387,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:46:53.454 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:47:00.302 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:47:23.456 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:47:53.458 [info] {"source":"oban","duration":1341,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:48:00.303 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:48:23.460 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:48:53.462 [info] {"source":"oban","duration":1636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:49:00.304 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:49:23.464 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:49:53.466 [info] {"source":"oban","duration":1303,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:50:00.305 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:50:23.468 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:50:53.470 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:51:00.306 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:51:23.472 [info] {"source":"oban","duration":1273,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:51:53.474 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:52:00.307 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:52:23.476 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:52:53.478 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:53:00.308 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:53:23.480 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:53:53.482 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:54:00.309 [info] {"source":"oban","duration":380,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:54:23.484 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:54:53.486 [info] {"source":"oban","duration":1369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:55:00.310 [info] {"source":"oban","duration":431,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:55:23.488 [info] {"source":"oban","duration":1227,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:55:53.490 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:56:00.311 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:56:23.491 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:56:53.494 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:57:00.312 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:57:23.496 [info] {"source":"oban","duration":1170,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:57:53.498 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:58:00.313 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:58:23.500 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:58:53.502 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:59:00.314 [info] {"source":"oban","duration":258,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:59:23.504 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:59:53.506 [info] {"source":"oban","duration":1029,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:00:00.315 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:00:02.659 [info] GET / 22:00:02.659 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 22:00:02.660 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms idle=1399.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 [] 22:00:02.661 [debug] QUERY OK source="media_profiles" db=0.6ms idle=1394.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 22:00:02.661 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=861.3ms SELECT count(s0."id") FROM "sources" AS s0 [] 22:00:02.667 [debug] QUERY OK source="media_items" db=4.9ms idle=399.9ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 22:00:02.668 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms idle=398.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 22:00:02.668 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=8.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 [] 22:00:02.669 [debug] QUERY OK source="settings" db=0.3ms 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 [] 22:00:02.670 [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 [] 22:00:02.672 [debug] QUERY OK source="tasks" db=0.4ms idle=5.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"] 22:00:02.674 [debug] QUERY OK source="media_items" db=0.5ms 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)) [] 22:00:02.675 [debug] QUERY OK source="media_items" db=0.7ms 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 (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 22:00:02.676 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms 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" IN (?,?)) [4, 5] 22:00:02.688 [debug] QUERY OK source="media_items" db=6.0ms idle=11.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"))) [] 22:00:02.690 [debug] QUERY OK source="media_items" db=1.3ms queue=0.1ms idle=16.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] 22:00:02.691 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=16.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] 22:00:02.697 [info] Sent 200 in 38ms 22:00:03.363 [info] GET /wp-json/wc/v3 22:00:03.364 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=675.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 [] 22:00:03.364 [debug] QUERY OK source="settings" db=0.2ms idle=674.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 [] 22:00:03.365 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:03.365 [error] #PID<0.332145.0> running PinchflatWeb.Endpoint (connection #PID<0.332143.0>, stream id 2) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-json/wc/v3 ** (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-json/wc/v3 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/wc/v3", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332145.0>, params: %{}, path_info: ["wp-json", "wc", "v3"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "101.230.232.76"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "101.230.232.76"} ], request_path: "/wp-json/wc/v3", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a8Y60MTk_wq4AIuJD"} ], 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.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/wc/v3", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, 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 /wp-json/wc/v3 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/wc/v3", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332145.0>, params: %{}, path_info: ["wp-json", "wc", "v3"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "101.230.232.76"}, { (truncated) 22:00:03.586 [info] GET /index.php 22:00:03.587 [debug] QUERY OK source="settings" db=0.5ms idle=895.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 [] 22:00:03.587 [debug] QUERY OK source="settings" db=0.2ms idle=322.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 [] 22:00:03.587 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:03.588 [error] #PID<0.332146.0> running PinchflatWeb.Endpoint (connection #PID<0.332143.0>, stream id 3) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /index.php?route=checkout/cart ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/cart", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332146.0>, params: %{"route" => "checkout/cart"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "checkout/cart"}, query_string: "route=checkout/cart", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "101.230.232.76"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "101.230.232.76"} ], request_path: "/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a8Zv6OfmlzU0AIuKD"} ], 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.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/cart", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/cart", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332146.0>, params: %{"route" => "checkout/cart"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "checkout/cart"}, query_string: "route=checkout/cart", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0 (truncated) 22:00:03.810 [info] GET /index.php 22:00:03.811 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=539.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 [] 22:00:03.811 [debug] QUERY OK source="settings" db=0.3ms idle=446.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 [] 22:00:03.811 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:03.812 [error] #PID<0.332147.0> running PinchflatWeb.Endpoint (connection #PID<0.332143.0>, stream id 4) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /index.php?route=account/register ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/register", streamid: 4, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332147.0>, params: %{"route" => "account/register"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "account/register"}, query_string: "route=account/register", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "101.230.232.76"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "101.230.232.76"} ], request_path: "/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a8alR77TjBWsAIuLD"} ], 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.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/register", streamid: 4, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/register", streamid: 4, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332147.0>, params: %{"route" => "account/register"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "account/register"}, query_string: "route=account/register", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", (truncated) 22:00:04.031 [info] GET /index.php 22:00:04.032 [debug] QUERY OK source="settings" db=0.3ms idle=667.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 [] 22:00:04.033 [debug] QUERY OK source="settings" db=0.2ms idle=445.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 [] 22:00:04.033 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:04.034 [error] #PID<0.332148.0> running PinchflatWeb.Endpoint (connection #PID<0.332143.0>, stream id 5) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /index.php?route=account/login ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/login", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332148.0>, params: %{"route" => "account/login"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "account/login"}, query_string: "route=account/login", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "101.230.232.76"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "101.230.232.76"} ], request_path: "/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a8baKvuK00G8AIuMD"} ], 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.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/login", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/login", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332148.0>, params: %{"route" => "account/login"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "account/login"}, query_string: "route=account/login", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0 (truncated) 22:00:04.254 [info] GET /index.php 22:00:04.255 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=667.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 [] 22:00:04.255 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:00:04.256 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:04.256 [error] #PID<0.332149.0> running PinchflatWeb.Endpoint (connection #PID<0.332143.0>, stream id 6) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /index.php?route=checkout/checkout ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/checkout", streamid: 6, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332149.0>, params: %{"route" => "checkout/checkout"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "checkout/checkout"}, query_string: "route=checkout/checkout", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "101.230.232.76"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "101.230.232.76"} ], request_path: "/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a8cPNbfjZWdIAIuND"} ], 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.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/checkout", streamid: 6, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/checkout", streamid: 6, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332149.0>, params: %{"route" => "checkout/checkout"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "checkout/checkout"}, query_string: "route=checkout/checkout", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", (truncated) 22:00:04.476 [info] GET /admin/ 22:00:04.477 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=443.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 [] 22:00:04.477 [debug] QUERY OK source="settings" db=0.2ms idle=222.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 [] 22:00:04.478 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:04.478 [error] #PID<0.332150.0> running PinchflatWeb.Endpoint (connection #PID<0.332143.0>, stream id 7) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /admin/ ** (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.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/admin/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 7, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332150.0>, params: %{}, path_info: ["admin"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "101.230.232.76"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "101.230.232.76"} ], request_path: "/admin/", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a8dEJYLDIvF4AIuOD"} ], 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.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/admin/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 7, 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.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/admin/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 7, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332150.0>, params: %{}, path_info: ["admin"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "101.230.232.76"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-p (truncated) 22:00:04.700 [info] GET /wp-json/ 22:00:04.701 [debug] QUERY OK source="settings" db=0.2ms idle=444.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 [] 22:00:04.701 [debug] QUERY OK source="settings" db=0.2ms idle=435.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 [] 22:00:04.702 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:04.702 [error] #PID<0.332151.0> running PinchflatWeb.Endpoint (connection #PID<0.332143.0>, stream id 8) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-json/ ** (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-json (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 8, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332151.0>, params: %{}, path_info: ["wp-json"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "101.230.232.76"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "101.230.232.76"} ], request_path: "/wp-json/", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a8d5j6W29ilwAIuPD"} ], 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.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 8, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-json (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332143.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 46130}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "101.230.232.76", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "101.230.232.76" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 8, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332151.0>, params: %{}, path_info: ["wp-json"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "101.230.232.76"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, (truncated) 22:00:20.674 [info] GET / 22:00:20.674 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 22:00:20.675 [debug] QUERY OK source="settings" db=0.2ms idle=875.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 [] 22:00:20.676 [debug] QUERY OK source="media_profiles" db=0.2ms idle=875.6ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 22:00:20.676 [debug] QUERY OK source="sources" db=0.1ms idle=876.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 22:00:20.677 [debug] QUERY OK source="media_items" db=0.8ms idle=378.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 22:00:20.678 [debug] QUERY OK source="media_items" db=0.6ms idle=372.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 22:00:20.679 [debug] QUERY OK source="settings" db=0.3ms 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 [] 22:00:20.679 [debug] QUERY OK source="settings" db=0.3ms 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 [] 22:00:20.680 [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 [] 22:00:20.682 [debug] QUERY OK source="tasks" db=0.5ms 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"] 22:00:20.683 [debug] QUERY OK source="media_items" db=0.6ms 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)) [] 22:00:20.685 [debug] QUERY OK source="media_items" db=1.0ms 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] 22:00:20.686 [debug] QUERY OK source="sources" db=0.4ms 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" IN (?,?)) [4, 5] 22:00:20.697 [debug] QUERY OK source="media_items" db=6.4ms idle=9.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"))) [] 22:00:20.698 [debug] QUERY OK source="media_items" db=1.4ms idle=14.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] 22:00:20.699 [debug] QUERY OK source="sources" db=0.4ms idle=15.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] 22:00:20.703 [info] Sent 200 in 29ms 22:00:21.089 [info] GET /wp-json/wc/v3 22:00:21.089 [debug] QUERY OK source="settings" db=0.3ms idle=404.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 [] 22:00:21.090 [debug] QUERY OK source="settings" db=0.2ms idle=403.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 [] 22:00:21.090 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:21.090 [error] #PID<0.332157.0> running PinchflatWeb.Endpoint (connection #PID<0.332155.0>, stream id 2) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-json/wc/v3 ** (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-json/wc/v3 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/wc/v3", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/wp-json/wc/v3", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332157.0>, params: %{}, path_info: ["wp-json", "wc", "v3"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"referer", "http://pinchflat.guano.duckdns.org/wp-json/wc/v3"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "31.97.154.226"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "31.97.154.226"} ], request_path: "/wp-json/wc/v3", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a9a852UYNQe0AIuZD"} ], 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.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/wc/v3", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/wp-json/wc/v3", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, 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 /wp-json/wc/v3 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/wc/v3", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/wp-json/wc/v3", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332157.0>, params: %{}, path_info: ["wp-json", "wc", "v3"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-en (truncated) 22:00:21.280 [info] GET /index.php 22:00:21.281 [debug] QUERY OK source="settings" db=0.2ms idle=584.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 [] 22:00:21.282 [debug] QUERY OK source="settings" db=0.2ms idle=582.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 [] 22:00:21.282 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:21.282 [error] #PID<0.332158.0> running PinchflatWeb.Endpoint (connection #PID<0.332155.0>, stream id 3) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /index.php?route=checkout/cart ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=checkout/cart", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/cart", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332158.0>, params: %{"route" => "checkout/cart"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "checkout/cart"}, query_string: "route=checkout/cart", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"referer", "http://pinchflat.guano.duckdns.org/index.php?route=checkout/cart"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "31.97.154.226"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "31.97.154.226"} ], request_path: "/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a9bqpofOFSnQAIuaD"} ], 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.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=checkout/cart", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/cart", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=checkout/cart", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/cart", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332158.0>, params: %{"route" => "checkout/cart"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} (truncated) 22:00:21.465 [info] GET /index.php 22:00:21.465 [debug] QUERY OK source="settings" db=0.2ms idle=375.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 [] 22:00:21.466 [debug] QUERY OK source="settings" db=0.2ms idle=184.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 [] 22:00:21.466 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:21.467 [error] #PID<0.332159.0> running PinchflatWeb.Endpoint (connection #PID<0.332155.0>, stream id 4) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /index.php?route=account/register ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=account/register", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/register", streamid: 4, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332159.0>, params: %{"route" => "account/register"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "account/register"}, query_string: "route=account/register", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"referer", "http://pinchflat.guano.duckdns.org/index.php?route=account/register"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "31.97.154.226"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "31.97.154.226"} ], request_path: "/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a9cWmPMjqlJ4AIubD"} ], 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.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=account/register", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/register", streamid: 4, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=account/register", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/register", streamid: 4, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332159.0>, params: %{"route" => "account/register"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"re (truncated) 22:00:21.656 [info] GET /index.php 22:00:21.656 [debug] QUERY OK source="settings" db=0.3ms idle=374.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 [] 22:00:21.657 [debug] QUERY OK source="settings" db=0.2ms idle=356.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 [] 22:00:21.657 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:21.658 [error] #PID<0.332160.0> running PinchflatWeb.Endpoint (connection #PID<0.332155.0>, stream id 5) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /index.php?route=account/login ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=account/login", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/login", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332160.0>, params: %{"route" => "account/login"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "account/login"}, query_string: "route=account/login", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"referer", "http://pinchflat.guano.duckdns.org/index.php?route=account/login"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "31.97.154.226"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "31.97.154.226"} ], request_path: "/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a9dEE81IQv-QAIucD"} ], 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.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=account/login", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/login", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=account/login", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=account/login", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332160.0>, params: %{"route" => "account/login"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} (truncated) 22:00:21.850 [info] GET /index.php 22:00:21.851 [debug] QUERY OK source="settings" db=0.2ms idle=544.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 [] 22:00:21.852 [debug] QUERY OK source="settings" db=0.2ms idle=385.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 [] 22:00:21.852 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:21.852 [error] #PID<0.332161.0> running PinchflatWeb.Endpoint (connection #PID<0.332155.0>, stream id 6) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /index.php?route=checkout/checkout ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=checkout/checkout", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/checkout", streamid: 6, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332161.0>, params: %{"route" => "checkout/checkout"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"route" => "checkout/checkout"}, query_string: "route=checkout/checkout", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"referer", "http://pinchflat.guano.duckdns.org/index.php?route=checkout/checkout"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "31.97.154.226"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "31.97.154.226"} ], request_path: "/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a9dyjscqIfC4AIudD"} ], 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.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=checkout/checkout", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/checkout", streamid: 6, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/index.php?route=checkout/checkout", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "route=checkout/checkout", streamid: 6, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332161.0>, params: %{"route" => "checkout/checkout"}, path_info: ["index"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_lo (truncated) 22:00:22.039 [info] GET /admin/ 22:00:22.039 [debug] QUERY OK source="settings" db=0.2ms idle=573.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 [] 22:00:22.040 [debug] QUERY OK source="settings" db=0.2ms idle=383.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 [] 22:00:22.040 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:22.041 [error] #PID<0.332162.0> running PinchflatWeb.Endpoint (connection #PID<0.332155.0>, stream id 7) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /admin/ ** (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.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/admin/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/admin/", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 7, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332162.0>, params: %{}, path_info: ["admin"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"referer", "http://pinchflat.guano.duckdns.org/admin/"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "31.97.154.226"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "31.97.154.226"} ], request_path: "/admin/", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a9efcbrcSH_AAIueD"} ], 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.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/admin/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/admin/", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 7, 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.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/admin/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/admin/", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 7, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332162.0>, params: %{}, path_info: ["admin"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"referer", "http://pinc (truncated) 22:00:22.227 [info] GET /wp-json/ 22:00:22.228 [debug] QUERY OK source="settings" db=0.3ms idle=570.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 [] 22:00:22.228 [debug] QUERY OK source="settings" db=0.3ms idle=376.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 [] 22:00:22.228 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 22:00:22.229 [error] #PID<0.332163.0> running PinchflatWeb.Endpoint (connection #PID<0.332155.0>, stream id 8) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-json/ ** (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-json (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/wp-json/", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 8, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332163.0>, params: %{}, path_info: ["wp-json"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"referer", "http://pinchflat.guano.duckdns.org/wp-json/"}, {"user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}, {"x-forwarded-for", "31.97.154.226"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "31.97.154.226"} ], request_path: "/wp-json/", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI8a9fMPxj7TdOwAIufD"} ], 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.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/wp-json/", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 8, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-json (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.332155.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-json/", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 37010}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "referer" => "http://pinchflat.guano.duckdns.org/wp-json/", "user-agent" => "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "x-forwarded-for" => "31.97.154.226", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "31.97.154.226" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 8, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.332163.0>, params: %{}, path_info: ["wp-json"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router => PinchflatWeb.Router, :phoenix_router_url => "https://pinchflat.guano.duckdns.org", :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, (truncated) 22:00:23.508 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:00:53.510 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:01:00.316 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:01:23.512 [info] {"source":"oban","duration":1196,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:01:53.514 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:02:00.317 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:02:23.516 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:02:53.518 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:03:00.318 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:03:23.520 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:03:53.522 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:04:00.319 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:04:23.524 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:04:53.526 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:05:00.320 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:05:23.528 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:05:53.530 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:06:00.321 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:06:23.532 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:06:53.534 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:07:00.322 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:07:23.536 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:07:53.538 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:08:00.323 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:08:23.540 [info] {"source":"oban","duration":1382,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:08:53.542 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:09:00.324 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:09:23.544 [info] {"source":"oban","duration":1146,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:09:53.546 [info] {"source":"oban","duration":1132,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:10:00.325 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:10:23.548 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:10:53.550 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:11:00.326 [info] {"source":"oban","duration":362,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:11:19.375 [info] GET / 22:11:19.375 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 22:11:19.376 [debug] QUERY OK source="settings" db=0.3ms idle=1575.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 [] 22:11:19.376 [debug] QUERY OK source="media_profiles" db=0.1ms idle=691.7ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 22:11:19.377 [debug] QUERY OK source="sources" db=0.1ms idle=685.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 22:11:19.377 [debug] QUERY OK source="media_items" db=0.7ms idle=577.0ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 22:11:19.379 [debug] QUERY OK source="media_items" db=1.0ms idle=578.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 22:11:19.379 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:11:19.380 [debug] QUERY OK source="settings" db=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 [] 22:11:19.381 [debug] QUERY OK source="settings" db=0.5ms 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 [] 22:11:19.383 [debug] QUERY OK source="tasks" db=0.4ms idle=5.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"] 22:11:19.385 [debug] QUERY OK source="media_items" db=0.6ms 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)) [] 22:11:19.386 [debug] QUERY OK source="media_items" db=0.9ms idle=5.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] 22:11:19.388 [debug] QUERY OK source="sources" db=0.5ms 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" IN (?,?)) [4, 5] 22:11:19.393 [debug] QUERY OK source="media_items" db=1.4ms idle=10.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"))) [] 22:11:19.395 [debug] QUERY OK source="media_items" db=1.4ms idle=10.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] 22:11:19.396 [debug] QUERY OK source="sources" db=0.3ms idle=10.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] 22:11:19.400 [info] Sent 200 in 25ms 22:11:23.552 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:11:53.554 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:12:00.327 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:12:23.556 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:12:53.558 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:13:00.328 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:13:23.560 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:13:53.562 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:14:00.329 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:14:23.564 [info] {"source":"oban","duration":1206,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:14:53.566 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:15:00.330 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:15:23.568 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:15:53.570 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:16:00.331 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:16:23.571 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:16:28.738 [info] GET / 22:16:28.738 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 22:16:28.739 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1938.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 [] 22:16:28.740 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1418.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 22:16:28.740 [debug] QUERY OK source="sources" db=0.2ms idle=1412.4ms SELECT count(s0."id") FROM "sources" AS s0 [] 22:16:28.741 [debug] QUERY OK source="media_items" db=0.6ms idle=417.4ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 22:16:28.743 [debug] QUERY OK source="media_items" db=1.2ms idle=411.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 22:16:28.743 [debug] QUERY OK source="settings" db=0.3ms 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 [] 22:16:28.744 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:16:28.745 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms 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 [] 22:16:28.748 [debug] QUERY OK source="tasks" db=0.5ms 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"] 22:16:28.749 [debug] QUERY OK source="media_items" db=0.6ms 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 (m0."media_filepath" IS NULL)) [] 22:16:28.750 [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 (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 22:16:28.752 [debug] QUERY OK source="sources" db=0.5ms 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" IN (?,?)) [4, 5] 22:16:28.768 [debug] QUERY OK source="media_items" db=12.3ms idle=10.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"))) [] 22:16:28.770 [debug] QUERY OK source="media_items" db=1.3ms idle=21.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] 22:16:28.771 [debug] QUERY OK source="sources" db=0.5ms idle=21.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] 22:16:28.776 [info] Sent 200 in 37ms 22:16:53.573 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:17:00.332 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:17:23.576 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:17:53.578 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:18:00.333 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:18:23.580 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:18:53.582 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:19:00.334 [info] {"source":"oban","duration":637,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:19:23.584 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:19:53.586 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:20:00.335 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:20:23.588 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:20:53.590 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:21:00.336 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:21:23.592 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:21:53.594 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:22:00.337 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:22:23.596 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:22:53.598 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:23:00.338 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:23:23.600 [info] {"source":"oban","duration":1055,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:23:53.602 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:24:00.339 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:24:23.604 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:24:53.606 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:25:00.341 [info] {"source":"oban","duration":1175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:25:23.608 [info] {"source":"oban","duration":1025,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:25:53.610 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:26:00.342 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:26:23.612 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:26:53.614 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:27:00.343 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:27:23.616 [info] {"source":"oban","duration":1375,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:27:53.618 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:00.344 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:28:23.620 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:53.622 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:29:00.345 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:29:23.624 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:29:53.626 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:30:00.346 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:30:23.628 [info] {"source":"oban","duration":1113,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:30:53.630 [info] {"source":"oban","duration":1655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:31:00.347 [info] {"source":"oban","duration":404,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:31:23.633 [info] {"source":"oban","duration":1221,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:31:53.635 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:32:00.348 [info] {"source":"oban","duration":247,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:32:23.637 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:32:53.639 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:33:00.349 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:33:23.641 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:33:53.643 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:34:00.350 [info] {"source":"oban","duration":374,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:34:23.645 [info] {"source":"oban","duration":1157,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:34:53.647 [info] {"source":"oban","duration":1465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:35:00.351 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:35:23.649 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:35:53.651 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:36:00.352 [info] {"source":"oban","duration":395,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:36:23.653 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:36:53.655 [info] {"source":"oban","duration":1505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:00.353 [info] {"source":"oban","duration":374,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:37:23.657 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:53.659 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:00.354 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:38:23.661 [info] {"source":"oban","duration":1009,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:53.663 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:00.355 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:39:23.665 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:53.667 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:00.356 [info] {"source":"oban","duration":378,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:40:23.669 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:53.671 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:00.357 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:41:23.673 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:53.675 [info] {"source":"oban","duration":1389,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:00.358 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:42:23.677 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:53.679 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:00.359 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:43:23.681 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:53.683 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:00.360 [info] {"source":"oban","duration":382,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:44:23.685 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:53.687 [info] {"source":"oban","duration":1499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:00.361 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:45:23.689 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:53.691 [info] {"source":"oban","duration":1250,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:00.362 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:46:23.693 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:53.695 [info] {"source":"oban","duration":1361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:00.363 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:47:23.697 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:53.699 [info] {"source":"oban","duration":1140,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:00.364 [info] {"source":"oban","duration":417,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:48:23.701 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:53.703 [info] {"source":"oban","duration":1183,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:00.365 [info] {"source":"oban","duration":374,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:49:23.705 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:53.707 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:00.366 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:50:23.709 [info] {"source":"oban","duration":989,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:53.711 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:00.367 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:51:23.713 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:53.715 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:00.368 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:52:23.717 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:53.719 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:00.369 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:53:23.721 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:53.723 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:00.370 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:54:23.724 [info] {"source":"oban","duration":901,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:53.727 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:00.371 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:55:23.729 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:53.731 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:00.372 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:56:23.733 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:53.735 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:00.373 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:57:23.737 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:53.739 [info] {"source":"oban","duration":1176,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:00.374 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:58:23.741 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:53.743 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:00.375 [info] {"source":"oban","duration":389,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:59:23.745 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:53.747 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:00.376 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:00:23.749 [info] {"source":"oban","duration":1172,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:53.751 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:00.377 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:01:23.753 [info] {"source":"oban","duration":1364,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:53.755 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:00.378 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:02:23.757 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:53.759 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:00.379 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:03:23.761 [info] {"source":"oban","duration":1189,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:53.763 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:00.380 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:04:23.765 [info] {"source":"oban","duration":1155,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:53.767 [info] {"source":"oban","duration":1345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:00.381 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:05:23.769 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:53.771 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:00.382 [info] {"source":"oban","duration":389,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:06:23.773 [info] {"source":"oban","duration":1085,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:53.775 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:00.383 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:07:23.777 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:53.779 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:00.384 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:08:23.781 [info] {"source":"oban","duration":1604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:53.784 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:00.385 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:09:23.786 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:53.788 [info] {"source":"oban","duration":1344,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:00.386 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:10:23.790 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:53.792 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:00.387 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:11:23.794 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:53.796 [info] {"source":"oban","duration":1164,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:00.388 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:12:23.798 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:53.800 [info] {"source":"oban","duration":1065,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:00.389 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:13:23.802 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:53.803 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:00.390 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:14:23.806 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:53.809 [info] {"source":"oban","duration":2253,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:00.391 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:15:23.811 [info] {"source":"oban","duration":1310,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:53.813 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:00.392 [info] {"source":"oban","duration":246,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:16:23.815 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:53.817 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:00.393 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:17:23.819 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:53.821 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:00.394 [info] {"source":"oban","duration":254,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:18:23.823 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:53.825 [info] {"source":"oban","duration":1191,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:00.395 [info] {"source":"oban","duration":217,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:19:23.827 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:53.829 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:00.396 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:20:23.831 [info] {"source":"oban","duration":986,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:53.833 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:00.397 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:21:23.835 [info] {"source":"oban","duration":1265,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:53.837 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:00.398 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:22:23.839 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:53.841 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:00.399 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:23:23.843 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:53.845 [info] {"source":"oban","duration":1361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:00.400 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:24:23.847 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:53.849 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:00.401 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:25:23.851 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:53.853 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:00.402 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:26:23.855 [info] {"source":"oban","duration":1246,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:53.857 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:00.403 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:27:23.859 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:53.861 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:00.404 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:28:23.863 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:53.865 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:00.405 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:29:23.867 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:53.869 [info] {"source":"oban","duration":1117,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:00.406 [info] {"source":"oban","duration":542,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:30:23.871 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:53.873 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:00.407 [info] {"source":"oban","duration":389,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:31:23.875 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:53.877 [info] {"source":"oban","duration":1317,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:00.408 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:32:23.879 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:53.881 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:00.409 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:33:23.883 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:53.885 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:00.410 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:34:23.887 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:53.889 [info] {"source":"oban","duration":1270,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:00.411 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:35:23.891 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:53.893 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:00.412 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:36:23.895 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:53.897 [info] {"source":"oban","duration":1219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:00.413 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:37:23.899 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:53.901 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:00.414 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:38:23.903 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:53.905 [info] {"source":"oban","duration":1306,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:00.415 [info] {"source":"oban","duration":382,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:39:23.906 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:53.909 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:00.416 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:40:23.911 [info] {"source":"oban","duration":1362,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:53.913 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:00.417 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:41:23.915 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:53.917 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:00.418 [info] {"source":"oban","duration":248,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:42:23.919 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:53.921 [info] {"source":"oban","duration":1756,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:00.419 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:43:23.924 [info] {"source":"oban","duration":1240,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:53.926 [info] {"source":"oban","duration":1077,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:00.420 [info] {"source":"oban","duration":355,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:44:23.928 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:53.930 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:00.421 [info] {"source":"oban","duration":258,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:45:23.932 [info] {"source":"oban","duration":1257,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:53.934 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:00.422 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:46:23.936 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:53.938 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:00.423 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:47:23.940 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:53.942 [info] {"source":"oban","duration":1748,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:00.424 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:48:23.945 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:53.947 [info] {"source":"oban","duration":1597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:00.425 [info] {"source":"oban","duration":402,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:49:23.949 [info] {"source":"oban","duration":1632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:53.951 [info] {"source":"oban","duration":1601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:00.426 [info] {"source":"oban","duration":306,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:50:23.953 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:53.955 [info] {"source":"oban","duration":1569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:00.427 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:51:23.957 [info] {"source":"oban","duration":1259,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:53.959 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:00.428 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:52:23.961 [info] {"source":"oban","duration":1146,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:53.963 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:00.429 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:53:23.965 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:53.967 [info] {"source":"oban","duration":1079,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:00.430 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:54:23.969 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:53.971 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:00.431 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:55:23.973 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:53.975 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:00.432 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:56:23.977 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:53.979 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:00.433 [info] {"source":"oban","duration":388,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:57:23.981 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:53.983 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:00.434 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:58:23.985 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:53.987 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:00.435 [info] {"source":"oban","duration":632,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:59:23.989 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:53.991 [info] {"source":"oban","duration":1310,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:00:00.436 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:00:23.993 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:00:53.995 [info] {"source":"oban","duration":1265,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:00.437 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:01:23.997 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:53.999 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:00.438 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:02:24.001 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:54.003 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:00.439 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:03:24.005 [info] {"source":"oban","duration":1411,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:54.007 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:00.440 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:04:24.009 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:54.011 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:00.441 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:05:24.013 [info] {"source":"oban","duration":1630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:54.015 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:00.442 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:06:24.017 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:54.019 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:00.443 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:07:24.021 [info] {"source":"oban","duration":1196,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:54.023 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:00.444 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:08:24.025 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:54.027 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:00.445 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:09:24.029 [info] {"source":"oban","duration":1119,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:54.031 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:00.446 [info] {"source":"oban","duration":408,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:10:24.033 [info] {"source":"oban","duration":995,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:54.035 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:00.447 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:11:24.037 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:54.039 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:00.448 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:12:24.041 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:54.043 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:00.449 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:13:24.045 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:54.047 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:00.455 [info] {"source":"oban","duration":4784,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:14:24.049 [info] {"source":"oban","duration":1265,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:54.051 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:00.457 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:15:24.053 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:54.055 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:00.458 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:16:24.056 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:54.058 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:00.459 [info] {"source":"oban","duration":508,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:17:24.061 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:54.063 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:00.460 [info] {"source":"oban","duration":392,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:18:24.065 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:54.067 [info] {"source":"oban","duration":1389,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:00.461 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:19:24.069 [info] {"source":"oban","duration":1283,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:54.071 [info] {"source":"oban","duration":1619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:00.462 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:20:24.073 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:54.075 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:00.463 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:21:24.077 [info] {"source":"oban","duration":1465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:54.079 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:00.464 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:22:24.081 [info] {"source":"oban","duration":1343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:54.083 [info] {"source":"oban","duration":1257,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:00.465 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:23:24.085 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:54.087 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:00.466 [info] {"source":"oban","duration":417,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:24:24.089 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:54.090 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:00.467 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:25:24.093 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:54.095 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:00.468 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:26:24.097 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:54.099 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:00.469 [info] {"source":"oban","duration":447,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:27:24.101 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:54.103 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:00.470 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:28:24.105 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:54.107 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:00.474 [info] {"source":"oban","duration":2170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:29:24.109 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:54.111 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:00.476 [info] {"source":"oban","duration":301,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:30:24.113 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:54.115 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:00.477 [info] {"source":"oban","duration":553,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:31:24.117 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:54.119 [info] {"source":"oban","duration":1065,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:00.478 [info] {"source":"oban","duration":403,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:32:24.121 [info] {"source":"oban","duration":1158,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:54.123 [info] {"source":"oban","duration":1042,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:00.479 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:33:24.125 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:54.127 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:00.480 [info] {"source":"oban","duration":378,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:34:24.129 [info] {"source":"oban","duration":1053,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:54.131 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:00.481 [info] {"source":"oban","duration":235,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:35:24.133 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:54.135 [info] {"source":"oban","duration":1533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:00.482 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:36:24.137 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:54.139 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:00.483 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:37:24.141 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:54.143 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:00.484 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:38:24.145 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:54.147 [info] {"source":"oban","duration":1128,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:00.485 [info] {"source":"oban","duration":403,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:39:24.149 [info] {"source":"oban","duration":1382,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:54.151 [info] {"source":"oban","duration":1170,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:00.486 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:40:24.153 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:54.155 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:00.487 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:41:24.157 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:54.159 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:00.488 [info] {"source":"oban","duration":398,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:42:24.161 [info] {"source":"oban","duration":1710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:54.164 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:43:00.489 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:58:46.313 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 00:58:46.313 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 00:58:46.314 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 00:58:46.314 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 00:58:46.447 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 00:58:46.781 [debug] QUERY OK source="oban_jobs" db=333.0ms queue=1369.3ms idle=0.0ms UPDATE "oban_jobs" AS o0 SET "state" = ? WHERE (o0."state" = 'executing') ["retryable"] 00:58:46.781 [info] Reset 0 executing jobs 00:58:46.782 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 00:58:57.660 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2025.12.08 00:58:57.661 [info] [command_wrapper]: /usr/local/bin/apprise called with: --version 00:59:09.307 [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. 00:59:09.592 [debug] QUERY OK source="settings" db=283.7ms queue=0.3ms idle=1230.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:09.593 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1514.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:09.593 [info] User scripts lifecyle file either not present or is empty. Skipping. 00:59:09.599 [info] {"message":"notifier only receiving messages from its own node, functionality may be degraded","source":"oban","event":"notifier:switch","connectivity_status":"solitary"} 00:59:09.622 [info] Running PinchflatWeb.Endpoint with cowboy 2.13.0 at 0.0.0.0:8945 (http) 00:59:09.871 [info] Access PinchflatWeb.Endpoint at http://localhost:8945 00:59:09.882 [info] {"args":{},"id":2972,"meta":{},"system_time":1769673549882478491,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","event":"job:start","attempt":1,"tags":["local_data"]} 00:59:09.883 [info] Updating yt-dlp 00:59:09.883 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update 00:59:11.674 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update exited: 0 with: Latest version: stable@2025.12.08 from yt-dlp/yt-dlp yt-dlp is up to date (stable@2025.12.08 from yt-dlp/yt-dlp) 00:59:11.674 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 00:59:13.074 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2025.12.08 00:59:13.075 [debug] QUERY OK source="settings" db=0.2ms idle=1471.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:13.076 [info] {"args":{},"id":2972,"meta":{},"state":"success","max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","duration":3193309,"event":"job:stop","queue_time":880065,"attempt":1,"tags":["local_data"]} 00:59:40.210 [info] {"source":"oban","duration":609927,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:00:00.600 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:00:10.244 [info] {"source":"oban","duration":33085,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:00:40.246 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:01:00.601 [info] {"source":"oban","duration":403,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:01:10.248 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:01:40.250 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:01:44.192 [notice] :alarm_handler: {:set, {:system_memory_high_watermark, []}} 01:02:00.602 [info] {"source":"oban","duration":284,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:02:10.252 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:02:40.254 [info] {"source":"oban","duration":1302,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:03:00.603 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:03:10.256 [info] {"source":"oban","duration":1009,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:03:40.258 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:04:00.604 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:04:10.259 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:04:40.262 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:05:00.605 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:05:10.264 [info] {"source":"oban","duration":1570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:05:40.266 [info] {"source":"oban","duration":1840,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:06:00.607 [info] {"source":"oban","duration":374,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:06:10.269 [info] {"source":"oban","duration":1724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:06:40.272 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:07:00.608 [info] {"source":"oban","duration":391,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:07:10.274 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:07:40.276 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:08:00.609 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:08:10.278 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:08:40.280 [info] {"source":"oban","duration":1735,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:09:00.610 [info] {"source":"oban","duration":452,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:09:10.283 [info] {"source":"oban","duration":1577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:09:40.285 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:10:00.612 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:10:10.287 [info] {"source":"oban","duration":1128,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:10:40.289 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:11:00.613 [info] {"source":"oban","duration":455,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:11:10.291 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:11:40.293 [info] {"source":"oban","duration":1626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:12:00.614 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:12:10.295 [info] {"source":"oban","duration":1228,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:12:40.297 [info] {"source":"oban","duration":1792,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:13:00.615 [info] {"source":"oban","duration":370,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:13:10.300 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:13:40.302 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:14:00.616 [info] {"source":"oban","duration":416,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:14:10.304 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:14:40.306 [info] {"source":"oban","duration":1195,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:15:00.617 [info] {"source":"oban","duration":380,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:15:10.308 [info] {"source":"oban","duration":1171,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:15:40.310 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:16:00.618 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:16:10.312 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:16:40.314 [info] {"source":"oban","duration":1045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:00.619 [info] {"source":"oban","duration":209,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:17:10.316 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:40.318 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:18:00.620 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:18:10.320 [info] {"source":"oban","duration":1323,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:18:40.322 [info] {"source":"oban","duration":1191,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:19:00.621 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:19:10.324 [info] {"source":"oban","duration":1172,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:19:40.326 [info] {"source":"oban","duration":1143,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:20:00.622 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:20:10.328 [info] {"source":"oban","duration":1006,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:20:40.330 [info] {"source":"oban","duration":1367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:21:00.623 [info] {"source":"oban","duration":266,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:21:10.332 [info] {"source":"oban","duration":1619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:21:40.334 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:22:00.624 [info] {"source":"oban","duration":182,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:22:10.336 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:22:40.338 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:23:00.625 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:23:10.340 [info] {"source":"oban","duration":1257,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:23:40.342 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:00.626 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:24:10.344 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:40.346 [info] {"source":"oban","duration":1389,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:25:00.627 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:25:10.348 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:25:40.350 [info] {"source":"oban","duration":1499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:00.628 [info] {"source":"oban","duration":382,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:26:10.352 [info] {"source":"oban","duration":1384,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:40.354 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:27:00.629 [info] {"source":"oban","duration":293,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:27:10.356 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:27:40.357 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:28:00.630 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:28:10.360 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:28:40.362 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:29:00.631 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:29:10.364 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:29:40.366 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:30:00.632 [info] {"source":"oban","duration":209,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:30:10.368 [info] {"source":"oban","duration":1563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:30:40.370 [info] {"source":"oban","duration":1875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:31:00.633 [info] {"source":"oban","duration":383,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:31:10.373 [info] {"source":"oban","duration":1309,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:31:40.375 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:32:00.634 [info] {"source":"oban","duration":280,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:32:10.377 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:32:40.379 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:33:00.635 [info] {"source":"oban","duration":392,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:33:10.381 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:33:40.383 [info] {"source":"oban","duration":1560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:34:00.636 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:34:10.385 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:34:40.387 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:35:00.637 [info] {"source":"oban","duration":405,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:35:10.389 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:35:40.390 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:36:00.638 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:36:10.393 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:36:40.395 [info] {"source":"oban","duration":1568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:00.639 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:37:10.397 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:40.399 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:38:00.640 [info] {"source":"oban","duration":420,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:38:10.401 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:38:40.403 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:39:00.641 [info] {"source":"oban","duration":411,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:39:10.405 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:39:40.408 [info] {"source":"oban","duration":1216,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:40:00.642 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:40:10.410 [info] {"source":"oban","duration":1099,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:40:40.412 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:41:00.643 [info] {"source":"oban","duration":382,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:41:10.414 [info] {"source":"oban","duration":1155,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:41:40.416 [info] {"source":"oban","duration":1240,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:42:00.644 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:42:10.418 [info] {"source":"oban","duration":1036,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:42:40.420 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:43:00.645 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:43:10.422 [info] {"source":"oban","duration":1230,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:43:40.424 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:44:00.646 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:44:10.426 [info] {"source":"oban","duration":1220,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:44:40.428 [info] {"source":"oban","duration":1465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:45:00.647 [info] {"source":"oban","duration":282,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:45:10.430 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:45:40.432 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:46:00.648 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:46:10.434 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:46:40.436 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:47:00.649 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:47:10.438 [info] {"source":"oban","duration":1250,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:47:40.440 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:48:00.650 [info] {"source":"oban","duration":277,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:48:10.442 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:48:40.444 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:49:00.651 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:49:10.446 [info] {"source":"oban","duration":1739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:49:40.449 [info] {"source":"oban","duration":1571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:50:00.652 [info] {"source":"oban","duration":302,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:50:10.451 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:50:40.453 [info] {"source":"oban","duration":1015,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:51:00.653 [info] {"source":"oban","duration":277,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:51:10.454 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:51:40.456 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:52:00.654 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:52:10.458 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:52:40.460 [info] {"source":"oban","duration":1229,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:53:00.655 [info] {"source":"oban","duration":397,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:53:10.462 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:53:40.464 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:54:00.656 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:54:10.466 [info] {"source":"oban","duration":1166,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:54:40.468 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:55:00.657 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:55:10.470 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:55:40.472 [info] {"source":"oban","duration":1043,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:56:00.658 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:56:10.474 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:56:40.476 [info] {"source":"oban","duration":1202,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:00.659 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:57:10.478 [info] {"source":"oban","duration":1382,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:40.480 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:58:00.660 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:58:10.482 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:58:40.484 [info] {"source":"oban","duration":1187,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:59:00.661 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 01:59:10.486 [info] {"source":"oban","duration":1627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:59:40.488 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:00:00.662 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:00:10.490 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:00:40.492 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:01:00.663 [info] {"source":"oban","duration":408,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:01:10.494 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:01:40.496 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:02:00.664 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:02:10.498 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:02:40.500 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:00.665 [info] {"source":"oban","duration":402,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:03:10.502 [info] {"source":"oban","duration":1675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:40.505 [info] {"source":"oban","duration":1705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:04:00.666 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:04:10.508 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:04:40.510 [info] {"source":"oban","duration":1379,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:05:00.667 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:05:10.512 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:05:40.514 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:00.668 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:06:10.515 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:40.518 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:07:00.669 [info] {"source":"oban","duration":290,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:07:10.520 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:07:40.522 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:08:00.670 [info] {"source":"oban","duration":718,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:08:10.524 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:08:40.526 [info] {"source":"oban","duration":1834,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:09:00.672 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:09:10.529 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:09:40.531 [info] {"source":"oban","duration":1027,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:10:00.673 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:10:10.533 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:10:40.535 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:11:00.674 [info] {"source":"oban","duration":679,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:11:10.537 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:11:40.539 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:12:00.676 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:12:10.541 [info] {"source":"oban","duration":1155,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:12:40.543 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:13:00.677 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:13:10.545 [info] {"source":"oban","duration":1171,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:13:40.547 [info] {"source":"oban","duration":1087,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:00.679 [info] {"source":"oban","duration":1550,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:14:10.549 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:40.551 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:15:00.680 [info] {"source":"oban","duration":235,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:15:10.553 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:15:40.555 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:16:00.681 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:16:10.557 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:16:40.560 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:17:00.682 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:17:10.562 [info] {"source":"oban","duration":1401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:17:40.564 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:18:00.683 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:18:10.566 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:18:40.568 [info] {"source":"oban","duration":1241,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:19:00.684 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:19:10.570 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:19:40.572 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:20:00.685 [info] {"source":"oban","duration":280,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:20:10.574 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:20:40.576 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:21:00.686 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:21:10.578 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:21:40.580 [info] {"source":"oban","duration":1176,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:22:00.687 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:22:10.582 [info] {"source":"oban","duration":1712,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:22:40.585 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:23:00.688 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:23:10.587 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:23:40.589 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:24:00.689 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:24:10.591 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:24:40.593 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:25:00.690 [info] {"source":"oban","duration":242,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:25:10.595 [info] {"source":"oban","duration":1175,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:25:40.597 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:26:00.691 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:26:10.599 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:26:40.601 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:00.692 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:27:10.603 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:40.605 [info] {"source":"oban","duration":1015,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:28:00.693 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:28:10.607 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:28:40.608 [info] {"source":"oban","duration":884,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:29:00.694 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:29:10.611 [info] {"source":"oban","duration":1003,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:29:40.612 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:30:00.695 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:30:10.615 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:30:40.617 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:31:00.696 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:31:10.619 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:31:40.621 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:32:00.697 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:32:10.623 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:32:40.625 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:33:00.698 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:33:10.627 [info] {"source":"oban","duration":1209,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:33:40.629 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:34:00.699 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:34:10.631 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:34:40.633 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:35:00.700 [info] {"source":"oban","duration":279,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:35:10.635 [info] {"source":"oban","duration":1548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:35:40.637 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:36:00.701 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:36:10.639 [info] {"source":"oban","duration":1710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:36:40.642 [info] {"source":"oban","duration":1541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:37:00.702 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:37:10.644 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:37:40.646 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:38:00.703 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:38:10.648 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:38:40.650 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:39:00.704 [info] {"source":"oban","duration":302,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:39:10.652 [info] {"source":"oban","duration":1618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:39:40.655 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:40:00.705 [info] {"source":"oban","duration":393,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:40:10.658 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:40:40.660 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:41:00.706 [info] {"source":"oban","duration":406,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:41:10.662 [info] {"source":"oban","duration":1687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:41:40.664 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:42:00.707 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:42:10.666 [info] {"source":"oban","duration":1626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:42:40.668 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:43:00.708 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:43:10.670 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:43:40.672 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:44:00.709 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:44:10.674 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:44:40.676 [info] {"source":"oban","duration":1169,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:45:00.710 [info] {"source":"oban","duration":285,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:45:10.678 [info] {"source":"oban","duration":1265,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:45:40.680 [info] {"source":"oban","duration":1324,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:46:00.711 [info] {"source":"oban","duration":386,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:46:10.682 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:46:40.684 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:47:00.712 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:47:10.686 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:47:40.688 [info] {"source":"oban","duration":1670,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:48:00.713 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:48:10.691 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:48:40.693 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:49:00.714 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:49:10.695 [info] {"source":"oban","duration":1766,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:49:40.698 [info] {"source":"oban","duration":1637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:50:00.715 [info] {"source":"oban","duration":348,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:50:10.700 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:50:40.702 [info] {"source":"oban","duration":1610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:51:00.716 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:51:10.704 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:51:40.705 [info] {"source":"oban","duration":881,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:52:00.717 [info] {"source":"oban","duration":233,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:52:10.708 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:52:40.710 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:53:00.718 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:53:10.712 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:53:40.714 [info] {"source":"oban","duration":1625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:54:00.719 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:54:10.717 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:54:40.719 [info] {"source":"oban","duration":1601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:00.720 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:55:10.721 [info] {"source":"oban","duration":1384,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:40.723 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:56:00.722 [info] {"source":"oban","duration":413,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:56:10.725 [info] {"source":"oban","duration":1264,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:56:40.727 [info] {"source":"oban","duration":1216,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:57:00.723 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:57:10.729 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:57:40.731 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:58:00.724 [info] {"source":"oban","duration":450,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:58:10.733 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:58:40.735 [info] {"source":"oban","duration":1116,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:59:00.725 [info] {"source":"oban","duration":428,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 02:59:10.737 [info] {"source":"oban","duration":1263,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:59:40.739 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:00:00.726 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:00:10.741 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:00:40.743 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:01:00.727 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:01:10.745 [info] {"source":"oban","duration":1578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:01:40.748 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:00.728 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:02:10.750 [info] {"source":"oban","duration":1559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:40.752 [info] {"source":"oban","duration":1582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:03:00.729 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:03:10.754 [info] {"source":"oban","duration":1630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:03:40.756 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:04:00.730 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:04:10.758 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:04:40.760 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:05:00.731 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:05:10.762 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:05:40.764 [info] {"source":"oban","duration":1362,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:06:00.732 [info] {"source":"oban","duration":280,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:06:10.766 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:06:40.768 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:07:00.733 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:07:10.770 [info] {"source":"oban","duration":983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:07:40.772 [info] {"source":"oban","duration":1184,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:08:00.734 [info] {"source":"oban","duration":236,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:08:10.774 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:08:40.776 [info] {"source":"oban","duration":1509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:09:00.735 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:09:10.778 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:09:40.780 [info] {"source":"oban","duration":1576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:10:00.736 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:10:10.782 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:10:40.784 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:11:00.737 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:11:10.786 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:11:40.788 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:12:00.738 [info] {"source":"oban","duration":290,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:12:10.790 [info] {"source":"oban","duration":1076,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:12:40.791 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:13:00.739 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:13:10.794 [info] {"source":"oban","duration":1080,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:13:40.796 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:14:00.740 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:14:10.798 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:14:40.800 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:15:00.741 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:15:10.802 [info] {"source":"oban","duration":1341,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:15:40.804 [info] {"source":"oban","duration":1176,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:00.742 [info] {"source":"oban","duration":368,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:16:10.806 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:40.808 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:17:00.744 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:17:10.810 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:17:40.812 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:18:00.745 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:18:10.814 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:18:40.816 [info] {"source":"oban","duration":1380,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:19:00.746 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:19:10.818 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:19:40.820 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:20:00.747 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:20:10.822 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:20:40.824 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:00.748 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:21:10.826 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:40.828 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:22:00.749 [info] {"source":"oban","duration":392,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:22:10.830 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:22:40.832 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:23:00.750 [info] {"source":"oban","duration":246,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:23:10.834 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:23:40.836 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:24:00.751 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:24:10.838 [info] {"source":"oban","duration":995,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:24:40.840 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:25:00.752 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:25:10.842 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:25:40.844 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:26:00.753 [info] {"source":"oban","duration":271,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:26:10.846 [info] {"source":"oban","duration":1504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:26:40.848 [info] {"source":"oban","duration":1127,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:27:00.754 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:27:10.850 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:27:40.852 [info] {"source":"oban","duration":1184,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:28:00.755 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:28:10.854 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:28:40.856 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:00.756 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:29:10.858 [info] {"source":"oban","duration":1541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:40.860 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:30:00.757 [info] {"source":"oban","duration":297,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:30:10.862 [info] {"source":"oban","duration":1563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:30:40.864 [info] {"source":"oban","duration":1159,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:31:00.758 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:31:10.866 [info] {"source":"oban","duration":1148,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:31:40.868 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:32:00.759 [info] {"source":"oban","duration":368,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:32:10.870 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:32:40.872 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:33:00.760 [info] {"source":"oban","duration":399,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:33:10.874 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:33:40.876 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:34:00.761 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:34:10.878 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:34:40.880 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:35:00.762 [info] {"source":"oban","duration":381,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:35:10.882 [info] {"source":"oban","duration":1141,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:35:40.884 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:36:00.763 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:36:10.886 [info] {"source":"oban","duration":1146,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:36:40.888 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:37:00.764 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:37:10.890 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:37:40.892 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:38:00.765 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:38:10.894 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:38:40.896 [info] {"source":"oban","duration":1210,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:39:00.766 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:39:10.898 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:39:40.900 [info] {"source":"oban","duration":1160,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:40:00.767 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:40:10.902 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:40:40.904 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:41:00.768 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:41:10.906 [info] {"source":"oban","duration":1545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:41:40.908 [info] {"source":"oban","duration":1624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:42:00.769 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:42:10.910 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:42:40.912 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:43:00.770 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:43:10.914 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:43:40.916 [info] {"source":"oban","duration":1273,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:44:00.771 [info] {"source":"oban","duration":397,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:44:10.918 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:44:40.920 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:00.772 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:45:10.922 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:40.924 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:46:00.773 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:46:10.926 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:46:40.928 [info] {"source":"oban","duration":1043,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:47:00.774 [info] {"source":"oban","duration":398,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:47:10.930 [info] {"source":"oban","duration":1253,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:47:40.931 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:48:00.775 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:48:10.934 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:48:40.936 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:49:00.779 [info] {"source":"oban","duration":1970,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:49:10.938 [info] {"source":"oban","duration":1161,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:49:40.940 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:00.781 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:50:10.942 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:40.944 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:51:00.782 [info] {"source":"oban","duration":362,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:51:10.946 [info] {"source":"oban","duration":1319,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:51:40.948 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:52:00.783 [info] {"source":"oban","duration":293,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:52:10.950 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:52:40.952 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:53:00.784 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:53:10.954 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:53:40.956 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:54:00.785 [info] {"source":"oban","duration":230,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:54:10.958 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:54:40.960 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:55:00.786 [info] {"source":"oban","duration":470,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:55:10.962 [info] {"source":"oban","duration":1112,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:55:40.964 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:56:00.788 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:56:10.966 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:56:40.968 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:57:00.789 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:57:10.970 [info] {"source":"oban","duration":1533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:57:40.972 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:58:00.790 [info] {"source":"oban","duration":270,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:58:10.974 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:58:40.976 [info] {"source":"oban","duration":1602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:59:00.791 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 03:59:10.978 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:59:40.980 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:00:00.792 [info] {"source":"oban","duration":368,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:00:10.982 [info] {"source":"oban","duration":1520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:00:40.984 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:00.793 [info] {"source":"oban","duration":261,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:01:10.986 [info] {"source":"oban","duration":1661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:40.988 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:02:00.794 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:02:10.990 [info] {"source":"oban","duration":1124,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:02:40.992 [info] {"source":"oban","duration":1369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:03:00.795 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:03:10.994 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:03:40.996 [info] {"source":"oban","duration":1769,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:04:00.796 [info] {"source":"oban","duration":392,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:04:10.999 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:04:41.001 [info] {"source":"oban","duration":1691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:05:00.797 [info] {"source":"oban","duration":308,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:05:11.004 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:05:41.006 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:06:00.798 [info] {"source":"oban","duration":381,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:06:11.008 [info] {"source":"oban","duration":1324,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:06:41.010 [info] {"source":"oban","duration":1567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:07:00.799 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:07:11.012 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:07:41.014 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:08:00.800 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:08:11.016 [info] {"source":"oban","duration":1672,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:08:41.018 [info] {"source":"oban","duration":1637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:09:00.802 [info] {"source":"oban","duration":156,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:09:11.020 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:09:41.022 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:10:00.803 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:10:11.024 [info] {"source":"oban","duration":1092,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:10:41.026 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:11:00.804 [info] {"source":"oban","duration":393,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:11:11.028 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:11:41.030 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:12:00.805 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:12:11.032 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:12:41.034 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:13:00.806 [info] {"source":"oban","duration":418,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:13:11.036 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:13:41.038 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:14:00.807 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:14:11.040 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:14:41.042 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:15:00.808 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:15:11.044 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:15:41.046 [info] {"source":"oban","duration":1580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:16:00.809 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:16:11.048 [info] {"source":"oban","duration":1302,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:16:41.050 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:17:00.810 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:17:11.052 [info] {"source":"oban","duration":1540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:17:41.054 [info] {"source":"oban","duration":1384,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:18:00.811 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:18:11.056 [info] {"source":"oban","duration":986,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:18:41.058 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:19:00.812 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:19:11.060 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:19:41.062 [info] {"source":"oban","duration":1719,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:20:00.813 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:20:11.065 [info] {"source":"oban","duration":1585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:20:41.067 [info] {"source":"oban","duration":1589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:21:00.814 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:21:11.069 [info] {"source":"oban","duration":1538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:21:41.071 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:22:00.815 [info] {"source":"oban","duration":240,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:22:11.073 [info] {"source":"oban","duration":1307,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:22:41.075 [info] {"source":"oban","duration":1605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:23:00.816 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:23:11.077 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:23:41.079 [info] {"source":"oban","duration":1754,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:00.817 [info] {"source":"oban","duration":229,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:24:11.082 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:41.084 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:25:00.818 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:25:11.086 [info] {"source":"oban","duration":1604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:25:41.088 [info] {"source":"oban","duration":1247,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:26:00.819 [info] {"source":"oban","duration":287,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:26:11.090 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:26:41.092 [info] {"source":"oban","duration":1128,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:27:00.820 [info] {"source":"oban","duration":244,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:27:11.094 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:27:41.096 [info] {"source":"oban","duration":1693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:28:00.821 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:28:11.098 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:28:41.100 [info] {"source":"oban","duration":1560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:29:00.822 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:29:11.102 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:29:41.104 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:30:00.823 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:30:11.106 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:30:41.108 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:31:00.824 [info] {"source":"oban","duration":215,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:31:11.110 [info] {"source":"oban","duration":1093,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:31:41.112 [info] {"source":"oban","duration":1303,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:32:00.825 [info] {"source":"oban","duration":224,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:32:11.114 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:32:41.116 [info] {"source":"oban","duration":1140,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:33:00.826 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:33:11.118 [info] {"source":"oban","duration":1309,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:33:41.120 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:34:00.827 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:34:11.122 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:34:41.124 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:35:00.828 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:35:11.126 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:35:41.128 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:36:00.829 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:36:11.130 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:36:41.132 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:37:00.830 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:37:11.134 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:37:41.136 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:38:00.832 [info] {"source":"oban","duration":437,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:38:11.138 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:38:41.140 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:39:00.833 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:39:11.142 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:39:41.144 [info] {"source":"oban","duration":1573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:00.834 [info] {"source":"oban","duration":280,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:40:11.147 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:41.149 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:41:00.835 [info] {"source":"oban","duration":282,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:41:11.151 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:41:41.153 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:42:00.836 [info] {"source":"oban","duration":297,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:42:11.155 [info] {"source":"oban","duration":1302,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:42:41.157 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:43:00.837 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:43:11.159 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:43:41.161 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:44:00.838 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:44:11.163 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:44:41.165 [info] {"source":"oban","duration":1206,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:45:00.839 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:45:11.167 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:45:41.169 [info] {"source":"oban","duration":1220,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:46:00.840 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:46:11.171 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:46:41.173 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:47:00.841 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:47:11.175 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:47:41.176 [info] {"source":"oban","duration":869,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:48:00.842 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:48:11.179 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:48:41.181 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:49:00.843 [info] {"source":"oban","duration":308,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:49:11.182 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:49:41.185 [info] {"source":"oban","duration":1631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:50:00.844 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:50:11.187 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:50:41.189 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:51:00.845 [info] {"source":"oban","duration":270,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:51:11.191 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:51:41.193 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:00.847 [info] {"source":"oban","duration":1093,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:52:11.195 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:41.197 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:53:00.848 [info] {"source":"oban","duration":219,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:53:11.199 [info] {"source":"oban","duration":1401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:53:41.201 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:54:00.849 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:54:11.203 [info] {"source":"oban","duration":1257,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:54:41.205 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:55:00.850 [info] {"source":"oban","duration":271,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:55:11.207 [info] {"source":"oban","duration":1328,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:55:41.209 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:56:00.851 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:56:11.211 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:56:41.213 [info] {"source":"oban","duration":1016,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:57:00.852 [info] {"source":"oban","duration":300,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:57:11.214 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:57:41.217 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:58:00.853 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:58:11.219 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:58:41.221 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:59:00.854 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 04:59:11.223 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:59:41.225 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:00:00.855 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:00:11.227 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:00:41.229 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:00.856 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:01:11.231 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:41.233 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:02:00.857 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:02:11.235 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:02:41.237 [info] {"source":"oban","duration":1142,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:03:00.858 [info] {"source":"oban","duration":385,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:03:11.239 [info] {"source":"oban","duration":1625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:03:41.241 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:04:00.859 [info] {"source":"oban","duration":389,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:04:11.243 [info] {"source":"oban","duration":1003,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:04:41.245 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:05:00.860 [info] {"source":"oban","duration":348,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:05:11.357 [info] {"source":"oban","duration":111894,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":1} 05:05:41.437 [info] {"source":"oban","duration":78691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:06:00.861 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:06:11.440 [info] {"source":"oban","duration":1221,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:06:41.442 [info] {"source":"oban","duration":1114,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:07:00.862 [info] {"source":"oban","duration":302,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:07:11.444 [info] {"source":"oban","duration":1230,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:07:41.446 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:08:00.863 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:08:11.448 [info] {"source":"oban","duration":1532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:08:41.450 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:09:00.864 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:09:11.452 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:09:41.454 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:10:00.865 [info] {"source":"oban","duration":280,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:10:11.456 [info] {"source":"oban","duration":1539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:10:41.458 [info] {"source":"oban","duration":1070,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:11:00.866 [info] {"source":"oban","duration":397,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:11:11.460 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:11:41.462 [info] {"source":"oban","duration":1540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:12:00.867 [info] {"source":"oban","duration":403,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:12:11.464 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:12:41.466 [info] {"source":"oban","duration":1325,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:00.868 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:13:11.468 [info] {"source":"oban","duration":1029,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:41.470 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:14:00.869 [info] {"source":"oban","duration":389,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:14:11.472 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:14:41.474 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:15:00.870 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:15:11.476 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:15:41.478 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:16:00.871 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:16:11.480 [info] {"source":"oban","duration":1581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:16:41.482 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:17:00.872 [info] {"source":"oban","duration":290,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:17:11.484 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:17:41.486 [info] {"source":"oban","duration":1643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:18:00.873 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:18:11.488 [info] {"source":"oban","duration":1617,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:18:41.490 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:19:00.874 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:19:11.492 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:19:41.494 [info] {"source":"oban","duration":1361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:20:00.875 [info] {"source":"oban","duration":287,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:20:11.496 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:20:41.498 [info] {"source":"oban","duration":1240,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:21:00.876 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:21:11.499 [info] {"source":"oban","duration":740,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:21:41.501 [info] {"source":"oban","duration":1085,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:22:00.877 [info] {"source":"oban","duration":271,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:22:11.503 [info] {"source":"oban","duration":1076,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:22:41.505 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:23:00.878 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:23:11.507 [info] {"source":"oban","duration":1209,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:23:41.509 [info] {"source":"oban","duration":1653,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:24:00.880 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:24:11.511 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:24:41.513 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:25:00.881 [info] {"source":"oban","duration":172,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:25:11.515 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:25:41.517 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:26:00.882 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:26:11.519 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:26:41.521 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:27:00.883 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:27:11.523 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:27:41.525 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:28:00.884 [info] {"source":"oban","duration":296,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:28:11.527 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:28:41.529 [info] {"source":"oban","duration":1338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:29:00.885 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:29:11.531 [info] {"source":"oban","duration":1127,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:29:41.533 [info] {"source":"oban","duration":1099,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:30:00.886 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:30:11.535 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:30:41.537 [info] {"source":"oban","duration":1717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:31:00.887 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:31:11.540 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:31:41.542 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:32:00.888 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:32:11.544 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:32:41.546 [info] {"source":"oban","duration":1663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:33:00.889 [info] {"source":"oban","duration":198,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:33:11.548 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:33:41.550 [info] {"source":"oban","duration":1527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:34:00.890 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:34:11.552 [info] {"source":"oban","duration":1591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:34:41.554 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:35:00.891 [info] {"source":"oban","duration":381,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:35:11.556 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:35:41.558 [info] {"source":"oban","duration":1338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:36:00.892 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:36:11.560 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:36:41.562 [info] {"source":"oban","duration":1040,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:37:00.893 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:37:11.564 [info] {"source":"oban","duration":1003,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:37:37.527 [info] {"args":{"id":102574},"id":2878,"meta":{},"system_time":1769690257526920133,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":20,"tags":["media_item","media_fetching","show_in_dashboard"]} 05:37:37.540 [debug] QUERY OK source="media_items" db=11.9ms queue=0.3ms idle=447.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" = ?) [102574] 05:37:37.540 [info] User scripts lifecyle file either not present or is empty. Skipping. 05:37:37.555 [debug] QUERY OK source="sources" db=13.3ms queue=0.3ms idle=461.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] 05:37:37.580 [debug] QUERY OK source="media_profiles" db=24.0ms queue=0.4ms idle=475.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] 05:37:37.581 [debug] QUERY OK source="media_items" db=0.4ms queue=0.5ms idle=57.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 [102574] 05:37:37.594 [debug] QUERY OK source="media_metadata" db=10.2ms queue=0.1ms idle=57.4ms 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" = ?) [102574] 05:37:37.594 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=54.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] 05:37:37.607 [debug] QUERY OK source="settings" db=12.0ms idle=40.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:37:37.608 [debug] QUERY OK source="settings" db=0.2ms idle=27.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:37:37.609 [debug] Running yt-dlp command for action: get_downloadable_status 05:37:37.622 [debug] QUERY OK source="settings" db=0.2ms idle=40.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:37:37.623 [debug] QUERY OK source="settings" db=0.2ms idle=28.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 [] 05:37:37.623 [debug] QUERY OK source="settings" db=0.2ms 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 [] 05:37:37.624 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/20/60/206052467377735d5d91c2ebbc2ce209d01876f83162a77c0a145f686adaea8a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 05:37:41.566 [info] {"source":"oban","duration":1165,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:37:46.201 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/20/60/206052467377735d5d91c2ebbc2ce209d01876f83162a77c0a145f686adaea8a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 05:37:46.201 [debug] Running yt-dlp command for action: download 05:37:46.202 [debug] QUERY OK source="settings" db=0.4ms idle=1121.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:37:46.203 [debug] QUERY OK source="settings" db=0.3ms idle=1122.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 [] 05:37:46.203 [debug] QUERY OK source="settings" db=0.3ms idle=1123.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:37:46.204 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/8c/5c/8c5c0d6f3db3fe7f31a053e638bc3930f7f951160e341d8590774f65b55ee1e0.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 05:37:53.325 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/8c/5c/8c5c0d6f3db3fe7f31a053e638bc3930f7f951160e341d8590774f65b55ee1e0.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 05:37:53.325 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 05:37:53.504 [debug] QUERY OK source="media_items" db=177.9ms idle=1246.0ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n", ~U[2026-01-29 12:37:53Z], 102574] 05:37:53.547 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2878,"meta":{},"state":"discard","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":15977889,"event":"job:exception","queue_time":285793,"attempt":20,"tags":["media_item","media_fetching","show_in_dashboard"]} 05:38:00.894 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:38:11.568 [info] {"source":"oban","duration":1623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:38:41.571 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:39:00.895 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:39:11.573 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:39:41.575 [info] {"source":"oban","duration":1639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:40:00.896 [info] {"source":"oban","duration":233,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:40:11.577 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:40:41.579 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:41:00.897 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:41:11.581 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:41:41.583 [info] {"source":"oban","duration":1325,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:42:00.898 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:42:11.585 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:42:41.587 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:43:00.899 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:43:11.589 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:43:41.591 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:44:00.900 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:44:11.593 [info] {"source":"oban","duration":1517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:44:41.595 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:45:00.901 [info] {"source":"oban","duration":297,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:45:11.597 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:45:41.599 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:46:00.902 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:46:11.601 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:46:41.603 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:47:00.903 [info] {"source":"oban","duration":214,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:47:11.605 [info] {"source":"oban","duration":1083,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:47:41.607 [info] {"source":"oban","duration":1083,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:48:00.904 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:48:11.609 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:48:41.611 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:49:00.905 [info] {"source":"oban","duration":467,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:49:11.613 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:49:41.615 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:50:00.906 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:50:11.617 [info] {"source":"oban","duration":1092,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:50:41.619 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:51:00.907 [info] {"source":"oban","duration":409,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:51:11.621 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:51:41.623 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:52:00.908 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:52:11.625 [info] {"source":"oban","duration":1258,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:52:41.627 [info] {"source":"oban","duration":1093,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:53:00.909 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:53:11.628 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:53:41.630 [info] {"source":"oban","duration":986,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:54:00.910 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:54:11.633 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:54:41.635 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:55:00.912 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:55:11.637 [info] {"source":"oban","duration":1612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:55:41.639 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:56:00.913 [info] {"source":"oban","duration":362,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:56:11.641 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:56:41.643 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:57:00.914 [info] {"source":"oban","duration":423,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:57:11.645 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:57:41.647 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:58:00.915 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:58:11.649 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:58:41.651 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:58:54.148 [info] GET /txets.php 05:58:54.149 [debug] QUERY OK source="settings" db=0.2ms idle=1069.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 [] 05:58:54.150 [debug] QUERY OK source="settings" db=0.1ms idle=1069.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:58:54.150 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 05:58:54.150 [error] #PID<0.3958.0> running PinchflatWeb.Endpoint (connection #PID<0.3957.0>, stream id 1) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /txets.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 /txets (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.3957.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/txets.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 33674}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozlila/5.0 (Linux; Android 7.0; SM-G892A Bulid/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Moblie Safari/537.36", "x-forwarded-for" => "104.28.214.112", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "104.28.214.112" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", has_body: false, streamid: 1, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.3958.0>, params: %{}, path_info: ["txets"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, deflate"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozlila/5.0 (Linux; Android 7.0; SM-G892A Bulid/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Moblie Safari/537.36"}, {"x-forwarded-for", "104.28.214.112"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "104.28.214.112"} ], request_path: "/txets.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI81Evbt5cy0rX8AAF4C"} ], 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.3957.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/txets.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 33674}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozlila/5.0 (Linux; Android 7.0; SM-G892A Bulid/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Moblie Safari/537.36", "x-forwarded-for" => "104.28.214.112", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "104.28.214.112" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", has_body: false, streamid: 1, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /txets (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.3957.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/txets.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 33674}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozlila/5.0 (Linux; Android 7.0; SM-G892A Bulid/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Moblie Safari/537.36", "x-forwarded-for" => "104.28.214.112", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "104.28.214.112" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", has_body: false, streamid: 1, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.3958.0>, params: %{}, path_info: ["txets"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, deflate"}, (truncated) 05:59:00.916 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 05:59:11.653 [info] {"source":"oban","duration":1376,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:59:41.655 [info] {"source":"oban","duration":1198,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:00:00.917 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:00:11.657 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:00:41.659 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:01:00.918 [info] {"source":"oban","duration":305,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:01:11.661 [info] {"source":"oban","duration":1387,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:01:41.663 [info] {"source":"oban","duration":1146,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:02:00.919 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:02:11.665 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:02:41.667 [info] {"source":"oban","duration":1052,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:03:00.920 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:03:11.669 [info] {"source":"oban","duration":1679,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:03:41.672 [info] {"source":"oban","duration":1549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:04:00.921 [info] {"source":"oban","duration":428,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:04:11.674 [info] {"source":"oban","duration":1254,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:04:41.676 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:05:00.922 [info] {"source":"oban","duration":300,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:05:11.678 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:05:41.680 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:06:00.923 [info] {"source":"oban","duration":290,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:06:11.682 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:06:41.684 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:07:00.924 [info] {"source":"oban","duration":303,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:07:11.686 [info] {"source":"oban","duration":1390,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:07:41.688 [info] {"source":"oban","duration":1109,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:08:00.925 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:08:11.690 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:08:41.692 [info] {"source":"oban","duration":1122,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:09:00.926 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:09:11.694 [info] {"source":"oban","duration":1113,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:09:41.696 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:10:00.927 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:10:11.698 [info] {"source":"oban","duration":1604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:10:41.701 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:11:00.928 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:11:11.703 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:11:41.705 [info] {"source":"oban","duration":1621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:12:00.929 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:12:11.707 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:12:41.709 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:13:00.930 [info] {"source":"oban","duration":390,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:13:11.711 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:13:41.713 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:14:00.931 [info] {"source":"oban","duration":377,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:14:11.715 [info] {"source":"oban","duration":1411,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:14:41.717 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:15:00.932 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:15:11.719 [info] {"source":"oban","duration":1068,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:15:41.721 [info] {"source":"oban","duration":1171,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:00.933 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:16:11.723 [info] {"source":"oban","duration":1168,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:41.725 [info] {"source":"oban","duration":1195,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:17:00.934 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:17:11.727 [info] {"source":"oban","duration":1136,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:17:41.729 [info] {"source":"oban","duration":1654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:18:00.935 [info] {"source":"oban","duration":289,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:18:11.732 [info] {"source":"oban","duration":1401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:18:41.734 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:19:00.936 [info] {"source":"oban","duration":403,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:19:11.736 [info] {"source":"oban","duration":1628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:19:41.738 [info] {"source":"oban","duration":1785,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:00.937 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:20:11.741 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:41.743 [info] {"source":"oban","duration":1282,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:21:00.938 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:21:11.745 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:21:41.747 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:00.939 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:22:11.749 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:41.751 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:23:00.940 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:23:11.753 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:23:41.755 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:00.941 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:24:11.757 [info] {"source":"oban","duration":1218,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:41.759 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:25:00.942 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:25:11.761 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:25:41.763 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:26:00.943 [info] {"source":"oban","duration":269,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:26:11.765 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:26:41.767 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:27:00.944 [info] {"source":"oban","duration":427,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:27:11.769 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:27:41.771 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:00.946 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:28:11.773 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:41.775 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:29:00.947 [info] {"source":"oban","duration":274,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:29:11.777 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:29:41.779 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:30:00.948 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:30:11.781 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:30:41.783 [info] {"source":"oban","duration":1220,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:00.949 [info] {"source":"oban","duration":437,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:31:11.784 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:41.786 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:32:00.950 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:32:11.788 [info] {"source":"oban","duration":1046,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:32:41.790 [info] {"source":"oban","duration":1126,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:33:00.951 [info] {"source":"oban","duration":305,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:33:11.792 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:33:41.794 [info] {"source":"oban","duration":1647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:00.952 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:34:11.796 [info] {"source":"oban","duration":1622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:41.798 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:35:00.953 [info] {"source":"oban","duration":297,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:35:11.800 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:35:41.802 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:36:00.954 [info] {"source":"oban","duration":303,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:36:11.804 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:36:41.806 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:00.955 [info] {"source":"oban","duration":248,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:37:11.808 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:41.810 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:38:00.956 [info] {"source":"oban","duration":303,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:38:11.812 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:38:41.814 [info] {"source":"oban","duration":1160,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:39:00.957 [info] {"source":"oban","duration":433,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:39:11.816 [info] {"source":"oban","duration":1194,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:39:41.818 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:40:00.958 [info] {"source":"oban","duration":274,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:40:11.820 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:40:41.822 [info] {"source":"oban","duration":1109,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:00.959 [info] {"source":"oban","duration":303,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:41:11.824 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:41.826 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:42:00.960 [info] {"source":"oban","duration":149,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:42:11.828 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:42:41.830 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:43:00.961 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:43:11.832 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:43:41.834 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:00.962 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:44:11.836 [info] {"source":"oban","duration":1702,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:41.839 [info] {"source":"oban","duration":1074,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:45:00.963 [info] {"source":"oban","duration":290,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:45:11.841 [info] {"source":"oban","duration":1302,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:45:41.843 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:46:00.964 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:46:11.845 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:46:41.847 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:47:00.965 [info] {"source":"oban","duration":269,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:47:11.849 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:47:41.851 [info] {"source":"oban","duration":1178,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:48:00.966 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:48:11.853 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:48:41.854 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:49:00.967 [info] {"source":"oban","duration":234,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:49:11.857 [info] {"source":"oban","duration":1228,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:49:41.859 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:50:00.968 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:50:11.861 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:50:41.863 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:51:00.969 [info] {"source":"oban","duration":266,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:51:11.865 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:51:41.867 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:52:00.970 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:52:11.869 [info] {"source":"oban","duration":1527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:52:41.871 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:53:00.971 [info] {"source":"oban","duration":290,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:53:11.873 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:53:41.875 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:54:00.972 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:54:11.877 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:54:41.879 [info] {"source":"oban","duration":1382,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:55:00.973 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:55:11.881 [info] {"source":"oban","duration":1230,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:55:41.883 [info] {"source":"oban","duration":1066,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:56:00.974 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:56:11.885 [info] {"source":"oban","duration":1110,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:56:41.887 [info] {"source":"oban","duration":1309,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:57:00.975 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:57:11.889 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:57:41.891 [info] {"source":"oban","duration":1337,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:58:00.976 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:58:11.893 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:58:41.895 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:59:00.978 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 06:59:11.897 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:59:41.899 [info] {"source":"oban","duration":1247,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:00:00.979 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:00:11.901 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:00:41.903 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:01:00.980 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:01:11.905 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:01:41.907 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:02:00.981 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:02:11.909 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:02:41.911 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:03:00.982 [info] {"source":"oban","duration":269,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:03:11.913 [info] {"source":"oban","duration":1113,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:03:41.915 [info] {"source":"oban","duration":1155,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:04:00.983 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:04:11.917 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:04:41.919 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:05:00.984 [info] {"source":"oban","duration":296,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:05:11.921 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:05:41.923 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:06:00.985 [info] {"source":"oban","duration":237,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:06:11.925 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:06:41.927 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:07:00.986 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:07:11.929 [info] {"source":"oban","duration":1326,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:07:41.931 [info] {"source":"oban","duration":1550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:08:00.987 [info] {"source":"oban","duration":260,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:08:11.933 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:08:41.935 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:09:00.988 [info] {"source":"oban","duration":285,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:09:11.937 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:09:41.939 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:10:00.989 [info] {"source":"oban","duration":454,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:10:11.941 [info] {"source":"oban","duration":1216,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:10:41.943 [info] {"source":"oban","duration":1387,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:11:00.990 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:11:11.945 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:11:41.947 [info] {"source":"oban","duration":1389,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:12:00.991 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:12:11.949 [info] {"source":"oban","duration":1163,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:12:41.951 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:13:00.992 [info] {"source":"oban","duration":294,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:13:11.953 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:13:41.955 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:14:00.993 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:14:11.957 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:14:41.959 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:15:00.995 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:15:11.961 [info] {"source":"oban","duration":1610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:15:41.963 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:16:00.996 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:16:11.965 [info] {"source":"oban","duration":1254,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:16:41.967 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:17:00.997 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:17:11.969 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:17:41.971 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:18:00.998 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:18:11.973 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:18:41.975 [info] {"source":"oban","duration":1364,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:19:00.999 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:19:11.977 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:19:41.979 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:20:01.000 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:20:11.981 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:20:41.983 [info] {"source":"oban","duration":1367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:21:00.001 [info] {"source":"oban","duration":415,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:21:11.985 [info] {"source":"oban","duration":1380,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:21:41.987 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:22:00.002 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:22:11.989 [info] {"source":"oban","duration":1560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:22:41.991 [info] {"source":"oban","duration":1559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:23:00.003 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:23:11.993 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:23:41.995 [info] {"source":"oban","duration":1558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:24:00.004 [info] {"source":"oban","duration":406,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:24:11.996 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:24:41.999 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:25:00.005 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:25:12.001 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:25:42.003 [info] {"source":"oban","duration":1182,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:26:00.006 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:26:12.005 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:26:42.007 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:27:00.007 [info] {"source":"oban","duration":280,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:27:12.009 [info] {"source":"oban","duration":1082,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:27:42.011 [info] {"source":"oban","duration":1147,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:28:00.008 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:28:12.013 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:28:42.015 [info] {"source":"oban","duration":1499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:29:00.009 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:29:12.017 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:29:42.019 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:30:00.010 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:30:12.021 [info] {"source":"oban","duration":1616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:30:42.023 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:31:00.011 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:31:12.025 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:31:42.027 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:32:00.012 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:32:12.029 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:32:42.031 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:33:00.013 [info] {"source":"oban","duration":287,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:33:12.033 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:33:42.035 [info] {"source":"oban","duration":1209,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:34:00.014 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:34:12.037 [info] {"source":"oban","duration":1505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:34:42.039 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:35:00.015 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:35:12.041 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:35:42.043 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:36:00.016 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:36:12.045 [info] {"source":"oban","duration":1767,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:36:42.048 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:37:00.017 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:37:12.050 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:37:42.052 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:38:00.018 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:38:12.054 [info] {"source":"oban","duration":1504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:38:42.059 [info] {"source":"oban","duration":4068,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:39:00.019 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:39:12.062 [info] {"source":"oban","duration":2786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:39:42.065 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:40:00.021 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:40:12.067 [info] {"source":"oban","duration":1158,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:40:42.069 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:41:00.023 [info] {"source":"oban","duration":261,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:41:12.071 [info] {"source":"oban","duration":1106,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:41:42.073 [info] {"source":"oban","duration":1158,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:42:00.024 [info] {"source":"oban","duration":266,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:42:12.075 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:42:42.077 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:43:00.025 [info] {"source":"oban","duration":282,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:43:12.079 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:43:42.080 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:44:00.026 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:44:12.083 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:44:42.085 [info] {"source":"oban","duration":1581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:45:00.027 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:45:12.087 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:45:42.089 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:46:00.028 [info] {"source":"oban","duration":711,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:46:12.091 [info] {"source":"oban","duration":1229,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:46:42.093 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:47:00.030 [info] {"source":"oban","duration":290,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:47:12.095 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:47:42.097 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:48:00.031 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:48:12.099 [info] {"source":"oban","duration":1714,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:48:42.102 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:49:00.032 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:49:12.104 [info] {"source":"oban","duration":1189,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:49:42.106 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:50:00.033 [info] {"source":"oban","duration":197,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:50:12.108 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:50:42.110 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:51:00.034 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:51:12.112 [info] {"source":"oban","duration":1015,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:51:42.114 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:52:00.035 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:52:12.116 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:52:42.118 [info] {"source":"oban","duration":1218,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:53:00.036 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:53:12.120 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:53:42.122 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:54:00.037 [info] {"source":"oban","duration":279,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:54:12.124 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:54:42.126 [info] {"source":"oban","duration":1161,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:55:00.038 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:55:12.128 [info] {"source":"oban","duration":1115,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:55:42.130 [info] {"source":"oban","duration":1089,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:56:00.039 [info] {"source":"oban","duration":240,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:56:12.132 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:56:42.134 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:57:00.040 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:57:12.136 [info] {"source":"oban","duration":1230,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:57:42.138 [info] {"source":"oban","duration":1059,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:58:00.041 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:58:12.140 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:58:42.142 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:00.042 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 07:59:12.144 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:42.146 [info] {"source":"oban","duration":1505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:00:00.043 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:00:12.148 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:00:42.150 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:00.044 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:01:12.152 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:42.154 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:02:00.045 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:02:12.156 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:02:42.158 [info] {"source":"oban","duration":1319,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:00.046 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:03:12.160 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:42.162 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:04:00.047 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:04:12.164 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:04:42.166 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:05:00.048 [info] {"source":"oban","duration":285,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:05:12.168 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:05:42.170 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:06:00.049 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:06:12.172 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:06:42.174 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:07:00.050 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:07:12.176 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:07:42.178 [info] {"source":"oban","duration":1254,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:08:00.051 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:08:12.180 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:08:42.182 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:09:00.052 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:09:12.184 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:09:42.185 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:00.053 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:10:12.188 [info] {"source":"oban","duration":1653,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:42.190 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:11:00.054 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:11:12.192 [info] {"source":"oban","duration":1524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:11:42.194 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:12:00.055 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:12:12.196 [info] {"source":"oban","duration":1060,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:12:42.198 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:13:00.056 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:13:12.200 [info] {"source":"oban","duration":1045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:13:42.202 [info] {"source":"oban","duration":1165,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:14:00.057 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:14:12.204 [info] {"source":"oban","duration":1195,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:14:42.206 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:15:00.058 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:15:12.208 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:15:42.210 [info] {"source":"oban","duration":1325,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:16:00.059 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:16:12.212 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:16:42.214 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:00.060 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:17:12.216 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:42.218 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:18:00.061 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:18:12.220 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:18:42.222 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:19:00.062 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:19:12.224 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:19:42.226 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:20:00.063 [info] {"source":"oban","duration":296,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:20:12.229 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:20:42.231 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:21:00.064 [info] {"source":"oban","duration":279,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:21:12.233 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:21:42.235 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:22:00.065 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:22:12.237 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:22:42.238 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:23:00.066 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:23:12.240 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:23:42.243 [info] {"source":"oban","duration":1538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:24:00.067 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:24:12.245 [info] {"source":"oban","duration":1225,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:24:42.247 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:25:00.068 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:25:12.249 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:25:42.251 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:26:00.069 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:26:12.253 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:26:42.255 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:27:00.070 [info] {"source":"oban","duration":225,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:27:12.257 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:27:42.259 [info] {"source":"oban","duration":1344,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:28:00.071 [info] {"source":"oban","duration":270,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:28:12.261 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:28:42.263 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:29:00.072 [info] {"source":"oban","duration":239,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:29:12.265 [info] {"source":"oban","duration":1071,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:29:42.267 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:30:00.073 [info] {"source":"oban","duration":302,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:30:12.269 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:30:42.271 [info] {"source":"oban","duration":1166,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:31:00.074 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:31:12.273 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:31:42.275 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:32:00.075 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:32:12.277 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:32:42.279 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:33:00.076 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:33:12.281 [info] {"source":"oban","duration":1755,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:33:42.284 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:34:00.077 [info] {"source":"oban","duration":440,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:34:12.286 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:34:42.288 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:35:00.078 [info] {"source":"oban","duration":373,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:35:12.290 [info] {"source":"oban","duration":1603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:35:42.292 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:36:00.079 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:36:12.294 [info] {"source":"oban","duration":1236,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:36:42.296 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:37:00.080 [info] {"source":"oban","duration":219,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:37:12.298 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:37:42.300 [info] {"source":"oban","duration":1380,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:38:00.081 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:38:12.302 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:38:42.303 [info] {"source":"oban","duration":719,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:39:00.082 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:39:12.306 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:39:42.308 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:40:00.083 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:40:12.311 [info] {"source":"oban","duration":2116,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:40:42.313 [info] {"source":"oban","duration":1141,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:41:00.084 [info] {"source":"oban","duration":370,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:41:12.315 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:41:42.317 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:42:00.085 [info] {"source":"oban","duration":236,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:42:12.319 [info] {"source":"oban","duration":1465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:42:42.321 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:43:00.086 [info] {"source":"oban","duration":298,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:43:12.323 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:43:42.325 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:44:00.087 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:44:12.327 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:44:42.329 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:45:00.088 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:45:12.331 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:45:42.333 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:46:00.089 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:46:12.335 [info] {"source":"oban","duration":1718,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:46:42.338 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:47:00.090 [info] {"source":"oban","duration":298,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:47:12.340 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:47:42.342 [info] {"source":"oban","duration":1714,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:48:00.091 [info] {"source":"oban","duration":261,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:48:12.345 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:48:42.347 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:49:00.092 [info] {"source":"oban","duration":418,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:49:12.349 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:49:42.351 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:50:00.093 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:50:12.353 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:50:42.355 [info] {"source":"oban","duration":1604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:51:00.094 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:51:12.358 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:51:42.360 [info] {"source":"oban","duration":1664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:52:00.095 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:52:12.363 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:52:42.365 [info] {"source":"oban","duration":1249,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:53:00.097 [info] {"source":"oban","duration":220,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:53:12.367 [info] {"source":"oban","duration":1171,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:53:42.369 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:54:00.098 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:54:12.371 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:54:42.372 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:55:00.099 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:55:12.375 [info] {"source":"oban","duration":1570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:55:42.377 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:56:00.100 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:56:12.379 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:56:42.381 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:57:00.101 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:57:12.383 [info] {"source":"oban","duration":1601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:57:42.386 [info] {"source":"oban","duration":1361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:58:00.102 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:58:12.388 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:58:42.390 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:59:00.103 [info] {"source":"oban","duration":284,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 08:59:12.392 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:59:42.394 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:00:00.104 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:00:12.396 [info] {"source":"oban","duration":1564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:00:42.398 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:01:00.105 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:01:12.400 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:01:42.402 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:02:00.106 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:02:12.404 [info] {"source":"oban","duration":1564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:02:42.406 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:03:00.107 [info] {"source":"oban","duration":399,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:03:12.408 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:03:42.410 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:04:00.108 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:04:12.412 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:04:42.414 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:05:00.109 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:05:12.416 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:05:42.418 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:06:00.110 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:06:12.420 [info] {"source":"oban","duration":1517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:06:42.422 [info] {"source":"oban","duration":1580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:07:00.111 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:07:12.424 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:07:42.426 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:08:00.112 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:08:12.428 [info] {"source":"oban","duration":1171,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:08:42.430 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:09:00.113 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:09:12.432 [info] {"source":"oban","duration":1136,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:09:42.433 [info] {"source":"oban","duration":983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:10:00.114 [info] {"source":"oban","duration":362,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:10:12.436 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:10:42.438 [info] {"source":"oban","duration":1705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:11:00.115 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:11:12.441 [info] {"source":"oban","duration":1594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:11:42.443 [info] {"source":"oban","duration":1341,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:12:00.116 [info] {"source":"oban","duration":283,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:12:12.445 [info] {"source":"oban","duration":1389,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:12:42.447 [info] {"source":"oban","duration":1735,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:13:00.117 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:13:12.450 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:13:42.452 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:14:00.118 [info] {"source":"oban","duration":309,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:14:12.454 [info] {"source":"oban","duration":1266,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:14:42.456 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:15:00.119 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:15:12.458 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:15:42.459 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:16:00.120 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:16:12.462 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:16:42.464 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:17:00.121 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:17:12.466 [info] {"source":"oban","duration":1229,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:17:42.468 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:18:00.122 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:18:12.470 [info] {"source":"oban","duration":1799,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:18:42.473 [info] {"source":"oban","duration":1622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:19:00.123 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:19:12.475 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:19:42.477 [info] {"source":"oban","duration":1570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:20:00.124 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:20:12.479 [info] {"source":"oban","duration":1260,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:20:42.481 [info] {"source":"oban","duration":1155,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:21:00.125 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:21:12.483 [info] {"source":"oban","duration":1541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:21:42.485 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:22:00.126 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:22:12.487 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:22:42.489 [info] {"source":"oban","duration":1260,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:23:00.127 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:23:12.491 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:23:42.493 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:24:00.128 [info] {"source":"oban","duration":422,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:24:12.495 [info] {"source":"oban","duration":1253,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:24:42.496 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:25:00.129 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:25:12.499 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:25:42.501 [info] {"source":"oban","duration":1622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:26:00.130 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:26:12.503 [info] {"source":"oban","duration":1571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:26:42.505 [info] {"source":"oban","duration":1634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:27:00.131 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:27:12.508 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:27:42.510 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:28:00.132 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:28:12.512 [info] {"source":"oban","duration":1625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:28:42.515 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:29:00.133 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:29:12.518 [info] {"source":"oban","duration":1504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:29:42.520 [info] {"source":"oban","duration":1065,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:30:00.134 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:30:12.522 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:30:42.524 [info] {"source":"oban","duration":1191,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:31:00.135 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:31:12.526 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:31:42.528 [info] {"source":"oban","duration":1260,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:32:00.136 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:32:12.530 [info] {"source":"oban","duration":1361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:32:42.532 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:33:00.137 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:33:12.534 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:33:42.536 [info] {"source":"oban","duration":1594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:34:00.138 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:34:12.538 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:34:42.540 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:35:00.139 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:35:12.542 [info] {"source":"oban","duration":1532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:35:42.544 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:36:00.140 [info] {"source":"oban","duration":417,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:36:12.546 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:36:42.548 [info] {"source":"oban","duration":1557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:37:00.141 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:37:12.550 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:37:42.552 [info] {"source":"oban","duration":1021,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:38:00.142 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:38:12.554 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:38:42.556 [info] {"source":"oban","duration":1549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:39:00.143 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:39:12.558 [info] {"source":"oban","duration":1202,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:39:42.560 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:40:00.144 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:40:12.562 [info] {"source":"oban","duration":1040,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:40:42.564 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:41:00.145 [info] {"source":"oban","duration":283,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:41:12.566 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:41:42.568 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:42:00.146 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:42:12.570 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:42:42.572 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:43:00.147 [info] {"source":"oban","duration":436,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:43:12.574 [info] {"source":"oban","duration":1650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:43:42.576 [info] {"source":"oban","duration":1389,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:44:00.148 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:44:12.578 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:44:42.580 [info] {"source":"oban","duration":990,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:45:00.149 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:45:12.582 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:45:42.584 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:46:00.150 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:46:12.586 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:46:42.588 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:47:00.151 [info] {"source":"oban","duration":294,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:47:12.590 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:47:42.592 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:48:00.152 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:48:12.594 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:48:42.596 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:49:00.153 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:49:12.598 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:49:42.600 [info] {"source":"oban","duration":1117,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:50:00.154 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:50:12.602 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:50:42.604 [info] {"source":"oban","duration":1612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:51:00.155 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:51:12.606 [info] {"source":"oban","duration":1593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:51:42.608 [info] {"source":"oban","duration":1610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:52:00.156 [info] {"source":"oban","duration":251,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:52:12.610 [info] {"source":"oban","duration":1807,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:52:42.613 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:53:00.161 [info] {"source":"oban","duration":1983,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:53:12.615 [info] {"source":"oban","duration":1637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:53:42.617 [info] {"source":"oban","duration":1707,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:54:00.163 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:54:12.620 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:54:42.622 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:55:00.164 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:55:12.624 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:55:42.626 [info] {"source":"oban","duration":1142,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:56:00.165 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:56:12.628 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:56:42.630 [info] {"source":"oban","duration":1356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:57:00.166 [info] {"source":"oban","duration":244,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:57:12.632 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:57:42.634 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:58:00.167 [info] {"source":"oban","duration":269,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:58:12.636 [info] {"source":"oban","duration":1592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:58:42.638 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:59:00.168 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 09:59:12.640 [info] {"source":"oban","duration":1380,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:59:42.642 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:00:00.169 [info] {"source":"oban","duration":348,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:00:12.644 [info] {"source":"oban","duration":1712,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:00:42.647 [info] {"source":"oban","duration":1668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:00.170 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:01:12.650 [info] {"source":"oban","duration":1581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:42.653 [info] {"source":"oban","duration":1527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:02:00.171 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:02:12.655 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:02:42.657 [info] {"source":"oban","duration":1113,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:03:00.172 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:03:12.659 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:03:42.661 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:04:00.173 [info] {"source":"oban","duration":383,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:04:12.663 [info] {"source":"oban","duration":1137,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:04:42.665 [info] {"source":"oban","duration":1190,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:00.174 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:05:12.667 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:42.669 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:06:00.175 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:06:12.671 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:06:42.673 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:00.176 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:07:12.675 [info] {"source":"oban","duration":1562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:42.677 [info] {"source":"oban","duration":1247,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:08:00.177 [info] {"source":"oban","duration":247,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:08:12.679 [info] {"source":"oban","duration":1245,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:08:42.681 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:09:00.178 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:09:12.683 [info] {"source":"oban","duration":1117,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:09:42.685 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:10:00.179 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:10:12.687 [info] {"source":"oban","duration":1227,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:10:42.689 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:11:00.180 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:11:12.691 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:11:42.692 [info] {"source":"oban","duration":877,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:12:00.181 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:12:12.695 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:12:42.697 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:13:00.182 [info] {"source":"oban","duration":224,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:13:12.699 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:13:42.701 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:14:00.183 [info] {"source":"oban","duration":231,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:14:12.703 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:14:42.705 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:00.184 [info] {"source":"oban","duration":305,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:15:12.707 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:42.709 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:16:00.185 [info] {"source":"oban","duration":385,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:16:12.711 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:16:42.713 [info] {"source":"oban","duration":1206,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:17:00.186 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:17:12.715 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:17:42.717 [info] {"source":"oban","duration":1544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:18:00.187 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:18:12.719 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:18:42.721 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:19:00.188 [info] {"source":"oban","duration":389,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:19:12.723 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:19:42.725 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:20:00.189 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:20:12.727 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:20:42.729 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:21:00.190 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:21:12.731 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:21:42.733 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:22:00.191 [info] {"source":"oban","duration":305,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:22:12.735 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:22:42.737 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:23:00.192 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:23:12.739 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:23:42.741 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:24:00.193 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:24:12.743 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:24:42.745 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:25:00.196 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:25:12.747 [info] {"source":"oban","duration":1650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:25:42.750 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:26:00.197 [info] {"source":"oban","duration":230,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:26:12.752 [info] {"source":"oban","duration":1593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:26:42.755 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:27:00.198 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:27:12.756 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:27:42.759 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:28:00.199 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:28:12.761 [info] {"source":"oban","duration":1389,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:28:42.763 [info] {"source":"oban","duration":1682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:29:00.200 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:29:12.766 [info] {"source":"oban","duration":1540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:29:42.768 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:30:00.201 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:30:12.770 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:30:42.772 [info] {"source":"oban","duration":1306,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:31:00.202 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:31:12.774 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:31:42.776 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:32:00.203 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:32:12.778 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:32:42.780 [info] {"source":"oban","duration":1146,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:33:00.204 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:33:12.782 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:33:42.784 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:34:00.205 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:34:12.786 [info] {"source":"oban","duration":1344,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:34:42.788 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:35:00.206 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:35:12.789 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:35:42.792 [info] {"source":"oban","duration":1585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:36:00.207 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:36:12.794 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:36:42.796 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:37:00.208 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:37:12.798 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:37:42.800 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:38:00.209 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:38:12.802 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:38:42.804 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:39:00.210 [info] {"source":"oban","duration":391,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:39:12.806 [info] {"source":"oban","duration":1125,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:39:42.808 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:40:00.211 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:40:12.810 [info] {"source":"oban","duration":1387,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:40:42.812 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:41:00.212 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:41:12.814 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:41:42.816 [info] {"source":"oban","duration":1074,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:42:00.213 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:42:12.818 [info] {"source":"oban","duration":1061,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:42:42.820 [info] {"source":"oban","duration":1009,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:43:00.214 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:43:12.822 [info] {"source":"oban","duration":1071,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:43:42.824 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:44:00.215 [info] {"source":"oban","duration":243,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:44:12.826 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:44:42.828 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:45:00.216 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:45:12.830 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:45:42.832 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:46:00.217 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:46:12.834 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:46:42.836 [info] {"source":"oban","duration":1599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:47:00.218 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:47:12.838 [info] {"source":"oban","duration":1240,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:47:42.840 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:48:00.219 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:48:12.842 [info] {"source":"oban","duration":1175,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:48:42.844 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:49:00.220 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:49:12.846 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:49:42.848 [info] {"source":"oban","duration":1609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:50:00.221 [info] {"source":"oban","duration":407,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:50:12.850 [info] {"source":"oban","duration":1142,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:50:42.851 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:51:00.222 [info] {"source":"oban","duration":414,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:51:12.854 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:51:42.856 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:52:00.223 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:52:12.859 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:52:42.861 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:53:00.224 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:53:12.863 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:53:42.865 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:54:00.225 [info] {"source":"oban","duration":282,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:54:12.867 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:54:42.869 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:55:00.226 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:55:12.871 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:55:42.873 [info] {"source":"oban","duration":1615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:56:00.227 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:56:12.875 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:56:42.877 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:57:00.228 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:57:12.879 [info] {"source":"oban","duration":1151,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:57:42.881 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:58:00.229 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:58:12.883 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:58:42.884 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:59:00.230 [info] {"source":"oban","duration":309,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 10:59:12.887 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:59:42.889 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:00:00.231 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:00:12.891 [info] {"source":"oban","duration":1141,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:00:42.893 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:01:00.232 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:01:12.895 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:01:42.897 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:02:00.233 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:02:12.899 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:02:42.947 [info] {"source":"oban","duration":47700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":1} 11:03:00.234 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:03:12.950 [info] {"source":"oban","duration":1624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:03:42.952 [info] {"source":"oban","duration":1588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:04:00.235 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:04:12.954 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:04:42.956 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:05:00.236 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:05:12.958 [info] {"source":"oban","duration":1151,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:05:42.960 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:06:00.237 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:06:12.962 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:06:42.963 [info] {"source":"oban","duration":812,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:00.238 [info] {"source":"oban","duration":385,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:07:12.966 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:42.968 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:43.188 [info] {"args":{"id":1},"id":2968,"meta":{},"system_time":1769710063188522028,"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"]} 11:07:43.189 [debug] QUERY OK source="sources" db=0.2ms queue=0.3ms idle=1104.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] 11:07:43.190 [debug] QUERY OK source="settings" db=0.2ms idle=221.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 [] 11:07:48.648 [debug] QUERY OK source="media_items" db=5457.3ms queue=0.3ms idle=19.3ms 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] 11:07:48.843 [debug] QUERY OK source="media_items" db=192.9ms queue=0.5ms idle=3973.2ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 11:07:48.844 [debug] QUERY OK source="media_profiles" db=0.4ms idle=194.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] 11:07:48.845 [debug] QUERY OK source="settings" db=0.2ms idle=194.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 [] 11:07:48.845 [debug] QUERY OK source="settings" db=0.3ms idle=192.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 [] 11:07:48.856 [debug] QUERY OK source="media_items" db=8.7ms queue=0.3ms idle=186.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."source_id" = ?) ORDER BY m0."uploaded_at" DESC LIMIT 50 OFFSET 20 [1] 11:07:48.886 [debug] Running yt-dlp command for action: get_media_attributes_for_collection 11:07:48.886 [debug] Current batch of media processed. Will check again in 1000ms 11:07:48.887 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=43.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 [] 11:07:48.887 [debug] QUERY OK source="settings" db=0.3ms idle=43.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 [] 11:07:48.887 [debug] QUERY OK source="settings" db=0.2ms idle=42.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 [] 11:07:48.888 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/@thetabernaclechoir/streams --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --break-on-existing --download-archive /tmp/pinchflat/data/f8/e1/f8e17dbe04a0d310241531d4e9372ec8e6ca942deeef7a4fc8ec9b0799581f53.txt --print-to-file %(.{id,title,live_status,original_url,description,aspect_ratio,duration,upload_date,timestamp,playlist_index,filename})j /tmp/pinchflat/data/d3/95/d395b473dead11a6355b2034de148885da6e55628c8d6c3829e13d5d10de0b07.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:07:49.887 [debug] Current batch of media processed. Will check again in 1000ms 11:07:50.888 [debug] Current batch of media processed. Will check again in 1000ms 11:07:51.889 [debug] Current batch of media processed. Will check again in 1000ms 11:07:52.890 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "The Tabernacle Choir and Orchestra at Temple Square will travel to São Paulo, Brazil, for a performance on February 28, 2026. This performance is part of their “Songs of Hope” World Tour. It will be the sixth stop on the tour, following visits to Mexico, the Philippines, Florida and Georgia, USA, Peru, and Argentina.", "filename" => "/downloads/tabernacle choir/2025-10-21 The Tabernacle Choir World Tour – São Paulo, Brazil/The Tabernacle Choir World Tour – São Paulo, Brazil [_UsZrbofuic].NA", "id" => "_UsZrbofuic", "live_status" => "is_upcoming", "original_url" => "https://www.youtube.com/watch?v=_UsZrbofuic", "playlist_index" => 1, "timestamp" => 1761084846, "title" => "The Tabernacle Choir World Tour – São Paulo, Brazil", "upload_date" => "20251021"} 11:07:52.891 [debug] QUERY OK source="sources" db=0.5ms idle=242.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" IN (?)) [1] 11:07:52.892 [debug] QUERY OK source="sources" db=0.4ms idle=243.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] 11:07:52.894 [debug] QUERY OK source="media_items" db=0.9ms queue=0.3ms idle=244.6ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-21 22:14:06Z], 1] 11:07:52.963 [debug] QUERY OK source="media_items" db=68.0ms idle=233.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","livestream","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The Tabernacle Choir and Orchestra at Temple Square will travel to São Paulo, Brazil, for a performance on February 28, 2026. This performance is part of their “Songs of Hope” World Tour. It will be the sixth stop on the tour, following visits to Mexico, the Philippines, Florida and Georgia, USA, Peru, and Argentina.", "The Tabernacle Choir World Tour – São Paulo, Brazil", "58fb9144-ad90-4ee9-831d-fe585009c31e", "https://www.youtube.com/watch?v=_UsZrbofuic", "_UsZrbofuic", true, 1, "/downloads/tabernacle choir/2025-10-21 The Tabernacle Choir World Tour – São Paulo, Brazil/The Tabernacle Choir World Tour – São Paulo, Brazil [_UsZrbofuic].NA", false, false, false, 1, [], 98, ~U[2025-10-21 22:14:06Z], ~U[2026-01-29 18:07:52Z], ~U[2026-01-29 18:07:52Z], "The Tabernacle Choir and Orchestra at Temple Square will travel to São Paulo, Brazil, for a performance on February 28, 2026. This performance is part of their “Songs of Hope” World Tour. It will be the sixth stop on the tour, following visits to Mexico, the Philippines, Florida and Georgia, USA, Peru, and Argentina.", "The Tabernacle Choir World Tour – São Paulo, Brazil", "https://www.youtube.com/watch?v=_UsZrbofuic", "_UsZrbofuic", nil, true, "/downloads/tabernacle choir/2025-10-21 The Tabernacle Choir World Tour – São Paulo, Brazil/The Tabernacle Choir World Tour – São Paulo, Brazil [_UsZrbofuic].NA", false, 1, ~U[2025-10-21 22:14:06Z]] 11:07:52.963 [debug] QUERY OK source="sources" db=0.3ms idle=294.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] 11:07:52.964 [debug] QUERY OK source="media_profiles" db=0.3ms idle=72.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] 11:07:52.965 [debug] QUERY OK source="media_items" db=0.8ms idle=72.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 [103080] 11:07:52.966 [info] Kicking off download for media item #103080 (_UsZrbofuic) 11:07:53.019 [debug] Current batch of media processed. Will check again in 1000ms 11:07:54.021 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "filename" => "/downloads/tabernacle choir/2025-12-17 02⧸22⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸22⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [rDn7g37M7PI].NA", "id" => "rDn7g37M7PI", "live_status" => "is_upcoming", "original_url" => "https://www.youtube.com/watch?v=rDn7g37M7PI", "playlist_index" => 2, "timestamp" => 1765942671, "title" => "02/22/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "upload_date" => "20251217"} 11:07:54.022 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=1057.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" IN (?)) [1] 11:07:54.023 [debug] QUERY OK source="sources" db=0.4ms idle=1057.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] 11:07:54.027 [debug] QUERY OK source="media_items" db=2.7ms idle=1004.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-17 03:37:51Z], 1] 11:07:54.103 [debug] QUERY OK source="media_items" db=74.8ms idle=363.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","livestream","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/22/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "94ea0aef-1392-4f7a-9c08-e3435043cf62", "https://www.youtube.com/watch?v=rDn7g37M7PI", "rDn7g37M7PI", true, 2, "/downloads/tabernacle choir/2025-12-17 02⧸22⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸22⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [rDn7g37M7PI].NA", false, false, false, 1, [], 95, ~U[2025-12-17 03:37:51Z], ~U[2026-01-29 18:07:54Z], ~U[2026-01-29 18:07:54Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/22/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=rDn7g37M7PI", "rDn7g37M7PI", nil, true, "/downloads/tabernacle choir/2025-12-17 02⧸22⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸22⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [rDn7g37M7PI].NA", false, 1, ~U[2025-12-17 03:37:51Z]] 11:07:54.103 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=433.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] 11:07:54.104 [debug] QUERY OK source="media_profiles" db=0.4ms idle=81.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] 11:07:54.105 [debug] QUERY OK source="media_items" db=0.7ms idle=81.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 [106250] 11:07:54.106 [info] Kicking off download for media item #106250 (rDn7g37M7PI) 11:07:54.108 [debug] Current batch of media processed. Will check again in 1000ms 11:07:55.109 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "filename" => "/downloads/tabernacle choir/2025-12-17 02⧸15⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸15⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [R9vIPTzQi8Y].NA", "id" => "R9vIPTzQi8Y", "live_status" => "is_upcoming", "original_url" => "https://www.youtube.com/watch?v=R9vIPTzQi8Y", "playlist_index" => 3, "timestamp" => 1765942614, "title" => "02/15/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "upload_date" => "20251217"} 11:07:55.110 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1005.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" IN (?)) [1] 11:07:55.111 [debug] QUERY OK source="sources" db=0.3ms idle=1005.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] 11:07:55.114 [debug] QUERY OK source="media_items" db=2.6ms queue=0.1ms idle=1003.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-17 03:36:54Z], 1] 11:07:55.123 [debug] QUERY OK source="media_items" db=7.7ms idle=449.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","livestream","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/15/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "076f4aaa-3a88-48db-bd48-475b0fc426e9", "https://www.youtube.com/watch?v=R9vIPTzQi8Y", "R9vIPTzQi8Y", true, 3, "/downloads/tabernacle choir/2025-12-17 02⧸15⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸15⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [R9vIPTzQi8Y].NA", false, false, false, 1, [], 95, ~U[2025-12-17 03:36:54Z], ~U[2026-01-29 18:07:55Z], ~U[2026-01-29 18:07:55Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/15/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=R9vIPTzQi8Y", "R9vIPTzQi8Y", nil, true, "/downloads/tabernacle choir/2025-12-17 02⧸15⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸15⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [R9vIPTzQi8Y].NA", false, 1, ~U[2025-12-17 03:36:54Z]] 11:07:55.123 [debug] QUERY OK source="sources" db=0.3ms idle=451.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] 11:07:55.124 [debug] QUERY OK source="media_profiles" db=0.3ms idle=13.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] 11:07:55.125 [debug] QUERY OK source="media_items" db=0.6ms idle=13.5ms 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 [105678] 11:07:55.125 [info] Kicking off download for media item #105678 (R9vIPTzQi8Y) 11:07:55.128 [debug] Current batch of media processed. Will check again in 1000ms 11:07:56.129 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "filename" => "/downloads/tabernacle choir/2025-12-17 02⧸08⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸08⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [qKnVpnVrQSY].NA", "id" => "qKnVpnVrQSY", "live_status" => "is_upcoming", "original_url" => "https://www.youtube.com/watch?v=qKnVpnVrQSY", "playlist_index" => 4, "timestamp" => 1765942529, "title" => "02/08/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "upload_date" => "20251217"} 11:07:56.130 [debug] QUERY OK source="sources" db=0.5ms idle=1005.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" IN (?)) [1] 11:07:56.131 [debug] QUERY OK source="sources" db=0.6ms idle=1005.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] 11:07:56.134 [debug] QUERY OK source="media_items" db=2.6ms idle=1004.3ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-17 03:35:29Z], 1] 11:07:58.113 [debug] QUERY OK source="media_items" db=1977.8ms idle=467.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","livestream","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/08/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "2504486c-2429-48d1-abec-79a55f47ac9e", "https://www.youtube.com/watch?v=qKnVpnVrQSY", "qKnVpnVrQSY", true, 4, "/downloads/tabernacle choir/2025-12-17 02⧸08⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸08⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [qKnVpnVrQSY].NA", false, false, false, 1, [], 95, ~U[2025-12-17 03:35:29Z], ~U[2026-01-29 18:07:56Z], ~U[2026-01-29 18:07:56Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/08/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=qKnVpnVrQSY", "qKnVpnVrQSY", nil, true, "/downloads/tabernacle choir/2025-12-17 02⧸08⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸08⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [qKnVpnVrQSY].NA", false, 1, ~U[2025-12-17 03:35:29Z]] 11:07:58.114 [debug] QUERY OK source="sources" db=0.3ms idle=1.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] 11:07:58.115 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1.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] 11:07:58.116 [debug] QUERY OK source="media_items" db=0.7ms idle=2.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 [104641] 11:07:58.116 [info] Kicking off download for media item #104641 (qKnVpnVrQSY) 11:07:58.139 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "filename" => "/downloads/tabernacle choir/2025-12-17 02⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [Ww4Ys0x9mbA].NA", "id" => "Ww4Ys0x9mbA", "live_status" => "is_upcoming", "original_url" => "https://www.youtube.com/watch?v=Ww4Ys0x9mbA", "playlist_index" => 5, "timestamp" => 1765941970, "title" => "02/01/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "upload_date" => "20251217"} 11:07:58.140 [debug] QUERY OK source="sources" db=0.4ms idle=25.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] 11:07:58.141 [debug] QUERY OK source="sources" db=0.4ms idle=25.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] 11:07:58.144 [debug] QUERY OK source="media_items" db=2.7ms queue=0.1ms idle=25.1ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-17 03:26:10Z], 1] 11:07:58.148 [debug] QUERY OK source="media_items" db=2.8ms idle=24.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","livestream","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/01/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "78328b69-4e2c-4827-afaa-61cfe8f74a55", "https://www.youtube.com/watch?v=Ww4Ys0x9mbA", "Ww4Ys0x9mbA", true, 5, "/downloads/tabernacle choir/2025-12-17 02⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [Ww4Ys0x9mbA].NA", false, false, false, 1, [], 95, ~U[2025-12-17 03:26:10Z], ~U[2026-01-29 18:07:58Z], ~U[2026-01-29 18:07:58Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/01/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=Ww4Ys0x9mbA", "Ww4Ys0x9mbA", nil, true, "/downloads/tabernacle choir/2025-12-17 02⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [Ww4Ys0x9mbA].NA", false, 1, ~U[2025-12-17 03:26:10Z]] 11:07:58.149 [debug] QUERY OK source="sources" db=0.4ms idle=9.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] 11:07:58.150 [debug] QUERY OK source="media_profiles" db=0.6ms idle=8.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] 11:07:58.151 [debug] QUERY OK source="media_items" db=0.5ms idle=8.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 [104642] 11:07:58.151 [info] Kicking off download for media item #104642 (Ww4Ys0x9mbA) 11:07:58.153 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "duration" => 1698, "filename" => "/downloads/tabernacle choir/2026-01-25 01⧸25⧸26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream)/01⧸25⧸26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream) [opR_Tg1uLjc].mp4", "id" => "opR_Tg1uLjc", "live_status" => "was_live", "original_url" => "https://www.youtube.com/watch?v=opR_Tg1uLjc", "playlist_index" => 6, "timestamp" => 1769360625, "title" => "01/25/26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream)", "upload_date" => "20260125"} 11:07:58.154 [debug] QUERY OK source="sources" db=0.3ms idle=6.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" IN (?)) [1] 11:07:58.155 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 11:07:58.158 [debug] QUERY OK source="media_items" db=2.5ms idle=5.4ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-25 17:03:45Z], 1] 11:07:58.163 [debug] QUERY OK source="media_items" db=4.1ms queue=0.1ms idle=7.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "01/25/26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream)", "a6deb6d8-271e-4816-8267-a28a3d0428f5", "https://www.youtube.com/watch?v=opR_Tg1uLjc", "opR_Tg1uLjc", 1698, true, 6, "/downloads/tabernacle choir/2026-01-25 01⧸25⧸26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream)/01⧸25⧸26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream) [opR_Tg1uLjc].mp4", false, false, false, 1, [], 98, ~U[2026-01-25 17:03:45Z], ~U[2026-01-29 18:07:58Z], ~U[2026-01-29 18:07:58Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "01/25/26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=opR_Tg1uLjc", "opR_Tg1uLjc", 1698, true, "/downloads/tabernacle choir/2026-01-25 01⧸25⧸26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream)/01⧸25⧸26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream) [opR_Tg1uLjc].mp4", false, 1, ~U[2026-01-25 17:03:45Z]] 11:07:58.164 [debug] QUERY OK source="sources" db=0.4ms idle=10.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] 11:07:58.164 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=9.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] 11:07:58.166 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=10.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 [102574] 11:07:58.166 [info] Kicking off download for media item #102574 (opR_Tg1uLjc) 11:07:58.169 [debug] QUERY OK source="tasks" db=0.5ms queue=0.1ms idle=4.9ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2973, 102574, ~U[2026-01-29 18:07:58Z], ~U[2026-01-29 18:07:58Z]] 11:07:58.170 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "duration" => 1677, "filename" => "/downloads/tabernacle choir/2026-01-18 01⧸18⧸26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir/01⧸18⧸26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir [mxh_kSXFWpg].mp4", "id" => "mxh_kSXFWpg", "live_status" => "was_live", "original_url" => "https://www.youtube.com/watch?v=mxh_kSXFWpg", "playlist_index" => 7, "timestamp" => 1768755865, "title" => "01/18/26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir", "upload_date" => "20260118"} 11:07:58.171 [debug] QUERY OK source="sources" db=0.4ms 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" IN (?)) [1] 11:07:58.171 [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" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 11:07:58.174 [debug] QUERY OK source="media_items" db=2.5ms queue=0.1ms idle=4.0ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-18 17:04:25Z], 1] 11:07:58.180 [debug] QUERY OK source="media_items" db=4.6ms idle=5.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "01/18/26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir", "bdac3304-1b00-4a93-805c-4cbbc0a546f9", "https://www.youtube.com/watch?v=mxh_kSXFWpg", "mxh_kSXFWpg", 1677, true, 7, "/downloads/tabernacle choir/2026-01-18 01⧸18⧸26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir/01⧸18⧸26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir [mxh_kSXFWpg].mp4", false, false, false, 1, [], 97, ~U[2026-01-18 17:04:25Z], ~U[2026-01-29 18:07:58Z], ~U[2026-01-29 18:07:58Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "01/18/26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir", "https://www.youtube.com/watch?v=mxh_kSXFWpg", "mxh_kSXFWpg", 1677, true, "/downloads/tabernacle choir/2026-01-18 01⧸18⧸26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir/01⧸18⧸26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir [mxh_kSXFWpg].mp4", false, 1, ~U[2026-01-18 17:04:25Z]] 11:07:58.181 [debug] QUERY OK source="sources" db=0.3ms idle=9.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] 11:07:58.182 [debug] QUERY OK source="media_profiles" db=0.8ms idle=9.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] 11:07:58.182 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769710078182068164,"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"]} 11:07:58.183 [debug] QUERY OK source="media_items" db=1.3ms idle=2.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 [102576] 11:07:58.184 [debug] QUERY OK source="media_items" db=1.6ms idle=7.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" = ?) [102574] 11:07:58.184 [debug] Current batch of media processed. Will check again in 1000ms 11:07:58.184 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:07:58.185 [debug] QUERY OK source="sources" db=0.4ms 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] 11:07:58.186 [debug] QUERY OK source="media_profiles" db=0.4ms idle=3.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] 11:07:58.187 [debug] QUERY OK source="media_items" db=0.6ms idle=4.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 [102574] 11:07:58.188 [debug] QUERY OK source="media_metadata" db=0.1ms idle=4.3ms 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" = ?) [102574] 11:07:58.189 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 11:07:58.190 [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 [] 11:07:58.190 [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 [] 11:07:58.191 [debug] Running yt-dlp command for action: get_downloadable_status 11:07:58.246 [debug] QUERY OK source="settings" db=0.2ms idle=58.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 [] 11:07:58.246 [debug] QUERY OK source="settings" db=0.2ms idle=57.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 [] 11:07:58.247 [debug] QUERY OK source="settings" db=0.2ms idle=57.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 [] 11:07:58.247 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/24/99/2499819148cf18895a9082be8ec7698a58af5bda2a6e1aafddd1d1d1b8dc0910.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:07:59.185 [debug] Current batch of media processed. Will check again in 1000ms 11:07:59.439 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/@thetabernaclechoir/streams --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --break-on-existing --download-archive /tmp/pinchflat/data/f8/e1/f8e17dbe04a0d310241531d4e9372ec8e6ca942deeef7a4fc8ec9b0799581f53.txt --print-to-file %(.{id,title,live_status,original_url,description,aspect_ratio,duration,upload_date,timestamp,playlist_index,filename})j /tmp/pinchflat/data/d3/95/d395b473dead11a6355b2034de148885da6e55628c8d6c3829e13d5d10de0b07.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 101 with: 11:07:59.440 [debug] Gracefully stopping file follower 11:07:59.441 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1194.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" IN (?)) [1] 11:07:59.442 [debug] QUERY OK source="sources" db=0.3ms idle=1195.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] 11:07:59.444 [debug] QUERY OK source="media_items" db=2.2ms idle=1195.2ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-21 22:14:06Z], 1] 11:07:59.446 [debug] QUERY OK source="media_items" db=1.1ms idle=329.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","livestream","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The Tabernacle Choir and Orchestra at Temple Square will travel to São Paulo, Brazil, for a performance on February 28, 2026. This performance is part of their “Songs of Hope” World Tour. It will be the sixth stop on the tour, following visits to Mexico, the Philippines, Florida and Georgia, USA, Peru, and Argentina.", "The Tabernacle Choir World Tour – São Paulo, Brazil", "f17a7d03-0114-417d-8c30-6b38a5babd11", "https://www.youtube.com/watch?v=_UsZrbofuic", "_UsZrbofuic", true, 1, "/downloads/tabernacle choir/2025-10-21 The Tabernacle Choir World Tour – São Paulo, Brazil/The Tabernacle Choir World Tour – São Paulo, Brazil [_UsZrbofuic].NA", false, false, false, 1, [], 98, ~U[2025-10-21 22:14:06Z], ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z], "The Tabernacle Choir and Orchestra at Temple Square will travel to São Paulo, Brazil, for a performance on February 28, 2026. This performance is part of their “Songs of Hope” World Tour. It will be the sixth stop on the tour, following visits to Mexico, the Philippines, Florida and Georgia, USA, Peru, and Argentina.", "The Tabernacle Choir World Tour – São Paulo, Brazil", "https://www.youtube.com/watch?v=_UsZrbofuic", "_UsZrbofuic", nil, true, "/downloads/tabernacle choir/2025-10-21 The Tabernacle Choir World Tour – São Paulo, Brazil/The Tabernacle Choir World Tour – São Paulo, Brazil [_UsZrbofuic].NA", false, 1, ~U[2025-10-21 22:14:06Z]] 11:07:59.447 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=324.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] 11:07:59.449 [debug] QUERY OK source="media_items" db=1.9ms queue=0.1ms idle=6.1ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-17 03:37:51Z], 1] 11:07:59.452 [debug] QUERY OK source="media_items" db=1.6ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","livestream","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/22/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "b80a316f-0e9b-48b4-9ebc-f96478b6b4c7", "https://www.youtube.com/watch?v=rDn7g37M7PI", "rDn7g37M7PI", true, 2, "/downloads/tabernacle choir/2025-12-17 02⧸22⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸22⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [rDn7g37M7PI].NA", false, false, false, 1, [], 95, ~U[2025-12-17 03:37:51Z], ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/22/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=rDn7g37M7PI", "rDn7g37M7PI", nil, true, "/downloads/tabernacle choir/2025-12-17 02⧸22⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸22⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [rDn7g37M7PI].NA", false, 1, ~U[2025-12-17 03:37:51Z]] 11:07:59.453 [debug] QUERY OK source="sources" db=0.6ms idle=7.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] 11:07:59.455 [debug] QUERY OK source="media_items" db=1.8ms idle=7.1ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-17 03:36:54Z], 1] 11:07:59.457 [debug] QUERY OK source="media_items" db=1.5ms idle=8.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","livestream","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/15/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "0cc04942-471d-4a2b-90b2-a480fec37c12", "https://www.youtube.com/watch?v=R9vIPTzQi8Y", "R9vIPTzQi8Y", true, 3, "/downloads/tabernacle choir/2025-12-17 02⧸15⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸15⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [R9vIPTzQi8Y].NA", false, false, false, 1, [], 95, ~U[2025-12-17 03:36:54Z], ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/15/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=R9vIPTzQi8Y", "R9vIPTzQi8Y", nil, true, "/downloads/tabernacle choir/2025-12-17 02⧸15⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸15⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [R9vIPTzQi8Y].NA", false, 1, ~U[2025-12-17 03:36:54Z]] 11:07:59.458 [debug] QUERY OK source="sources" db=0.5ms idle=8.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] 11:07:59.461 [debug] QUERY OK source="media_items" db=2.0ms queue=0.1ms idle=7.4ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-17 03:35:29Z], 1] 11:07:59.463 [debug] QUERY OK source="media_items" db=1.5ms idle=8.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","livestream","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/08/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "43cc274b-2180-43e6-a5ba-823e4aff953a", "https://www.youtube.com/watch?v=qKnVpnVrQSY", "qKnVpnVrQSY", true, 4, "/downloads/tabernacle choir/2025-12-17 02⧸08⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸08⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [qKnVpnVrQSY].NA", false, false, false, 1, [], 95, ~U[2025-12-17 03:35:29Z], ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/08/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=qKnVpnVrQSY", "qKnVpnVrQSY", nil, true, "/downloads/tabernacle choir/2025-12-17 02⧸08⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸08⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [qKnVpnVrQSY].NA", false, 1, ~U[2025-12-17 03:35:29Z]] 11:07:59.464 [debug] QUERY OK source="sources" db=0.5ms idle=8.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] 11:07:59.466 [debug] QUERY OK source="media_items" db=2.0ms idle=7.0ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-17 03:26:10Z], 1] 11:07:59.469 [debug] QUERY OK source="media_items" db=1.8ms idle=8.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","livestream","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/01/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "66bf540f-391d-4ef5-a9b8-aa95a2dd7eea", "https://www.youtube.com/watch?v=Ww4Ys0x9mbA", "Ww4Ys0x9mbA", true, 5, "/downloads/tabernacle choir/2025-12-17 02⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [Ww4Ys0x9mbA].NA", false, false, false, 1, [], 95, ~U[2025-12-17 03:26:10Z], ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "02/01/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=Ww4Ys0x9mbA", "Ww4Ys0x9mbA", nil, true, "/downloads/tabernacle choir/2025-12-17 02⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/02⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [Ww4Ys0x9mbA].NA", false, 1, ~U[2025-12-17 03:26:10Z]] 11:07:59.470 [debug] QUERY OK source="sources" db=0.6ms idle=8.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] 11:07:59.472 [debug] QUERY OK source="media_items" db=1.9ms queue=0.1ms idle=7.4ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-25 17:03:45Z], 1] 11:07:59.475 [debug] QUERY OK source="media_items" db=1.7ms idle=8.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "01/25/26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream)", "b81aac54-fb6d-4297-8552-835159904961", "https://www.youtube.com/watch?v=opR_Tg1uLjc", "opR_Tg1uLjc", 1698, true, 6, "/downloads/tabernacle choir/2026-01-25 01⧸25⧸26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream)/01⧸25⧸26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream) [opR_Tg1uLjc].mp4", false, false, false, 1, [], 98, ~U[2026-01-25 17:03:45Z], ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "01/25/26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=opR_Tg1uLjc", "opR_Tg1uLjc", 1698, true, "/downloads/tabernacle choir/2026-01-25 01⧸25⧸26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream)/01⧸25⧸26 | Moments that Matter #5028 Music & the Spoken Word | The Tabernacle Choir (#livestream) [opR_Tg1uLjc].mp4", false, 1, ~U[2026-01-25 17:03:45Z]] 11:07:59.476 [debug] QUERY OK source="sources" db=0.5ms 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] 11:07:59.478 [debug] QUERY OK source="media_items" db=1.8ms idle=7.3ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-18 17:04:25Z], 1] 11:07:59.480 [debug] QUERY OK source="media_items" db=1.5ms idle=8.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "01/18/26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir", "4cb4c119-d24b-4e10-9d8b-d512235f029e", "https://www.youtube.com/watch?v=mxh_kSXFWpg", "mxh_kSXFWpg", 1677, true, 7, "/downloads/tabernacle choir/2026-01-18 01⧸18⧸26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir/01⧸18⧸26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir [mxh_kSXFWpg].mp4", false, false, false, 1, [], 97, ~U[2026-01-18 17:04:25Z], ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "01/18/26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir", "https://www.youtube.com/watch?v=mxh_kSXFWpg", "mxh_kSXFWpg", 1677, true, "/downloads/tabernacle choir/2026-01-18 01⧸18⧸26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir/01⧸18⧸26 | My Brother's Keeper #5027 Music & the Spoken Word | The Tabernacle Choir [mxh_kSXFWpg].mp4", false, 1, ~U[2026-01-18 17:04:25Z]] 11:07:59.481 [debug] QUERY OK source="sources" db=0.5ms idle=8.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] 11:07:59.483 [debug] QUERY OK source="media_items" db=1.8ms queue=0.1ms idle=6.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-11 17:04:12Z], 1] 11:07:59.486 [debug] QUERY OK source="media_items" db=1.5ms idle=7.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "01/11/26 | True Wisdom #5026 Music & the Spoken Word | The Tabernacle Choir (#livestream)", "a1f6ac2d-d2f4-4488-9988-18cf1a307ccb", "https://www.youtube.com/watch?v=SSBMMeRs_b8", "SSBMMeRs_b8", 1681, true, 8, "/downloads/tabernacle choir/2026-01-11 01⧸11⧸26 | True Wisdom #5026 Music & the Spoken Word | The Tabernacle Choir (#livestream)/01⧸11⧸26 | True Wisdom #5026 Music & the Spoken Word | The Tabernacle Choir (#livestream) [SSBMMeRs_b8].mp4", false, false, false, 1, [], 96, ~U[2026-01-11 17:04:12Z], ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "01/11/26 | True Wisdom #5026 Music & the Spoken Word | The Tabernacle Choir (#livestream)", "https://www.youtube.com/watch?v=SSBMMeRs_b8", "SSBMMeRs_b8", 1681, true, "/downloads/tabernacle choir/2026-01-11 01⧸11⧸26 | True Wisdom #5026 Music & the Spoken Word | The Tabernacle Choir (#livestream)/01⧸11⧸26 | True Wisdom #5026 Music & the Spoken Word | The Tabernacle Choir (#livestream) [SSBMMeRs_b8].mp4", false, 1, ~U[2026-01-11 17:04:12Z]] 11:07:59.487 [debug] QUERY OK source="sources" db=0.4ms idle=8.1ms UPDATE "sources" SET "last_indexed_at" = ?, "updated_at" = ? WHERE "id" = ? [~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z], 1] 11:07:59.490 [debug] QUERY OK source="media_items" db=2.3ms queue=0.5ms idle=6.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 ((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] 11:07:59.493 [debug] QUERY OK source="tasks" db=0.3ms idle=7.3ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2974, 20219, ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z]] 11:07:59.497 [debug] QUERY OK source="tasks" db=0.3ms idle=4.1ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2975, 89337, ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z]] 11:07:59.501 [info] {"args":{"id":20219},"id":2974,"meta":{},"system_time":1769710079500884549,"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"]} 11:07:59.502 [debug] QUERY OK source="media_items" db=1.0ms 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 WHERE (m0."id" = ?) [20219] 11:07:59.502 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:07:59.503 [debug] QUERY OK source="sources" db=0.7ms 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] 11:07:59.504 [debug] QUERY OK source="media_profiles" db=0.6ms idle=3.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] 11:07:59.505 [debug] QUERY OK source="media_items" db=0.5ms queue=0.2ms idle=3.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 [20219] 11:07:59.507 [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" = ?) [20219] 11:07:59.508 [debug] QUERY OK source="media_profiles" db=0.4ms 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] 11:07:59.508 [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 [] 11:07:59.509 [debug] QUERY OK source="settings" db=0.4ms 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 [] 11:07:59.510 [debug] Running yt-dlp command for action: get_downloadable_status 11:07:59.512 [debug] QUERY OK source="media_items" db=1.9ms idle=2.6ms 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] 11:07:59.513 [debug] QUERY OK source="media_items" db=0.4ms idle=4.4ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 11:07:59.524 [debug] QUERY OK source="tasks" db=0.3ms idle=14.0ms INSERT INTO "tasks" ("job_id","source_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2976, 1, ~U[2026-01-29 18:07:59Z], ~U[2026-01-29 18:07:59Z]] 11:07:59.525 [info] {"args":{"id":1},"id":2968,"meta":{},"state":"success","max_attempts":20,"queue":"media_collection_indexing","worker":"Pinchflat.SlowIndexing.MediaCollectionIndexingWorker","source":"oban","duration":16336294,"event":"job:stop","queue_time":949466,"attempt":1,"tags":["media_source","media_collection_indexing","show_in_dashboard"]} 11:07:59.632 [debug] QUERY OK source="settings" db=0.2ms idle=108.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 [] 11:07:59.632 [debug] QUERY OK source="settings" db=0.3ms idle=108.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 [] 11:07:59.633 [debug] QUERY OK source="settings" db=0.1ms idle=108.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 [] 11:07:59.633 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=2obOY-T_uog --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/fc/3c/fc3ce390f2db14ca326fa35153610e687d351541920bd96e1bce9284c77926bf.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:08:00.239 [info] {"source":"oban","duration":290,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:08:02.028 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/24/99/2499819148cf18895a9082be8ec7698a58af5bda2a6e1aafddd1d1d1b8dc0910.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:08:02.029 [debug] Running yt-dlp command for action: download 11:08:02.029 [debug] QUERY OK source="settings" db=0.2ms idle=1790.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 [] 11:08:02.030 [debug] QUERY OK source="settings" db=0.2ms idle=916.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 [] 11:08:02.030 [debug] QUERY OK source="settings" db=0.2ms idle=917.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 [] 11:08:02.031 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/ea/45/ea4574a665994fd1c8b0ab7a7464fda6b59a22c98a6071112c08eef27b3da61c.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:08:02.602 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=2obOY-T_uog --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/fc/3c/fc3ce390f2db14ca326fa35153610e687d351541920bd96e1bce9284c77926bf.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] 2obOY-T_uog: Video unavailable 11:08:02.602 [error] yt-dlp download error for media item #20219: "ERROR: [youtube] 2obOY-T_uog: Video unavailable\n" 11:08:02.602 [error] yt-dlp download will not be retried: "ERROR: [youtube] 2obOY-T_uog: Video unavailable\n" 11:08:02.603 [info] {"args":{"id":20219},"id":2974,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":3101624,"event":"job:stop","queue_time":498964,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:08:02.610 [info] {"args":{"id":89337},"id":2975,"meta":{},"system_time":1769710082610187167,"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"]} 11:08:02.610 [debug] QUERY OK source="media_items" db=0.3ms idle=580.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" = ?) [89337] 11:08:02.611 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:08:02.611 [debug] QUERY OK source="sources" db=0.2ms idle=580.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] 11:08:02.612 [debug] QUERY OK source="media_profiles" db=0.2ms idle=490.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] 11:08:02.613 [debug] QUERY OK source="media_items" db=0.3ms idle=9.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 [89337] 11:08:02.629 [debug] QUERY OK source="media_metadata" db=0.1ms idle=19.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" = ?) [89337] 11:08:02.630 [debug] QUERY OK source="media_profiles" db=0.2ms idle=19.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] 11:08:02.631 [debug] QUERY OK source="settings" db=0.1ms idle=19.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 [] 11:08:02.631 [debug] QUERY OK source="settings" db=0.1ms idle=18.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 [] 11:08:02.632 [debug] Running yt-dlp command for action: get_downloadable_status 11:08:02.642 [debug] QUERY OK source="settings" db=0.2ms idle=29.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 [] 11:08:02.643 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:08:02.643 [debug] QUERY OK source="settings" db=0.2ms idle=13.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 [] 11:08:02.643 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=pzwYi9BjBNY --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/a2/9d/a29d5c3c7add945b3d1708cd3247bc47495499fae8cb11d975000c0a93e96fd2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:08:05.735 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=pzwYi9BjBNY --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/a2/9d/a29d5c3c7add945b3d1708cd3247bc47495499fae8cb11d975000c0a93e96fd2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] pzwYi9BjBNY: Video unavailable 11:08:05.736 [error] yt-dlp download error for media item #89337: "ERROR: [youtube] pzwYi9BjBNY: Video unavailable\n" 11:08:05.736 [error] yt-dlp download will not be retried: "ERROR: [youtube] pzwYi9BjBNY: Video unavailable\n" 11:08:05.736 [info] {"args":{"id":89337},"id":2975,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":3126070,"event":"job:stop","queue_time":3609039,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:08:07.049 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/ea/45/ea4574a665994fd1c8b0ab7a7464fda6b59a22c98a6071112c08eef27b3da61c.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:08:07.049 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:08:07.051 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8867996,"event":"job:exception","queue_time":174978,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:08:12.970 [info] {"source":"oban","duration":1582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:08:24.173 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769710104173551381,"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"]} 11:08:24.174 [debug] QUERY OK source="media_items" db=0.5ms idle=61.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" = ?) [102574] 11:08:24.175 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:08:24.176 [debug] QUERY OK source="sources" db=0.5ms idle=62.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] 11:08:24.176 [debug] QUERY OK source="media_profiles" db=0.4ms idle=63.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] 11:08:24.177 [debug] QUERY OK source="media_items" db=0.5ms idle=11.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 [102574] 11:08:24.178 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.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" = ?) [102574] 11:08:24.179 [debug] QUERY OK source="media_profiles" db=0.2ms 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] 11:08:24.180 [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 [] 11:08:24.180 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:08:24.181 [debug] Running yt-dlp command for action: get_downloadable_status 11:08:24.196 [debug] QUERY OK source="settings" db=0.2ms idle=18.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 [] 11:08:24.197 [debug] QUERY OK source="settings" db=0.2ms idle=18.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 [] 11:08:24.197 [debug] QUERY OK source="settings" db=0.2ms idle=18.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 [] 11:08:24.198 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/5c/a8/5ca8330b7c87531ad8f59e2d019d76beb695139a7f2bf3b0a9f67dcccc4d4a5e.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:08:27.851 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/5c/a8/5ca8330b7c87531ad8f59e2d019d76beb695139a7f2bf3b0a9f67dcccc4d4a5e.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:08:27.851 [debug] Running yt-dlp command for action: download 11:08:27.852 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1738.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 [] 11:08:27.852 [debug] QUERY OK source="settings" db=0.2ms idle=1682.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 [] 11:08:27.853 [debug] QUERY OK source="settings" db=0.2ms idle=1676.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 [] 11:08:27.853 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/0e/a8/0ea899b50fed87de8b3efbb55d36b771b671e3cb1c30483126e5d15f08490c97.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:08:32.816 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/0e/a8/0ea899b50fed87de8b3efbb55d36b771b671e3cb1c30483126e5d15f08490c97.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:08:32.817 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:08:32.818 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8643955,"event":"job:exception","queue_time":121767,"attempt":2,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:08:42.972 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:08:53.235 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769710133235451204,"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"]} 11:08:53.236 [debug] QUERY OK source="media_items" db=0.4ms idle=1122.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" = ?) [102574] 11:08:53.237 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:08:53.237 [debug] QUERY OK source="sources" db=0.3ms idle=1011.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] 11:08:53.238 [debug] QUERY OK source="media_profiles" db=0.3ms idle=1005.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] 11:08:53.239 [debug] QUERY OK source="media_items" db=0.6ms idle=10.4ms 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 [102574] 11:08:53.240 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.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" = ?) [102574] 11:08:53.241 [debug] QUERY OK source="media_profiles" db=0.2ms 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] 11:08:53.242 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:08:53.242 [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 [] 11:08:53.243 [debug] Running yt-dlp command for action: get_downloadable_status 11:08:53.244 [debug] QUERY OK source="settings" db=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 [] 11:08:53.244 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:08:53.245 [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 [] 11:08:53.245 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/c8/2b/c82b21c91008e2f3566714e45c7826673cddcbf73ab57dd8f3b2105258173ee5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:08:57.018 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/c8/2b/c82b21c91008e2f3566714e45c7826673cddcbf73ab57dd8f3b2105258173ee5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:08:57.018 [debug] Running yt-dlp command for action: download 11:08:57.019 [debug] QUERY OK source="settings" db=0.5ms idle=1905.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 [] 11:08:57.019 [debug] QUERY OK source="settings" db=0.2ms idle=1786.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 [] 11:08:57.020 [debug] QUERY OK source="settings" db=0.2ms idle=1780.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 [] 11:08:57.021 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/85/6f/856f6127995eb613c0c0fda784b62968550b16740b680e42c4059b6835ed6603.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:09:00.240 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:09:01.884 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/85/6f/856f6127995eb613c0c0fda784b62968550b16740b680e42c4059b6835ed6603.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:09:01.885 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:09:01.886 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8650116,"event":"job:exception","queue_time":416345,"attempt":3,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:09:12.974 [info] {"source":"oban","duration":1593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:09:26.307 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769710166307385323,"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"]} 11:09:26.308 [debug] QUERY OK source="media_items" db=0.6ms idle=1004.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" = ?) [102574] 11:09:26.309 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:09:26.310 [debug] QUERY OK source="sources" db=0.5ms idle=196.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] 11:09:26.310 [debug] QUERY OK source="media_profiles" db=0.3ms idle=197.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] 11:09:26.311 [debug] QUERY OK source="media_items" db=0.5ms 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 [102574] 11:09:26.359 [debug] QUERY OK source="media_metadata" db=0.2ms idle=51.4ms 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" = ?) [102574] 11:09:26.359 [debug] QUERY OK source="media_profiles" db=0.2ms idle=50.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] 11:09:26.360 [debug] QUERY OK source="settings" db=0.1ms idle=49.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 [] 11:09:26.360 [debug] QUERY OK source="settings" db=0.3ms 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 [] 11:09:26.361 [debug] Running yt-dlp command for action: get_downloadable_status 11:09:26.362 [debug] QUERY OK source="settings" db=0.1ms 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 [] 11:09:26.362 [debug] QUERY OK source="settings" db=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 [] 11:09:26.362 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:09:26.363 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/de/20/de20c77f27b71ffc3ef8a5901c4793e3af828803da7f3345a5e3827bbfebbfb2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:09:30.041 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/de/20/de20c77f27b71ffc3ef8a5901c4793e3af828803da7f3345a5e3827bbfebbfb2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:09:30.041 [debug] Running yt-dlp command for action: download 11:09:30.041 [debug] QUERY OK source="settings" db=0.3ms idle=1928.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 [] 11:09:30.042 [debug] QUERY OK source="settings" db=0.2ms idle=1737.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 [] 11:09:30.042 [debug] QUERY OK source="settings" db=0.2ms idle=1731.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 [] 11:09:30.043 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/a9/db/a9db62092843ecbb8fb6c5c0df98c40af69e616d6be47362950c8d717c3316f7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:09:34.955 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/a9/db/a9db62092843ecbb8fb6c5c0df98c40af69e616d6be47362950c8d717c3316f7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:09:34.955 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:09:34.957 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8649004,"event":"job:exception","queue_time":420218,"attempt":4,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:09:42.976 [info] {"source":"oban","duration":1356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:10:00.241 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:10:08.401 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769710208401651614,"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"]} 11:10:08.402 [debug] QUERY OK source="media_items" db=0.3ms idle=288.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" = ?) [102574] 11:10:08.402 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:10:08.403 [debug] QUERY OK source="sources" db=0.3ms idle=289.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] 11:10:08.404 [debug] QUERY OK source="media_profiles" db=0.4ms idle=290.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] 11:10:08.405 [debug] QUERY OK source="media_items" db=0.5ms idle=10.5ms 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 [102574] 11:10:08.407 [debug] QUERY OK source="media_metadata" db=0.2ms idle=5.3ms 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" = ?) [102574] 11:10:08.407 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 11:10:08.408 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 11:10:08.409 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:10:08.409 [debug] Running yt-dlp command for action: get_downloadable_status 11:10:08.492 [debug] QUERY OK source="settings" db=0.2ms idle=86.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 [] 11:10:08.493 [debug] QUERY OK source="settings" db=0.2ms idle=85.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 [] 11:10:08.493 [debug] QUERY OK source="settings" db=0.2ms idle=85.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 [] 11:10:08.494 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f6/7c/f67c4bcfc0484818ab89755cfc81505e65e29b418937bfc8cfd772bde2e55bc8.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:10:12.247 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f6/7c/f67c4bcfc0484818ab89755cfc81505e65e29b418937bfc8cfd772bde2e55bc8.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:10:12.248 [debug] Running yt-dlp command for action: download 11:10:12.249 [debug] QUERY OK source="settings" db=0.4ms idle=847.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 [] 11:10:12.249 [debug] QUERY OK source="settings" db=0.2ms idle=841.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 [] 11:10:12.250 [debug] QUERY OK source="settings" db=0.2ms idle=136.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 [] 11:10:12.250 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/7f/44/7f444f7c70a43050d106f9560441d4fa4bf1aa6d05ddd0e18ce4dab702c4edb5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:10:12.978 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:10:17.355 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/7f/44/7f444f7c70a43050d106f9560441d4fa4bf1aa6d05ddd0e18ce4dab702c4edb5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:10:17.355 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:10:17.357 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8954537,"event":"job:exception","queue_time":443447,"attempt":5,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:10:42.980 [info] {"source":"oban","duration":1579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:00.242 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:11:06.529 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769710266529560091,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":6,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:11:06.530 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=416.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" = ?) [102574] 11:11:06.531 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:11:06.531 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=417.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] 11:11:06.532 [debug] QUERY OK source="media_profiles" db=0.4ms idle=418.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] 11:11:06.533 [debug] QUERY OK source="media_items" db=0.6ms 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 [102574] 11:11:06.535 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.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" = ?) [102574] 11:11:06.535 [debug] QUERY OK source="media_profiles" db=0.4ms idle=4.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] 11:11:06.536 [debug] QUERY OK source="settings" db=0.3ms idle=4.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 [] 11:11:06.537 [debug] QUERY OK source="settings" db=0.3ms 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 [] 11:11:06.538 [debug] Running yt-dlp command for action: get_downloadable_status 11:11:06.539 [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 [] 11:11:06.539 [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 [] 11:11:06.540 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:11:06.540 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/e5/d8/e5d89ca2fb05d8e251c32eb993abdefc75ec35b7d060e36ea720a773d41496bd.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:11:10.164 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/e5/d8/e5d89ca2fb05d8e251c32eb993abdefc75ec35b7d060e36ea720a773d41496bd.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:11:10.164 [debug] Running yt-dlp command for action: download 11:11:10.165 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=635.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 [] 11:11:10.166 [debug] QUERY OK source="settings" db=0.2ms idle=629.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 [] 11:11:10.166 [debug] QUERY OK source="settings" db=0.2ms idle=53.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 [] 11:11:10.166 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/fb/ff/fbff2089bfe15af8d11f147a3766f4766013143d6c91602d08738021bf1d1d85.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:11:12.982 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:15.180 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/fb/ff/fbff2089bfe15af8d11f147a3766f4766013143d6c91602d08738021bf1d1d85.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:11:15.180 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:11:15.181 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8651231,"event":"job:exception","queue_time":171630,"attempt":6,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:11:42.984 [info] {"source":"oban","duration":1663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:12:00.243 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:12:12.987 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:12:35.720 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769710355720526997,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":7,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:12:35.721 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=1607.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" = ?) [102574] 11:12:35.722 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:12:35.722 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1011.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] 11:12:35.723 [debug] QUERY OK source="media_profiles" db=0.4ms idle=1005.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] 11:12:35.725 [debug] QUERY OK source="media_items" db=0.6ms idle=11.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 [102574] 11:12:35.738 [debug] QUERY OK source="media_metadata" db=0.1ms idle=18.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" = ?) [102574] 11:12:35.739 [debug] QUERY OK source="media_profiles" db=0.3ms idle=17.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] 11:12:35.740 [debug] QUERY OK source="settings" db=0.2ms idle=17.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 [] 11:12:35.740 [debug] QUERY OK source="settings" db=0.2ms idle=16.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 [] 11:12:35.741 [debug] Running yt-dlp command for action: get_downloadable_status 11:12:35.742 [debug] QUERY OK source="settings" db=0.1ms idle=17.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 [] 11:12:35.742 [debug] QUERY OK source="settings" db=0.3ms 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 [] 11:12:35.743 [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 [] 11:12:35.743 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/39/b6/39b65ee2758db9aba986b743fd307f4ea5971e5893e73e70a18d4ba15fa81728.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:12:39.318 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/39/b6/39b65ee2758db9aba986b743fd307f4ea5971e5893e73e70a18d4ba15fa81728.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:12:39.318 [debug] Running yt-dlp command for action: download 11:12:39.319 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=599.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 [] 11:12:39.320 [debug] QUERY OK source="settings" db=0.3ms idle=593.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 [] 11:12:39.320 [debug] QUERY OK source="settings" db=0.3ms idle=207.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 [] 11:12:39.321 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/ce/33/ce3391937336671b5f666d941871fca621282ced64a5606c7dc68b23adba2e45.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:12:42.989 [info] {"source":"oban","duration":1266,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:12:44.354 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/ce/33/ce3391937336671b5f666d941871fca621282ced64a5606c7dc68b23adba2e45.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:12:44.354 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:12:44.355 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8634261,"event":"job:exception","queue_time":538066,"attempt":7,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:13:00.244 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:13:12.991 [info] {"source":"oban","duration":1093,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:13:42.993 [info] {"source":"oban","duration":1074,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:14:00.245 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:14:12.995 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:14:42.996 [info] {"source":"oban","duration":930,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:15:00.246 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:15:12.999 [info] {"source":"oban","duration":1630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:15:19.081 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769710519081677519,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":8,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:15:19.082 [debug] QUERY OK source="media_items" db=0.3ms idle=969.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" = ?) [102574] 11:15:19.083 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:15:19.083 [debug] QUERY OK source="sources" db=0.3ms idle=970.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] 11:15:19.084 [debug] QUERY OK source="media_profiles" db=0.3ms idle=971.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] 11:15:19.085 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=10.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 [102574] 11:15:19.100 [debug] QUERY OK source="media_metadata" db=0.1ms idle=18.3ms 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" = ?) [102574] 11:15:19.100 [debug] QUERY OK source="media_profiles" db=0.2ms idle=17.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] 11:15:19.101 [debug] QUERY OK source="settings" db=0.2ms idle=17.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 [] 11:15:19.102 [debug] QUERY OK source="settings" db=0.2ms idle=17.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 [] 11:15:19.102 [debug] Running yt-dlp command for action: get_downloadable_status 11:15:19.114 [debug] QUERY OK source="settings" db=0.2ms idle=28.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 [] 11:15:19.115 [debug] QUERY OK source="settings" db=0.2ms idle=14.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 [] 11:15:19.115 [debug] QUERY OK source="settings" db=0.2ms idle=14.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 [] 11:15:19.115 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/b9/5d/b95d3f93620490a08e984fe3a6bdc9943313fd2df258fec53769ffc7225ab297.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:15:22.860 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/b9/5d/b95d3f93620490a08e984fe3a6bdc9943313fd2df258fec53769ffc7225ab297.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:15:22.861 [debug] Running yt-dlp command for action: download 11:15:22.861 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1748.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 [] 11:15:22.862 [debug] QUERY OK source="settings" db=0.2ms idle=1748.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 [] 11:15:22.862 [debug] QUERY OK source="settings" db=0.1ms idle=1749.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 [] 11:15:22.863 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/b5/9f/b59f8440147120fbacde4192c595c5fbb10d22ea0166473c51e45d6b2a465ebe.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:15:27.766 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/b5/9f/b59f8440147120fbacde4192c595c5fbb10d22ea0166473c51e45d6b2a465ebe.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:15:27.766 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:15:27.767 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8685140,"event":"job:exception","queue_time":725086,"attempt":8,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:15:43.001 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:16:00.247 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:16:13.003 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:16:43.005 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:17:00.248 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:17:13.007 [info] {"source":"oban","duration":1667,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:17:43.010 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:18:00.249 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:18:13.012 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:18:43.014 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:19:00.250 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:19:13.016 [info] {"source":"oban","duration":1143,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:19:43.018 [info] {"source":"oban","duration":1667,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:20:00.251 [info] {"source":"oban","duration":287,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:20:13.020 [info] {"source":"oban","duration":1175,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:20:23.747 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769710823747577145,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":9,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:20:23.748 [debug] QUERY OK source="media_items" db=0.4ms idle=1634.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" = ?) [102574] 11:20:23.748 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:20:23.749 [debug] QUERY OK source="sources" db=0.4ms idle=1012.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] 11:20:23.750 [debug] QUERY OK source="media_profiles" db=0.3ms idle=1005.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] 11:20:23.751 [debug] QUERY OK source="media_items" db=0.6ms 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 [102574] 11:20:23.753 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.4ms 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" = ?) [102574] 11:20:23.753 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 11:20:23.754 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:20:23.754 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 11:20:23.755 [debug] Running yt-dlp command for action: get_downloadable_status 11:20:23.756 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:20:23.757 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:20:23.757 [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 [] 11:20:23.757 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/42/6a/426a3e0be62f0f7599ff2d74252894f98202e51b98b2abcd612c46c3d26eb053.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:20:27.524 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/42/6a/426a3e0be62f0f7599ff2d74252894f98202e51b98b2abcd612c46c3d26eb053.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:20:27.524 [debug] Running yt-dlp command for action: download 11:20:27.525 [debug] QUERY OK source="settings" db=0.2ms idle=776.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 [] 11:20:27.525 [debug] QUERY OK source="settings" db=0.4ms idle=769.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 [] 11:20:27.526 [debug] QUERY OK source="settings" db=0.3ms idle=412.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 [] 11:20:27.527 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/6c/32/6c32cb2da69f8c52f79c721ef8f76fcc2be6cc249f36f46312252d4ec9442283.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:20:32.568 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/6c/32/6c32cb2da69f8c52f79c721ef8f76fcc2be6cc249f36f46312252d4ec9442283.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:20:32.568 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:20:32.569 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8821310,"event":"job:exception","queue_time":979021,"attempt":9,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:20:43.022 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:21:00.252 [info] {"source":"oban","duration":284,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:21:13.024 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:21:43.026 [info] {"source":"oban","duration":1183,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:22:00.253 [info] {"source":"oban","duration":381,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:22:13.028 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:22:43.030 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:23:00.254 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:23:13.032 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:23:43.034 [info] {"source":"oban","duration":1326,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:24:00.255 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:24:13.036 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:24:43.038 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:25:00.256 [info] {"source":"oban","duration":425,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:25:13.040 [info] {"source":"oban","duration":1698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:25:43.042 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:26:00.257 [info] {"source":"oban","duration":390,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:26:13.044 [info] {"source":"oban","duration":1568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:26:43.047 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:27:00.258 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:27:13.049 [info] {"source":"oban","duration":1303,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:27:43.051 [info] {"source":"oban","duration":989,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:28:00.259 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:28:13.053 [info] {"source":"oban","duration":1169,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:28:43.055 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:00.260 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:29:13.057 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:33.969 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769711373968802207,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":10,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:29:33.969 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=1856.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" = ?) [102574] 11:29:33.970 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:29:33.971 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1012.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] 11:29:33.971 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=1007.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] 11:29:33.973 [debug] QUERY OK source="media_items" db=0.5ms idle=11.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 [102574] 11:29:34.064 [debug] QUERY OK source="media_metadata" db=0.2ms idle=96.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" = ?) [102574] 11:29:34.065 [debug] QUERY OK source="media_profiles" db=0.2ms idle=95.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] 11:29:34.066 [debug] QUERY OK source="settings" db=0.2ms idle=94.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 [] 11:29:34.066 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:29:34.067 [debug] Running yt-dlp command for action: get_downloadable_status 11:29:34.146 [debug] QUERY OK source="settings" db=0.3ms idle=173.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 [] 11:29:34.147 [debug] QUERY OK source="settings" db=0.2ms idle=82.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 [] 11:29:34.147 [debug] QUERY OK source="settings" db=0.3ms idle=82.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 [] 11:29:34.148 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/73/71/73715cf588e044c78e69150c11afee5da52dc160aef0c07ac25e5515822aa161.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:29:38.753 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/73/71/73715cf588e044c78e69150c11afee5da52dc160aef0c07ac25e5515822aa161.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:29:38.753 [debug] Running yt-dlp command for action: download 11:29:38.754 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=783.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 [] 11:29:38.755 [debug] QUERY OK source="settings" db=0.2ms idle=777.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 [] 11:29:38.755 [debug] QUERY OK source="settings" db=0.3ms idle=642.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 [] 11:29:38.756 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/a5/e6/a5e6da266110e9f2f7451acc7cc109ce6dc3709474455b06de97c796ab514378.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:29:43.059 [info] {"source":"oban","duration":1113,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:44.326 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/a5/e6/a5e6da266110e9f2f7451acc7cc109ce6dc3709474455b06de97c796ab514378.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:29:44.326 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:29:44.327 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":10357724,"event":"job:exception","queue_time":397968,"attempt":10,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:30:00.261 [info] {"source":"oban","duration":296,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:30:13.061 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:30:43.063 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:31:00.262 [info] {"source":"oban","duration":449,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:31:13.065 [info] {"source":"oban","duration":1583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:31:43.067 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:32:00.263 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:32:13.069 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:32:43.071 [info] {"source":"oban","duration":1609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:33:00.264 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:33:13.073 [info] {"source":"oban","duration":1605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:33:43.075 [info] {"source":"oban","duration":1601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:34:00.265 [info] {"source":"oban","duration":390,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:34:13.077 [info] {"source":"oban","duration":1341,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:34:43.079 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:35:00.266 [info] {"source":"oban","duration":401,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:35:13.081 [info] {"source":"oban","duration":1081,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:35:43.083 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:36:00.267 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:36:13.085 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:36:43.087 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:37:00.268 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:37:13.089 [info] {"source":"oban","duration":1247,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:37:43.091 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:38:00.269 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:38:13.093 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:38:43.095 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:39:00.270 [info] {"source":"oban","duration":277,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:39:13.097 [info] {"source":"oban","duration":1500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:39:43.099 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:40:00.271 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:40:13.101 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:40:43.103 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:41:00.272 [info] {"source":"oban","duration":401,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:41:13.105 [info] {"source":"oban","duration":1341,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:41:43.107 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:42:00.273 [info] {"source":"oban","duration":377,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:42:13.109 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:42:43.111 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:43:00.274 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:43:13.113 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:43:43.115 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:44:00.275 [info] {"source":"oban","duration":368,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:44:13.117 [info] {"source":"oban","duration":1411,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:44:43.119 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:45:00.276 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:45:13.121 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:45:43.123 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:46:00.277 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:46:13.125 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:46:43.127 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:47:00.278 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:47:13.129 [info] {"source":"oban","duration":1195,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:47:43.131 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:48:00.279 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:48:05.447 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769712485447392283,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":11,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:48:05.448 [debug] QUERY OK source="media_items" db=0.2ms idle=1002.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" = ?) [102574] 11:48:05.448 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:48:05.448 [debug] QUERY OK source="sources" db=0.2ms idle=335.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] 11:48:05.449 [debug] QUERY OK source="media_profiles" db=0.3ms idle=335.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] 11:48:05.450 [debug] QUERY OK source="media_items" db=0.5ms idle=9.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 [102574] 11:48:05.451 [debug] QUERY OK source="media_metadata" db=0.1ms idle=4.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" = ?) [102574] 11:48:05.452 [debug] QUERY OK source="media_profiles" db=0.2ms idle=3.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] 11:48:05.452 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:48:05.453 [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 [] 11:48:05.453 [debug] Running yt-dlp command for action: get_downloadable_status 11:48:05.454 [debug] QUERY OK source="settings" db=0.1ms 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 [] 11:48:05.454 [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 [] 11:48:05.455 [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 [] 11:48:05.455 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/55/f4/55f41c88f0b38176acd11efdb03ac3b5fa61e270d148a2e8d2aa360d6962fb74.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:48:09.206 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/55/f4/55f41c88f0b38176acd11efdb03ac3b5fa61e270d148a2e8d2aa360d6962fb74.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 11:48:09.206 [debug] Running yt-dlp command for action: download 11:48:09.207 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=759.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 [] 11:48:09.207 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:48:09.208 [debug] QUERY OK source="settings" db=0.2ms 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 [] 11:48:09.208 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/f2/87/f2872a1a2fbeaa427e0ca3f54e288a25e4a5c8c7b63588e8a71266e726364d62.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:48:13.133 [info] {"source":"oban","duration":1136,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:48:14.336 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/f2/87/f2872a1a2fbeaa427e0ca3f54e288a25e4a5c8c7b63588e8a71266e726364d62.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 11:48:14.336 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 11:48:14.337 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8889363,"event":"job:exception","queue_time":119332,"attempt":11,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:48:43.135 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:49:00.280 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:49:13.137 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:49:43.139 [info] {"source":"oban","duration":1146,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:50:00.281 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:50:13.140 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:50:43.143 [info] {"source":"oban","duration":1094,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:51:00.282 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:51:13.147 [info] {"source":"oban","duration":2982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:51:43.149 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:52:00.283 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:52:13.151 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:52:43.153 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:53:00.284 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:53:13.155 [info] {"source":"oban","duration":1029,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:53:43.157 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:54:00.285 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:54:13.159 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:54:43.161 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:55:00.286 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:55:13.163 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:55:43.165 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:56:00.287 [info] {"source":"oban","duration":381,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:56:13.167 [info] {"source":"oban","duration":1325,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:56:43.169 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:57:00.288 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:57:13.171 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:57:43.173 [info] {"source":"oban","duration":1306,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:58:00.289 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:58:13.175 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:58:43.177 [info] {"source":"oban","duration":1266,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:59:00.290 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 11:59:13.179 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:59:43.181 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:00:00.291 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:00:13.183 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:00:43.185 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:01:00.292 [info] {"source":"oban","duration":266,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:01:13.186 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:01:43.189 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:02:00.293 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:02:13.191 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:02:43.193 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:03:00.294 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:03:13.195 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:03:43.197 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:04:00.295 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:04:13.199 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:04:43.201 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:05:00.296 [info] {"source":"oban","duration":256,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:05:13.203 [info] {"source":"oban","duration":1337,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:05:43.205 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:06:00.297 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:06:13.207 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:06:43.209 [info] {"source":"oban","duration":1127,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:07:00.298 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:07:13.211 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:07:43.213 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:08:00.299 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:08:13.215 [info] {"source":"oban","duration":1064,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:08:43.216 [info] {"source":"oban","duration":849,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:09:00.300 [info] {"source":"oban","duration":415,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:09:13.219 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:09:43.221 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:10:00.301 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:10:13.223 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:10:43.225 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:11:00.302 [info] {"source":"oban","duration":418,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:11:13.227 [info] {"source":"oban","duration":1539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:11:43.229 [info] {"source":"oban","duration":1730,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:12:00.303 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:12:13.232 [info] {"source":"oban","duration":1559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:12:43.234 [info] {"source":"oban","duration":1411,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:13:00.304 [info] {"source":"oban","duration":381,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:13:13.236 [info] {"source":"oban","duration":1250,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:13:43.238 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:14:00.305 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:14:13.240 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:14:43.242 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:15:00.306 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:15:13.244 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:15:43.246 [info] {"source":"oban","duration":1163,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:16:00.307 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:16:13.247 [info] {"source":"oban","duration":859,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:16:43.250 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:17:00.308 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:17:13.252 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:17:43.254 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:18:00.309 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:18:13.256 [info] {"source":"oban","duration":1560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:18:43.258 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:19:00.310 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:19:13.260 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:19:43.262 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:20:00.311 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:20:13.264 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:20:43.266 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:21:00.312 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:21:13.268 [info] {"source":"oban","duration":1520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:21:43.270 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:22:00.313 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:22:13.272 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:22:43.274 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:23:00.314 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:23:13.276 [info] {"source":"oban","duration":1119,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:23:43.278 [info] {"source":"oban","duration":1245,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:24:00.315 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:24:13.280 [info] {"source":"oban","duration":1122,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:24:43.282 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:00.316 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:25:13.284 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:43.286 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:43.461 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769714743461645481,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":12,"tags":["media_item","media_fetching","show_in_dashboard"]} 12:25:43.462 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=349.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" = ?) [102574] 12:25:43.463 [info] User scripts lifecyle file either not present or is empty. Skipping. 12:25:43.464 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=350.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] 12:25:43.464 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=177.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] 12:25:43.466 [debug] QUERY OK source="media_items" db=0.5ms idle=10.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 [102574] 12:25:43.467 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.8ms 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" = ?) [102574] 12:25:43.467 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 12:25:43.468 [debug] QUERY OK source="settings" db=0.2ms 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 [] 12:25:43.469 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 12:25:43.470 [debug] Running yt-dlp command for action: get_downloadable_status 12:25:43.478 [debug] QUERY OK source="settings" db=0.4ms idle=11.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 [] 12:25:43.478 [debug] QUERY OK source="settings" db=0.3ms idle=11.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 [] 12:25:43.479 [debug] QUERY OK source="settings" db=0.3ms idle=11.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 [] 12:25:43.480 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/45/ab/45abd845e67ccb6b6d80811e5e91f879a4a740830c5d1bd5d9ef59aa188ecf57.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 12:25:47.284 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/45/ab/45abd845e67ccb6b6d80811e5e91f879a4a740830c5d1bd5d9ef59aa188ecf57.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 12:25:47.284 [debug] Running yt-dlp command for action: download 12:25:47.285 [debug] QUERY OK source="settings" db=0.2ms idle=822.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 [] 12:25:47.285 [debug] QUERY OK source="settings" db=0.1ms idle=816.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 [] 12:25:47.286 [debug] QUERY OK source="settings" db=0.1ms idle=172.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 [] 12:25:47.286 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/f6/7c/f67ce77b0d72c16e39fb24c51547418f7edde0868f40e4d2126d781d55ece3b3.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 12:25:52.162 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/f6/7c/f67ce77b0d72c16e39fb24c51547418f7edde0868f40e4d2126d781d55ece3b3.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 12:25:52.162 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 12:25:52.164 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8701331,"event":"job:exception","queue_time":123114,"attempt":12,"tags":["media_item","media_fetching","show_in_dashboard"]} 12:26:00.317 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:26:13.288 [info] {"source":"oban","duration":1644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:26:43.291 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:27:00.318 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:27:13.293 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:27:43.295 [info] {"source":"oban","duration":1559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:28:00.319 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:28:13.297 [info] {"source":"oban","duration":1712,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:28:43.300 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:29:00.320 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:29:13.302 [info] {"source":"oban","duration":1632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:29:43.305 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:30:00.321 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:30:13.307 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:30:43.309 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:31:00.322 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:31:13.311 [info] {"source":"oban","duration":1036,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:31:43.313 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:32:00.323 [info] {"source":"oban","duration":415,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:32:13.315 [info] {"source":"oban","duration":1595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:32:43.318 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:33:00.324 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:33:13.320 [info] {"source":"oban","duration":1643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:33:43.323 [info] {"source":"oban","duration":1589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:34:00.325 [info] {"source":"oban","duration":398,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:34:13.325 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:34:43.327 [info] {"source":"oban","duration":1520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:35:00.326 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:35:13.329 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:35:43.331 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:36:00.327 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:36:13.333 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:36:43.335 [info] {"source":"oban","duration":1367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:37:00.328 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:37:13.337 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:37:43.339 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:38:00.329 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:38:13.341 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:38:43.343 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:39:00.330 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:39:13.345 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:39:43.347 [info] {"source":"oban","duration":1558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:40:00.331 [info] {"source":"oban","duration":423,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:40:13.349 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:40:43.351 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:41:00.332 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:41:13.353 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:41:43.355 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:42:00.333 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:42:13.357 [info] {"source":"oban","duration":1195,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:42:43.359 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:43:00.334 [info] {"source":"oban","duration":380,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:43:13.361 [info] {"source":"oban","duration":1609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:43:43.363 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:44:00.335 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:44:13.365 [info] {"source":"oban","duration":1204,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:44:43.367 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:45:00.336 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:45:13.369 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:45:43.371 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:46:00.337 [info] {"source":"oban","duration":244,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:46:13.372 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:46:43.375 [info] {"source":"oban","duration":1755,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:47:00.338 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:47:13.378 [info] {"source":"oban","duration":1121,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:47:43.380 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:48:00.339 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:48:13.382 [info] {"source":"oban","duration":1717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:48:43.384 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:49:00.340 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:49:13.386 [info] {"source":"oban","duration":1316,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:49:43.388 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:50:00.341 [info] {"source":"oban","duration":269,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:50:13.390 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:50:43.392 [info] {"source":"oban","duration":1505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:51:00.342 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:51:13.394 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:51:43.396 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:52:00.343 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:52:13.398 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:52:43.400 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:53:00.344 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:53:13.402 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:53:43.404 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:54:00.345 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:54:13.405 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:54:43.408 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:55:00.346 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:55:13.410 [info] {"source":"oban","duration":1586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:55:43.412 [info] {"source":"oban","duration":1076,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:56:00.347 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:56:13.414 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:56:43.416 [info] {"source":"oban","duration":1549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:57:00.348 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:57:13.418 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:57:43.420 [info] {"source":"oban","duration":1534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:58:00.349 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:58:13.422 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:58:43.424 [info] {"source":"oban","duration":1264,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:59:00.350 [info] {"source":"oban","duration":261,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 12:59:13.426 [info] {"source":"oban","duration":1251,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:59:43.428 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:00:00.351 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:00:13.430 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:00:43.432 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:01:00.352 [info] {"source":"oban","duration":208,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:01:13.434 [info] {"source":"oban","duration":1074,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:01:43.436 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:02:00.353 [info] {"source":"oban","duration":417,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:02:13.438 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:02:43.440 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:03:00.354 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:03:13.442 [info] {"source":"oban","duration":1390,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:03:43.444 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:04:00.355 [info] {"source":"oban","duration":407,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:04:13.446 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:04:43.448 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:05:00.356 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:05:13.450 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:05:43.452 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:06:00.357 [info] {"source":"oban","duration":382,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:06:13.454 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:06:43.456 [info] {"source":"oban","duration":1323,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:07:00.358 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:07:13.458 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:07:43.460 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:08:00.359 [info] {"source":"oban","duration":305,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:08:13.462 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:08:43.464 [info] {"source":"oban","duration":1025,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:09:00.360 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:09:13.466 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:09:43.468 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:10:00.361 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:10:13.470 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:10:43.472 [info] {"source":"oban","duration":1654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:11:00.362 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:11:13.475 [info] {"source":"oban","duration":1345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:11:43.477 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:12:00.363 [info] {"source":"oban","duration":440,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:12:13.479 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:12:43.481 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:13:00.364 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:13:13.483 [info] {"source":"oban","duration":1110,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:13:43.485 [info] {"source":"oban","duration":1626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:14:00.365 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:14:13.487 [info] {"source":"oban","duration":1505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:14:43.489 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:15:00.366 [info] {"source":"oban","duration":300,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:15:13.491 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:15:43.493 [info] {"source":"oban","duration":1209,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:16:00.367 [info] {"source":"oban","duration":373,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:16:13.495 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:16:43.497 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:17:00.368 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:17:13.499 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:17:43.501 [info] {"source":"oban","duration":1693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:18:00.369 [info] {"source":"oban","duration":279,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:18:13.504 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:18:43.506 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:19:00.370 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:19:13.508 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:19:43.511 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:20:00.371 [info] {"source":"oban","duration":390,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:20:13.513 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:20:43.515 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:21:00.372 [info] {"source":"oban","duration":452,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:21:13.517 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:21:43.519 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:22:00.374 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:22:13.521 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:22:43.523 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:23:00.375 [info] {"source":"oban","duration":202,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:23:13.525 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:23:43.527 [info] {"source":"oban","duration":1331,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:24:00.376 [info] {"source":"oban","duration":377,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:24:13.529 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:24:43.531 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:25:00.377 [info] {"source":"oban","duration":492,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:25:13.533 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:25:43.535 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:26:00.378 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:26:13.537 [info] {"source":"oban","duration":1328,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:26:43.539 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:27:00.379 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:27:13.541 [info] {"source":"oban","duration":1562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:27:43.543 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:28:00.380 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:28:13.545 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:28:43.547 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:29:00.381 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:29:13.549 [info] {"source":"oban","duration":1744,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:29:43.552 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:30:00.382 [info] {"source":"oban","duration":308,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:30:13.554 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:30:43.556 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:31:00.383 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:31:13.558 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:31:43.560 [info] {"source":"oban","duration":989,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:32:00.384 [info] {"source":"oban","duration":277,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:32:13.562 [info] {"source":"oban","duration":1585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:32:43.564 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:33:00.385 [info] {"source":"oban","duration":389,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:33:13.566 [info] {"source":"oban","duration":1727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:33:43.569 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:34:00.386 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:34:13.571 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:34:43.573 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:35:00.387 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:35:13.575 [info] {"source":"oban","duration":1554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:35:43.577 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:36:00.388 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:36:13.579 [info] {"source":"oban","duration":1136,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:36:43.581 [info] {"source":"oban","duration":1505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:37:00.389 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:37:13.583 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:37:43.585 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:38:00.390 [info] {"source":"oban","duration":421,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:38:13.587 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:38:31.499 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769719111499744658,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":13,"tags":["media_item","media_fetching","show_in_dashboard"]} 13:38:31.500 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=387.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" = ?) [102574] 13:38:31.501 [info] User scripts lifecyle file either not present or is empty. Skipping. 13:38:31.501 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=388.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] 13:38:31.502 [debug] QUERY OK source="media_profiles" db=0.3ms idle=388.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] 13:38:31.503 [debug] QUERY OK source="media_items" db=0.6ms idle=10.4ms 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 [102574] 13:38:31.510 [debug] QUERY OK source="media_metadata" db=0.1ms idle=10.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" = ?) [102574] 13:38:31.511 [debug] QUERY OK source="media_profiles" db=0.2ms idle=9.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] 13:38:31.511 [debug] QUERY OK source="settings" db=0.1ms 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 [] 13:38:31.512 [debug] QUERY OK source="settings" db=0.2ms idle=9.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 [] 13:38:31.513 [debug] Running yt-dlp command for action: get_downloadable_status 13:38:31.513 [debug] QUERY OK source="settings" db=0.1ms idle=10.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 [] 13:38:31.514 [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 [] 13:38:31.515 [debug] QUERY OK source="settings" db=0.5ms 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 [] 13:38:31.515 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/bc/77/bc7785b2b2f2f16666e789a92fd07e3a54d9f10e25a1357735465b449f52d98f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 13:38:35.261 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/bc/77/bc7785b2b2f2f16666e789a92fd07e3a54d9f10e25a1357735465b449f52d98f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 13:38:35.262 [debug] Running yt-dlp command for action: download 13:38:35.262 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=762.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 [] 13:38:35.263 [debug] QUERY OK source="settings" db=0.1ms idle=755.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 [] 13:38:35.263 [debug] QUERY OK source="settings" db=0.2ms idle=150.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 [] 13:38:35.264 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/17/4b/174ba97b84c2e10ab4366177654b99b9136ae6765eea8126c084f0f8186dab4b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 13:38:40.319 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/17/4b/174ba97b84c2e10ab4366177654b99b9136ae6765eea8126c084f0f8186dab4b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 13:38:40.319 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 13:38:40.320 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8820084,"event":"job:exception","queue_time":334873,"attempt":13,"tags":["media_item","media_fetching","show_in_dashboard"]} 13:38:43.589 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:39:00.391 [info] {"source":"oban","duration":473,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:39:13.591 [info] {"source":"oban","duration":1598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:39:43.593 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:40:00.392 [info] {"source":"oban","duration":374,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:40:13.595 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:40:43.597 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:41:00.393 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:41:13.599 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:41:43.601 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:42:00.394 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:42:13.603 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:42:43.605 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:43:00.395 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:43:13.607 [info] {"source":"oban","duration":1580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:43:43.610 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:44:00.396 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:44:13.612 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:44:43.614 [info] {"source":"oban","duration":1109,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:45:00.397 [info] {"source":"oban","duration":285,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:45:13.616 [info] {"source":"oban","duration":1264,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:45:43.618 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:46:00.398 [info] {"source":"oban","duration":373,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:46:13.620 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:46:43.622 [info] {"source":"oban","duration":1106,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:47:00.399 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:47:13.624 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:47:43.627 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:48:00.400 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:48:13.629 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:48:43.632 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:49:00.402 [info] {"source":"oban","duration":412,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:49:13.634 [info] {"source":"oban","duration":1554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:49:43.636 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:50:00.403 [info] {"source":"oban","duration":290,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:50:13.638 [info] {"source":"oban","duration":1509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:50:43.640 [info] {"source":"oban","duration":1500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:51:00.404 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:51:13.642 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:51:43.644 [info] {"source":"oban","duration":1230,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:52:00.405 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:52:13.646 [info] {"source":"oban","duration":1266,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:52:43.648 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:53:00.406 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:53:13.650 [info] {"source":"oban","duration":1045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:53:43.652 [info] {"source":"oban","duration":1042,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:54:00.407 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:54:13.654 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:54:43.656 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:55:00.408 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:55:13.658 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:55:43.660 [info] {"source":"oban","duration":1544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:56:00.409 [info] {"source":"oban","duration":362,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:56:13.662 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:56:43.664 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:57:00.410 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:57:13.666 [info] {"source":"oban","duration":1709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:57:43.669 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:58:00.411 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:58:13.671 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:58:43.673 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:59:00.412 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 13:59:13.675 [info] {"source":"oban","duration":1578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:59:43.678 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:00:00.413 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:00:13.680 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:00:43.682 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:01:00.414 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:01:13.684 [info] {"source":"oban","duration":1338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:01:43.686 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:02:00.415 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:02:13.687 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:02:43.690 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:03:00.416 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:03:13.692 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:03:43.694 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:04:00.417 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:04:13.696 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:04:43.698 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:05:00.418 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:05:13.700 [info] {"source":"oban","duration":1573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:05:43.702 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:06:00.419 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:06:13.704 [info] {"source":"oban","duration":1736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:06:43.707 [info] {"source":"oban","duration":1221,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:07:00.420 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:07:13.709 [info] {"source":"oban","duration":1251,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:07:43.711 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:08:00.421 [info] {"source":"oban","duration":244,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:08:13.713 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:08:43.715 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:09:00.422 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:09:13.717 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:09:43.719 [info] {"source":"oban","duration":1251,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:10:00.423 [info] {"source":"oban","duration":409,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:10:13.721 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:10:43.723 [info] {"source":"oban","duration":1110,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:11:00.424 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:11:13.725 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:11:43.727 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:12:00.425 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:12:13.729 [info] {"source":"oban","duration":1651,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:12:43.732 [info] {"source":"oban","duration":1620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:13:00.426 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:13:13.734 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:13:43.736 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:14:00.427 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:14:13.738 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:14:43.740 [info] {"source":"oban","duration":1658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:15:00.428 [info] {"source":"oban","duration":215,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:15:13.742 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:15:43.744 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:16:00.429 [info] {"source":"oban","duration":473,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:16:13.746 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:16:43.748 [info] {"source":"oban","duration":1341,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:17:00.430 [info] {"source":"oban","duration":391,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:17:13.750 [info] {"source":"oban","duration":1607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:17:43.752 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:18:00.431 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:18:13.754 [info] {"source":"oban","duration":944,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:18:43.756 [info] {"source":"oban","duration":1634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:19:00.432 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:19:13.758 [info] {"source":"oban","duration":1095,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:19:43.759 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:20:00.433 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:20:13.762 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:20:43.764 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:21:00.434 [info] {"source":"oban","duration":368,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:21:13.766 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:21:43.768 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:22:00.435 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:22:13.770 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:22:43.772 [info] {"source":"oban","duration":1754,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:23:00.436 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:23:13.775 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:23:43.777 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:24:00.437 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:24:13.779 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:24:43.781 [info] {"source":"oban","duration":1603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:25:00.438 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:25:13.783 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:25:43.785 [info] {"source":"oban","duration":1171,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:26:00.439 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:26:13.787 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:26:43.789 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:27:00.440 [info] {"source":"oban","duration":243,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:27:13.791 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:27:43.793 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:28:00.441 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:28:13.795 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:28:43.797 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:29:00.442 [info] {"source":"oban","duration":397,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:29:13.799 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:29:43.801 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:30:00.443 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:30:13.803 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:30:43.805 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:31:00.444 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:31:13.807 [info] {"source":"oban","duration":1771,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:31:43.810 [info] {"source":"oban","duration":1114,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:32:00.445 [info] {"source":"oban","duration":386,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:32:13.812 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:32:43.814 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:33:00.446 [info] {"source":"oban","duration":251,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:33:13.816 [info] {"source":"oban","duration":1058,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:33:43.818 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:34:00.447 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:34:13.820 [info] {"source":"oban","duration":1646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:34:43.823 [info] {"source":"oban","duration":1570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:35:00.448 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:35:13.825 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:35:43.827 [info] {"source":"oban","duration":1711,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:36:00.449 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:36:13.830 [info] {"source":"oban","duration":1578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:36:43.832 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:37:00.450 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:37:13.834 [info] {"source":"oban","duration":1983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:37:43.837 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:38:00.451 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:38:13.839 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:38:43.841 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:39:00.452 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:39:13.843 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:39:43.845 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:40:00.453 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:40:13.847 [info] {"source":"oban","duration":1195,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:40:43.849 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:41:00.454 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:41:13.851 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:41:43.853 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:42:00.455 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:42:13.855 [info] {"source":"oban","duration":1856,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:42:43.858 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:43:00.456 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:43:13.860 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:43:43.862 [info] {"source":"oban","duration":1221,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:44:00.457 [info] {"source":"oban","duration":302,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:44:13.864 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:44:43.866 [info] {"source":"oban","duration":1605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:45:00.458 [info] {"source":"oban","duration":298,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:45:13.868 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:45:43.870 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:46:00.459 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:46:13.872 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:46:43.874 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:47:00.460 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:47:13.876 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:47:43.878 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:48:00.461 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:48:13.880 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:48:43.882 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:49:00.462 [info] {"source":"oban","duration":300,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:49:13.884 [info] {"source":"oban","duration":1198,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:49:43.886 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:50:00.463 [info] {"source":"oban","duration":293,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:50:13.888 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:50:40.075 [info] {"args":{"id":106250},"id":2953,"meta":{},"system_time":1769723440074809853,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":18,"tags":["media_item","media_fetching","show_in_dashboard"]} 14:50:40.076 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=962.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" = ?) [106250] 14:50:40.076 [info] User scripts lifecyle file either not present or is empty. Skipping. 14:50:40.077 [debug] QUERY OK source="sources" db=0.3ms idle=963.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] 14:50:40.077 [debug] QUERY OK source="media_profiles" db=0.3ms idle=964.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] 14:50:40.079 [debug] QUERY OK source="media_items" db=0.6ms 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 [106250] 14:50:40.080 [debug] QUERY OK source="media_metadata" db=0.2ms idle=5.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" = ?) [106250] 14:50:40.081 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 14:50:40.082 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 14:50:40.082 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 14:50:40.083 [debug] Running yt-dlp command for action: get_downloadable_status 14:50:40.084 [debug] QUERY OK source="settings" db=0.2ms 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 [] 14:50:40.085 [debug] QUERY OK source="settings" db=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 [] 14:50:40.085 [debug] QUERY OK source="settings" db=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 [] 14:50:40.085 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=rDn7g37M7PI --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/28/fc/28fcf031a5897b8ee8998e633dc619bb1f44a156657d03c7f78319651088c115.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 14:50:43.669 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=rDn7g37M7PI --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/28/fc/28fcf031a5897b8ee8998e633dc619bb1f44a156657d03c7f78319651088c115.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] rDn7g37M7PI: This live event will begin in 23 days. 14:50:43.670 [error] yt-dlp download error for media item #106250: "ERROR: [youtube] rDn7g37M7PI: This live event will begin in 23 days.\n" 14:50:43.672 [debug] QUERY OK source="media_items" db=1.8ms idle=596.4ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["ERROR: [youtube] rDn7g37M7PI: This live event will begin in 23 days.\n", ~U[2026-01-29 21:50:43Z], 106250] 14:50:43.673 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106250},"id":2953,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":3597932,"event":"job:exception","queue_time":30249,"attempt":18,"tags":["media_item","media_fetching","show_in_dashboard"]} 14:50:43.890 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:51:00.467 [info] {"source":"oban","duration":2992,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:51:13.892 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:51:43.894 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:52:00.468 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:52:13.896 [info] {"source":"oban","duration":1614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:52:43.898 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:53:00.469 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:53:13.900 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:53:43.902 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:54:00.470 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:54:13.904 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:54:43.906 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:00.471 [info] {"source":"oban","duration":415,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:55:13.908 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:43.910 [info] {"source":"oban","duration":1102,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:56:00.472 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:56:13.912 [info] {"source":"oban","duration":1303,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:56:43.914 [info] {"source":"oban","duration":1207,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:57:00.473 [info] {"source":"oban","duration":348,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:57:13.916 [info] {"source":"oban","duration":1662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:57:43.918 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:58:00.474 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:58:13.920 [info] {"source":"oban","duration":1638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:58:43.922 [info] {"source":"oban","duration":1715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:59:00.475 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 14:59:13.925 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:59:43.928 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:00:00.476 [info] {"source":"oban","duration":449,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:00:13.930 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:00:43.932 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:01:00.477 [info] {"source":"oban","duration":443,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:01:13.934 [info] {"source":"oban","duration":1599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:01:43.936 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:02:00.478 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:02:13.938 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:02:43.940 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:03:00.479 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:03:13.942 [info] {"source":"oban","duration":1070,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:03:43.944 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:04:00.480 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:04:13.946 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:04:43.948 [info] {"source":"oban","duration":1562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:05:00.481 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:05:13.950 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:05:43.952 [info] {"source":"oban","duration":1597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:06:00.482 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:06:13.954 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:06:43.956 [info] {"source":"oban","duration":1253,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:07:00.483 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:07:13.958 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:07:43.960 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:08:00.484 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:08:13.962 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:08:43.964 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:09:00.485 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:09:13.966 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:09:43.968 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:10:00.486 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:10:13.970 [info] {"source":"oban","duration":1347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:10:43.972 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:11:00.487 [info] {"source":"oban","duration":373,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:11:13.974 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:11:43.976 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:12:00.488 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:12:13.978 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:12:43.980 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:13:00.489 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:13:13.982 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:13:43.984 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:14:00.490 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:14:13.985 [info] {"source":"oban","duration":794,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:14:43.988 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:15:00.491 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:15:13.990 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:15:43.992 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:16:00.492 [info] {"source":"oban","duration":191,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:16:13.994 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:16:43.996 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:17:00.493 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:17:13.998 [info] {"source":"oban","duration":1697,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:17:44.001 [info] {"source":"oban","duration":1112,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:18:00.494 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:18:14.003 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:18:44.005 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:19:00.495 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:19:14.007 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:19:44.008 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:20:00.496 [info] {"source":"oban","duration":241,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:20:14.011 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:20:44.013 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:21:00.497 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:21:14.015 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:21:44.017 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:22:00.498 [info] {"source":"oban","duration":316,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:22:14.019 [info] {"source":"oban","duration":1265,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:22:44.021 [info] {"source":"oban","duration":1524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:23:00.499 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:23:14.023 [info] {"source":"oban","duration":1118,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:23:44.025 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:24:00.500 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:24:14.027 [info] {"source":"oban","duration":1150,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:24:44.029 [info] {"source":"oban","duration":1060,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:25:00.501 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:25:14.031 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:25:44.033 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:26:00.502 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:26:14.035 [info] {"source":"oban","duration":1356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:26:44.037 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:27:00.503 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:27:14.039 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:27:44.041 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:28:00.504 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:28:14.043 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:28:44.045 [info] {"source":"oban","duration":986,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:29:00.505 [info] {"source":"oban","duration":279,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:29:14.047 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:29:44.049 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:30:00.506 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:30:14.051 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:30:44.053 [info] {"source":"oban","duration":1538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:31:00.507 [info] {"source":"oban","duration":219,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:31:14.055 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:31:44.057 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:32:00.508 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:32:14.059 [info] {"source":"oban","duration":1319,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:32:44.061 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:33:00.509 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:33:14.063 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:33:44.065 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:34:00.510 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:34:14.067 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:34:44.069 [info] {"source":"oban","duration":1178,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:00.511 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:35:14.071 [info] {"source":"oban","duration":1141,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:44.073 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:36:00.512 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:36:14.075 [info] {"source":"oban","duration":1509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:36:44.077 [info] {"source":"oban","duration":1583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:37:00.513 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:37:14.079 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:37:44.081 [info] {"source":"oban","duration":1578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:38:00.514 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:38:14.083 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:38:44.085 [info] {"source":"oban","duration":1379,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:00.515 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:39:14.087 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:44.089 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:40:00.516 [info] {"source":"oban","duration":474,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:40:14.091 [info] {"source":"oban","duration":1500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:40:44.093 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:41:00.517 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:41:14.095 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:41:44.097 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:42:00.518 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:42:14.099 [info] {"source":"oban","duration":1071,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:42:44.101 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:00.519 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:43:14.103 [info] {"source":"oban","duration":1058,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:44.105 [info] {"source":"oban","duration":1109,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:44:00.520 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:44:14.107 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:44:44.109 [info] {"source":"oban","duration":1369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:45:00.521 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:45:14.111 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:45:44.113 [info] {"source":"oban","duration":1527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:46:00.522 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:46:14.115 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:46:44.117 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:47:00.523 [info] {"source":"oban","duration":474,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:47:14.119 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:47:44.121 [info] {"source":"oban","duration":1070,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:48:00.524 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:48:14.123 [info] {"source":"oban","duration":1302,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:48:44.125 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:49:00.525 [info] {"source":"oban","duration":296,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:49:14.127 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:49:44.129 [info] {"source":"oban","duration":1558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:50:00.526 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:50:14.131 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:50:44.133 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:51:00.527 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:51:14.135 [info] {"source":"oban","duration":1092,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:51:44.137 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:52:00.528 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:52:14.139 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:52:44.141 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:53:00.529 [info] {"source":"oban","duration":452,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:53:14.143 [info] {"source":"oban","duration":1634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:53:44.145 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:54:00.530 [info] {"source":"oban","duration":437,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:54:14.147 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:54:44.149 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:55:00.531 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:55:14.151 [info] {"source":"oban","duration":1210,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:55:44.153 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:56:00.532 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:56:14.155 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:56:26.822 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769727386822587272,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":14,"tags":["media_item","media_fetching","show_in_dashboard"]} 15:56:26.823 [debug] QUERY OK source="media_items" db=0.4ms idle=710.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" = ?) [102574] 15:56:26.824 [info] User scripts lifecyle file either not present or is empty. Skipping. 15:56:26.824 [debug] QUERY OK source="sources" db=0.2ms idle=711.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] 15:56:26.825 [debug] QUERY OK source="media_profiles" db=0.3ms idle=711.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] 15:56:26.826 [debug] QUERY OK source="media_items" db=0.8ms idle=10.5ms 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 [102574] 15:56:26.851 [debug] QUERY OK source="media_metadata" db=0.1ms queue=0.1ms idle=29.3ms 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" = ?) [102574] 15:56:26.852 [debug] QUERY OK source="media_profiles" db=0.2ms idle=28.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] 15:56:26.853 [debug] QUERY OK source="settings" db=0.1ms idle=28.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 [] 15:56:26.853 [debug] QUERY OK source="settings" db=0.1ms idle=27.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 [] 15:56:26.853 [debug] Running yt-dlp command for action: get_downloadable_status 15:56:26.854 [debug] QUERY OK source="settings" db=0.1ms idle=27.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 [] 15:56:26.855 [debug] QUERY OK source="settings" db=0.2ms 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 [] 15:56:26.855 [debug] QUERY OK source="settings" db=0.2ms 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 [] 15:56:26.856 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/c2/11/c211c1faf587aa9a2ec0249d047373fbd1af27628860534f0b4c1ac67e4943f7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 15:56:30.717 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/c2/11/c211c1faf587aa9a2ec0249d047373fbd1af27628860534f0b4c1ac67e4943f7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 15:56:30.718 [debug] Running yt-dlp command for action: download 15:56:30.718 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=895.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 [] 15:56:30.719 [debug] QUERY OK source="settings" db=0.2ms 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 [] 15:56:30.719 [debug] QUERY OK source="settings" db=0.3ms idle=606.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 [] 15:56:30.720 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/71/34/713436ec1e7c1c913fa55deee21a2b0377dd0770bd17902e151a9a8811b853b5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 15:56:35.776 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/71/34/713436ec1e7c1c913fa55deee21a2b0377dd0770bd17902e151a9a8811b853b5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 15:56:35.776 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 15:56:35.778 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8954465,"event":"job:exception","queue_time":501021,"attempt":14,"tags":["media_item","media_fetching","show_in_dashboard"]} 15:56:44.157 [info] {"source":"oban","duration":1625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:57:00.533 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:57:14.159 [info] {"source":"oban","duration":1229,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:57:44.161 [info] {"source":"oban","duration":1095,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:58:00.534 [info] {"source":"oban","duration":399,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:58:14.163 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:58:44.165 [info] {"source":"oban","duration":1036,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:59:00.535 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 15:59:14.167 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:59:44.169 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:00:00.537 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:00:14.171 [info] {"source":"oban","duration":1600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:00:44.173 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:01:00.538 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:01:14.175 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:01:44.177 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:02:00.539 [info] {"source":"oban","duration":434,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:02:14.179 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:02:44.181 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:03:00.540 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:03:14.183 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:03:44.185 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:04:00.541 [info] {"source":"oban","duration":445,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:04:14.187 [info] {"source":"oban","duration":1216,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:04:44.189 [info] {"source":"oban","duration":1092,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:05:00.542 [info] {"source":"oban","duration":476,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:05:14.191 [info] {"source":"oban","duration":1687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:05:44.194 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:06:00.543 [info] {"source":"oban","duration":271,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:06:14.196 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:06:44.197 [info] {"source":"oban","duration":812,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:07:00.544 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:07:14.200 [info] {"source":"oban","duration":1236,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:07:44.202 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:08:00.545 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:08:14.204 [info] {"source":"oban","duration":1576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:08:44.206 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:09:00.546 [info] {"source":"oban","duration":278,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:09:14.208 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:09:44.210 [info] {"source":"oban","duration":1381,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:10:00.547 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:10:14.212 [info] {"source":"oban","duration":1178,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:10:44.214 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:11:00.548 [info] {"source":"oban","duration":390,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:11:14.216 [info] {"source":"oban","duration":1579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:11:44.219 [info] {"source":"oban","duration":1081,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:12:00.549 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:12:14.221 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:12:44.223 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:13:00.550 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:13:14.225 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:13:44.227 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:14:00.551 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:14:14.229 [info] {"source":"oban","duration":1027,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:14:44.231 [info] {"source":"oban","duration":1401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:15:00.552 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:15:14.233 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:15:44.235 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:16:00.553 [info] {"source":"oban","duration":246,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:16:14.237 [info] {"source":"oban","duration":1089,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:16:44.239 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:17:00.554 [info] {"source":"oban","duration":246,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:17:14.241 [info] {"source":"oban","duration":1411,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:17:44.243 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:18:00.555 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:18:14.245 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:18:44.247 [info] {"source":"oban","duration":1236,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:19:00.556 [info] {"source":"oban","duration":373,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:19:14.249 [info] {"source":"oban","duration":1082,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:19:44.251 [info] {"source":"oban","duration":1241,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:20:00.557 [info] {"source":"oban","duration":348,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:20:14.253 [info] {"source":"oban","duration":1246,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:20:44.255 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:21:00.558 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:21:14.257 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:21:44.259 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:22:00.559 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:22:14.261 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:22:44.263 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:23:00.560 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:23:14.265 [info] {"source":"oban","duration":1681,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:23:44.268 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:24:00.561 [info] {"source":"oban","duration":271,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:24:14.270 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:24:44.272 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:25:00.562 [info] {"source":"oban","duration":278,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:25:14.274 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:25:44.276 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:26:00.564 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:26:14.278 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:26:44.280 [info] {"source":"oban","duration":1251,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:27:00.565 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:27:14.282 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:27:44.284 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:28:00.566 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:28:14.286 [info] {"source":"oban","duration":1161,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:28:44.288 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:29:00.567 [info] {"source":"oban","duration":298,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:29:14.290 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:29:44.292 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:30:00.568 [info] {"source":"oban","duration":246,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:30:14.294 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:30:44.296 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:31:00.569 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:31:14.298 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:31:44.300 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:32:00.570 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:32:14.302 [info] {"source":"oban","duration":1319,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:32:44.304 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:33:00.571 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:33:14.306 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:33:44.308 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:34:00.572 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:34:14.310 [info] {"source":"oban","duration":1253,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:34:44.312 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:35:00.573 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:35:14.314 [info] {"source":"oban","duration":1220,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:35:44.316 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:36:00.574 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:36:14.318 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:36:44.320 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:37:00.575 [info] {"source":"oban","duration":302,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:37:14.322 [info] {"source":"oban","duration":1231,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:37:44.324 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:38:00.576 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:38:14.326 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:38:44.328 [info] {"source":"oban","duration":1207,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:39:00.577 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:39:14.330 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:39:44.332 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:40:00.578 [info] {"source":"oban","duration":295,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:40:14.334 [info] {"source":"oban","duration":1246,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:40:44.336 [info] {"source":"oban","duration":1235,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:41:00.579 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:41:14.338 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:41:44.340 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:42:00.581 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:42:14.342 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:42:44.344 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:43:00.582 [info] {"source":"oban","duration":297,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:43:14.346 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:43:44.348 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:44:00.583 [info] {"source":"oban","duration":270,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:44:14.350 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:44:44.352 [info] {"source":"oban","duration":990,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:45:00.584 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:45:14.354 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:45:44.356 [info] {"source":"oban","duration":1163,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:46:00.585 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:46:14.357 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:46:44.360 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:47:00.586 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:47:14.362 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:47:44.364 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:48:00.587 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:48:14.366 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:48:44.368 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:49:00.588 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:49:14.370 [info] {"source":"oban","duration":1739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:49:44.373 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:50:00.589 [info] {"source":"oban","duration":300,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:50:14.375 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:50:44.377 [info] {"source":"oban","duration":1273,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:51:00.590 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:51:14.379 [info] {"source":"oban","duration":1317,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:51:44.381 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:52:00.591 [info] {"source":"oban","duration":261,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:52:14.383 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:52:44.385 [info] {"source":"oban","duration":1231,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:53:00.592 [info] {"source":"oban","duration":289,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:53:14.387 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:53:44.389 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:54:00.593 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:54:14.391 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:54:44.393 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:55:00.595 [info] {"source":"oban","duration":232,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:55:14.395 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:55:44.397 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:56:00.596 [info] {"source":"oban","duration":381,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:56:14.399 [info] {"source":"oban","duration":1246,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:56:44.401 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:57:00.597 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:57:14.403 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:57:44.405 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:58:00.598 [info] {"source":"oban","duration":373,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:58:14.407 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:58:44.409 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:59:00.599 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 16:59:14.411 [info] {"source":"oban","duration":1573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:59:44.414 [info] {"source":"oban","duration":1219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:00:00.600 [info] {"source":"oban","duration":409,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:00:14.417 [info] {"source":"oban","duration":2457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":5} 17:00:44.419 [info] {"source":"oban","duration":1078,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:01:00.601 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:01:14.421 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:01:44.423 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:02:00.602 [info] {"source":"oban","duration":240,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:02:14.425 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:02:44.427 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:03:00.603 [info] {"source":"oban","duration":209,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:03:14.429 [info] {"source":"oban","duration":1381,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:03:44.431 [info] {"source":"oban","duration":1615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:04:00.604 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:04:14.433 [info] {"source":"oban","duration":1117,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:04:44.435 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:05:00.605 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:05:14.437 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:05:44.439 [info] {"source":"oban","duration":1117,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:06:00.607 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:06:14.441 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:06:44.443 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:07:00.608 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:07:14.445 [info] {"source":"oban","duration":1218,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:07:44.447 [info] {"source":"oban","duration":1327,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:08:00.609 [info] {"source":"oban","duration":393,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:08:14.449 [info] {"source":"oban","duration":1190,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:08:44.451 [info] {"source":"oban","duration":980,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:09:00.610 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:09:14.452 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:09:44.455 [info] {"source":"oban","duration":1606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:10:00.611 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:10:14.457 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:10:44.459 [info] {"source":"oban","duration":1690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:11:00.612 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:11:14.462 [info] {"source":"oban","duration":1215,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:11:44.464 [info] {"source":"oban","duration":1597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:00.613 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:12:14.466 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:44.468 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:13:00.614 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:13:14.470 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:13:44.472 [info] {"source":"oban","duration":1504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:14:00.615 [info] {"source":"oban","duration":377,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:14:14.474 [info] {"source":"oban","duration":1715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:14:44.477 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:15:00.616 [info] {"source":"oban","duration":362,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:15:14.479 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:15:44.481 [info] {"source":"oban","duration":1219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:16:00.617 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:16:14.483 [info] {"source":"oban","duration":995,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:16:44.485 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:17:00.618 [info] {"source":"oban","duration":265,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:17:14.487 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:17:44.489 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:00.619 [info] {"source":"oban","duration":284,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:18:14.491 [info] {"source":"oban","duration":1168,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:44.493 [info] {"source":"oban","duration":1533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:19:00.620 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:19:14.495 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:19:44.497 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:20:00.621 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:20:14.499 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:20:44.501 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:21:00.622 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:21:14.503 [info] {"source":"oban","duration":1182,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:21:44.505 [info] {"source":"oban","duration":1500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:22:00.623 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:22:14.507 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:22:44.509 [info] {"source":"oban","duration":1783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:23:00.624 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:23:14.512 [info] {"source":"oban","duration":1324,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:23:44.514 [info] {"source":"oban","duration":1259,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:24:00.625 [info] {"source":"oban","duration":261,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:24:14.516 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:24:44.518 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:25:00.626 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:25:14.520 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:25:44.522 [info] {"source":"oban","duration":1650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:26:00.627 [info] {"source":"oban","duration":308,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:26:14.524 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:26:44.526 [info] {"source":"oban","duration":1338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:27:00.628 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:27:14.528 [info] {"source":"oban","duration":1666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:27:44.531 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:28:00.629 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:28:14.533 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:28:44.535 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:29:00.630 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:29:14.537 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:29:44.539 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:30:00.631 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:30:14.541 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:30:44.543 [info] {"source":"oban","duration":1194,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:31:00.632 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:31:14.544 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:31:44.547 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:32:00.633 [info] {"source":"oban","duration":283,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:32:14.549 [info] {"source":"oban","duration":1241,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:32:44.551 [info] {"source":"oban","duration":1328,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:33:00.634 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:33:14.553 [info] {"source":"oban","duration":1677,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:33:44.556 [info] {"source":"oban","duration":1046,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:34:00.635 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:34:14.558 [info] {"source":"oban","duration":1544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:34:44.560 [info] {"source":"oban","duration":1554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:35:00.636 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:35:14.562 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:35:44.564 [info] {"source":"oban","duration":1607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:36:00.637 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:36:14.566 [info] {"source":"oban","duration":1166,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:36:44.568 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:37:00.638 [info] {"source":"oban","duration":274,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:37:14.570 [info] {"source":"oban","duration":1060,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:37:44.572 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:38:00.639 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:38:14.574 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:38:44.576 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:39:00.640 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:39:14.578 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:39:44.580 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:40:00.641 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:40:14.582 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:40:44.584 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:41:00.642 [info] {"source":"oban","duration":237,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:41:14.586 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:41:44.588 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:42:00.643 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:42:14.590 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:42:44.592 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:43:00.644 [info] {"source":"oban","duration":373,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:43:14.594 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:43:44.596 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:44:00.645 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:44:14.599 [info] {"source":"oban","duration":1936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:44:44.601 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:45:00.646 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:45:14.603 [info] {"source":"oban","duration":1169,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:45:44.605 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:46:00.647 [info] {"source":"oban","duration":261,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:46:14.607 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:46:44.609 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:47:00.648 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:47:14.611 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:47:44.613 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:48:00.649 [info] {"source":"oban","duration":247,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:48:14.614 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:48:44.617 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:49:00.650 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:49:14.619 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:49:44.621 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:50:00.651 [info] {"source":"oban","duration":391,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:50:14.623 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:50:44.625 [info] {"source":"oban","duration":1539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:51:00.652 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:51:14.627 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:51:44.629 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:52:00.653 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:52:14.631 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:52:44.633 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:53:00.654 [info] {"source":"oban","duration":289,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:53:14.635 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:53:44.637 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:54:00.655 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:54:14.639 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:54:44.641 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:55:00.656 [info] {"source":"oban","duration":279,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:55:14.643 [info] {"source":"oban","duration":1189,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:55:44.645 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:56:00.657 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:56:14.647 [info] {"source":"oban","duration":1563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:56:44.649 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:57:00.658 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:57:14.651 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:57:44.653 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:58:00.659 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:58:14.655 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:58:44.657 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:59:00.660 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 17:59:14.659 [info] {"source":"oban","duration":1640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:59:44.662 [info] {"source":"oban","duration":1364,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:00:00.665 [info] {"source":"oban","duration":3427,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[2977]} 18:00:00.672 [info] {"args":{},"id":2977,"meta":{"cron":true,"cron_expr":"0 1 * * *","cron_tz":"Etc/UTC"},"system_time":1769734800672501511,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.Downloading.MediaRetentionWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","local_data"]} 18:00:05.335 [debug] QUERY OK source="media_items" db=4661.4ms queue=0.4ms idle=560.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)) [] 18:00:05.335 [info] Culling 0 media items past their retention date 18:00:05.342 [debug] QUERY OK source="media_items" db=5.5ms queue=0.4ms idle=1106.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" 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)) [] 18:00:05.342 [info] Deleting 0 media items that are from before the source cutoff 18:00:05.343 [info] {"args":{},"id":2977,"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":4669787,"event":"job:stop","queue_time":671053,"attempt":1,"tags":["media_item","local_data"]} 18:00:14.664 [info] {"source":"oban","duration":1564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:00:44.666 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:01:00.666 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:01:14.668 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:01:44.670 [info] {"source":"oban","duration":1083,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:02:00.667 [info] {"source":"oban","duration":392,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:02:14.672 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:02:44.674 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:03:00.668 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:03:14.676 [info] {"source":"oban","duration":1137,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:03:44.678 [info] {"source":"oban","duration":1618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:04:00.669 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:04:14.681 [info] {"source":"oban","duration":1762,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:04:44.684 [info] {"source":"oban","duration":1538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:05:00.670 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:05:14.686 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:05:44.688 [info] {"source":"oban","duration":1738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:06:00.671 [info] {"source":"oban","duration":327,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:06:14.691 [info] {"source":"oban","duration":1585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:06:44.693 [info] {"source":"oban","duration":1264,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:07:00.672 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:07:14.695 [info] {"source":"oban","duration":1650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:07:44.698 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:08:00.673 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:08:14.700 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:08:44.702 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:09:00.674 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:09:14.704 [info] {"source":"oban","duration":1343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:09:44.706 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:10:00.675 [info] {"source":"oban","duration":381,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:10:14.708 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:10:44.710 [info] {"source":"oban","duration":1161,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:11:00.676 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:11:14.712 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:11:44.714 [info] {"source":"oban","duration":1563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:12:00.677 [info] {"source":"oban","duration":468,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:12:14.716 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:12:44.718 [info] {"source":"oban","duration":1355,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:13:00.678 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:13:14.720 [info] {"source":"oban","duration":1161,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:13:44.722 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:14:00.679 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:14:14.724 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:14:44.726 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:15:00.680 [info] {"source":"oban","duration":294,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:15:14.728 [info] {"source":"oban","duration":1369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:15:44.730 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:16:00.681 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:16:14.732 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:16:44.735 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:17:00.682 [info] {"source":"oban","duration":426,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:17:14.737 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:17:44.739 [info] {"source":"oban","duration":1613,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:18:00.683 [info] {"source":"oban","duration":190,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:18:14.741 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:18:44.743 [info] {"source":"oban","duration":1505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:19:00.684 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:19:14.745 [info] {"source":"oban","duration":1607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:19:44.747 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:20:00.685 [info] {"source":"oban","duration":381,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:20:14.749 [info] {"source":"oban","duration":1628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:20:44.752 [info] {"source":"oban","duration":1327,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:21:00.686 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:21:14.754 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:21:44.756 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:22:00.687 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:22:14.758 [info] {"source":"oban","duration":1390,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:22:44.760 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:23:00.688 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:23:14.762 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:23:44.764 [info] {"source":"oban","duration":1146,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:24:00.689 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:24:14.766 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:24:44.768 [info] {"source":"oban","duration":1083,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:25:00.690 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:25:14.770 [info] {"source":"oban","duration":1068,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:25:44.772 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:26:00.691 [info] {"source":"oban","duration":389,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:26:14.774 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:26:44.776 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:27:00.692 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:27:14.778 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:27:44.780 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:28:00.693 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:28:14.782 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:28:44.784 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:29:00.694 [info] {"source":"oban","duration":383,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:29:14.786 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:29:44.788 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:30:00.695 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:30:14.790 [info] {"source":"oban","duration":1382,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:30:44.792 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:31:00.696 [info] {"source":"oban","duration":324,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:31:14.794 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:31:44.796 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:32:00.697 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:32:14.798 [info] {"source":"oban","duration":1016,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:32:44.800 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:33:00.698 [info] {"source":"oban","duration":285,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:33:14.802 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:33:44.804 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:34:00.699 [info] {"source":"oban","duration":307,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:34:14.806 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:34:44.808 [info] {"source":"oban","duration":1605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:35:00.700 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:35:14.810 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:35:44.812 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:36:00.701 [info] {"source":"oban","duration":247,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:36:14.814 [info] {"source":"oban","duration":1605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:36:44.816 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:37:00.702 [info] {"source":"oban","duration":383,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:37:14.819 [info] {"source":"oban","duration":1899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:37:44.821 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:38:00.703 [info] {"source":"oban","duration":370,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:38:14.823 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:38:44.825 [info] {"source":"oban","duration":1558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:39:00.704 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:39:14.827 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:39:44.829 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:40:00.705 [info] {"source":"oban","duration":270,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:40:14.831 [info] {"source":"oban","duration":1367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:40:44.833 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:41:00.706 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:41:14.835 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:41:44.837 [info] {"source":"oban","duration":1534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:42:00.707 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:42:14.839 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:42:44.841 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:43:00.708 [info] {"source":"oban","duration":385,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:43:14.843 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:43:44.845 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:44:00.709 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:44:14.847 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:44:44.849 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:45:00.710 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:45:14.851 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:45:44.853 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:46:00.711 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:46:14.855 [info] {"source":"oban","duration":1716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:46:44.858 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:47:00.712 [info] {"source":"oban","duration":161,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:47:14.860 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:47:44.862 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:48:00.713 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:48:14.864 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:48:44.866 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:49:00.714 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:49:14.868 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:49:44.870 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:50:00.715 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:50:14.872 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:50:44.874 [info] {"source":"oban","duration":1652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:51:00.716 [info] {"source":"oban","duration":368,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:51:14.876 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:51:44.878 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:52:00.717 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:52:14.880 [info] {"source":"oban","duration":1562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:52:44.882 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:53:00.718 [info] {"source":"oban","duration":309,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:53:14.884 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:53:44.886 [info] {"source":"oban","duration":1384,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:54:00.719 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:54:14.888 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:54:44.890 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:55:00.720 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:55:14.892 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:55:44.894 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:56:00.721 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:56:14.896 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:56:44.898 [info] {"source":"oban","duration":1560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:57:00.722 [info] {"source":"oban","duration":364,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:57:14.900 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:57:44.902 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:58:00.723 [info] {"source":"oban","duration":383,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:58:14.905 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:58:44.907 [info] {"source":"oban","duration":1549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:59:00.724 [info] {"source":"oban","duration":385,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 18:59:14.909 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:59:44.911 [info] {"source":"oban","duration":1307,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:00:00.727 [info] {"source":"oban","duration":2442,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[2978]} 19:00:00.734 [info] {"args":{},"id":2978,"meta":{"cron":true,"cron_expr":"0 2 * * *","cron_tz":"Etc/UTC"},"system_time":1769738400734378308,"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"]} 19:00:00.787 [debug] QUERY OK source="media_items" db=51.8ms queue=0.5ms idle=620.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) 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) ) [] 19:00:00.787 [info] Redownloading 0 media items 19:00:00.788 [info] {"args":{},"id":2978,"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":53587,"event":"job:stop","queue_time":732975,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 19:00:14.913 [info] {"source":"oban","duration":1096,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:00:44.915 [info] {"source":"oban","duration":1644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:01:00.728 [info] {"source":"oban","duration":283,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:01:14.917 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:01:44.919 [info] {"source":"oban","duration":1306,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:02:00.729 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:02:14.921 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:02:44.923 [info] {"source":"oban","duration":1600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:03:00.730 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:03:14.925 [info] {"source":"oban","duration":1263,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:03:44.927 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:04:00.731 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:04:14.929 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:04:44.931 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:05:00.732 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:05:14.933 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:05:44.935 [info] {"source":"oban","duration":1504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:06:00.733 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:06:14.937 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:06:44.939 [info] {"source":"oban","duration":1236,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:07:00.734 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:07:14.941 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:07:44.943 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:08:00.735 [info] {"source":"oban","duration":240,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:08:14.945 [info] {"source":"oban","duration":1343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:08:44.947 [info] {"source":"oban","duration":1157,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:09:00.736 [info] {"source":"oban","duration":241,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:09:14.948 [info] {"source":"oban","duration":857,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:09:44.951 [info] {"source":"oban","duration":1067,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:10:00.737 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:10:14.953 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:10:44.955 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:11:00.738 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:11:14.957 [info] {"source":"oban","duration":1175,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:11:44.959 [info] {"source":"oban","duration":1238,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:12:00.739 [info] {"source":"oban","duration":370,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:12:14.961 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:12:44.963 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:13:00.740 [info] {"source":"oban","duration":385,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:13:14.965 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:13:44.967 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:14:00.741 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:14:14.969 [info] {"source":"oban","duration":1345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:14:44.971 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:15:00.743 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:15:14.973 [info] {"source":"oban","duration":1140,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:15:44.975 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:16:00.744 [info] {"source":"oban","duration":246,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:16:14.977 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:16:44.979 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:17:00.745 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:17:14.981 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:17:44.983 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:18:00.746 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:18:14.985 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:18:44.987 [info] {"source":"oban","duration":1153,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:19:00.747 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:19:14.989 [info] {"source":"oban","duration":1127,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:19:44.990 [info] {"source":"oban","duration":848,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:20:00.749 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:20:14.993 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:20:44.995 [info] {"source":"oban","duration":1554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:21:00.750 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:21:14.997 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:21:44.999 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:22:00.751 [info] {"source":"oban","duration":270,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:22:15.001 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:22:45.003 [info] {"source":"oban","duration":1122,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:23:00.752 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:23:15.005 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:23:45.007 [info] {"source":"oban","duration":1260,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:24:00.753 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:24:15.009 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:24:45.011 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:25:00.754 [info] {"source":"oban","duration":476,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:25:15.013 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:25:45.015 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:26:00.755 [info] {"source":"oban","duration":394,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:26:15.017 [info] {"source":"oban","duration":1070,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:26:45.019 [info] {"source":"oban","duration":1165,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:27:00.756 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:27:15.021 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:27:45.023 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:28:00.757 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:28:15.025 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:28:45.027 [info] {"source":"oban","duration":1635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:29:00.758 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:29:15.029 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:29:45.031 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:30:00.759 [info] {"source":"oban","duration":391,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:30:15.033 [info] {"source":"oban","duration":1140,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:30:45.035 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:31:00.760 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:31:15.037 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:31:45.039 [info] {"source":"oban","duration":1307,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:32:00.761 [info] {"source":"oban","duration":348,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:32:15.041 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:32:45.043 [info] {"source":"oban","duration":1345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:33:00.762 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:33:15.045 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:33:45.047 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:34:00.763 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:34:15.049 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:34:45.051 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:35:00.764 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:35:15.053 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:35:45.054 [info] {"source":"oban","duration":912,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:36:00.765 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:36:15.057 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:36:45.059 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:37:00.766 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:37:15.061 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:37:45.063 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:38:00.767 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:38:15.065 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:38:45.067 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:39:00.768 [info] {"source":"oban","duration":280,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:39:15.069 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:39:45.071 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:40:00.769 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:40:15.073 [info] {"source":"oban","duration":1200,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:40:45.075 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:41:00.770 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:41:15.077 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:41:45.079 [info] {"source":"oban","duration":1246,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:42:00.771 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:42:15.081 [info] {"source":"oban","duration":1021,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:42:45.083 [info] {"source":"oban","duration":1216,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:43:00.772 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:43:15.085 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:43:45.087 [info] {"source":"oban","duration":1163,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:44:00.773 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:44:15.089 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:44:45.091 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:45:00.774 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:45:15.093 [info] {"source":"oban","duration":1524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:45:45.095 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:46:00.775 [info] {"source":"oban","duration":376,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:46:15.097 [info] {"source":"oban","duration":1251,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:46:45.099 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:47:00.776 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:47:15.101 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:47:45.103 [info] {"source":"oban","duration":1620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:48:00.777 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:48:15.105 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:48:45.107 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:49:00.778 [info] {"source":"oban","duration":198,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:49:15.109 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:49:45.111 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:50:00.779 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:50:15.112 [info] {"source":"oban","duration":815,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:50:45.115 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:51:00.780 [info] {"source":"oban","duration":432,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:51:15.117 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:51:45.119 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:52:00.781 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:52:15.121 [info] {"source":"oban","duration":1245,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:52:45.123 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:53:00.782 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:53:15.125 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:53:45.127 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:54:00.783 [info] {"source":"oban","duration":301,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:54:15.129 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:54:45.131 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:55:00.784 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:55:15.133 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:55:45.135 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:56:00.785 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:56:15.136 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:56:45.139 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:57:00.786 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:57:15.141 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:57:45.143 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:58:00.787 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:58:15.145 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:58:45.147 [info] {"source":"oban","duration":1166,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:59:00.788 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 19:59:15.148 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:59:45.151 [info] {"source":"oban","duration":1347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:00:00.789 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:00:15.153 [info] {"source":"oban","duration":1065,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:00:45.155 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:01:00.790 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:01:15.157 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:01:45.159 [info] {"source":"oban","duration":1344,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:02:00.791 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:02:15.161 [info] {"source":"oban","duration":1337,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:02:45.163 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:03:00.792 [info] {"source":"oban","duration":310,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:03:15.165 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:03:45.167 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:04:00.793 [info] {"source":"oban","duration":188,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:04:15.169 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:04:45.171 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:05:00.794 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:05:15.173 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:05:45.175 [info] {"source":"oban","duration":1682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:06:00.795 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:06:15.177 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:06:45.179 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:07:00.796 [info] {"source":"oban","duration":303,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:07:15.181 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:07:45.183 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:08:00.797 [info] {"source":"oban","duration":231,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:08:15.185 [info] {"source":"oban","duration":1150,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:08:45.187 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:09:00.798 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:09:15.189 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:09:45.191 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:10:00.799 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:10:15.193 [info] {"source":"oban","duration":1331,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:10:45.195 [info] {"source":"oban","duration":1163,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:11:00.800 [info] {"source":"oban","duration":293,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:11:15.197 [info] {"source":"oban","duration":1316,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:11:45.199 [info] {"source":"oban","duration":1157,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:12:00.801 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:12:15.201 [info] {"source":"oban","duration":1106,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:12:45.203 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:13:00.803 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:13:15.205 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:13:45.206 [info] {"source":"oban","duration":944,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:14:00.804 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:14:15.209 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:14:45.211 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:15:00.805 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:15:15.213 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:15:45.215 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:16:00.806 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:16:15.217 [info] {"source":"oban","duration":1210,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:16:45.219 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:17:00.807 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:17:15.221 [info] {"source":"oban","duration":1188,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:17:45.223 [info] {"source":"oban","duration":1114,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:18:00.808 [info] {"source":"oban","duration":240,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:18:15.225 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:18:45.227 [info] {"source":"oban","duration":1109,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:19:00.809 [info] {"source":"oban","duration":228,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:19:15.229 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:19:45.231 [info] {"source":"oban","duration":1375,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:20:00.810 [info] {"source":"oban","duration":385,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:20:15.233 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:20:45.235 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:21:00.811 [info] {"source":"oban","duration":277,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:21:15.237 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:21:45.239 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:22:00.812 [info] {"source":"oban","duration":304,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:22:15.241 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:22:45.243 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:23:00.813 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:23:15.245 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:23:45.247 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:24:00.814 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:24:15.249 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:24:45.251 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:25:00.815 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:25:15.253 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:25:45.255 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:26:00.816 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:26:15.257 [info] {"source":"oban","duration":1113,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:26:45.259 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:27:00.817 [info] {"source":"oban","duration":340,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:27:15.261 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:27:45.263 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:28:00.818 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:28:15.265 [info] {"source":"oban","duration":1595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:28:45.267 [info] {"source":"oban","duration":1142,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:29:00.819 [info] {"source":"oban","duration":303,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:29:15.269 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:29:45.271 [info] {"source":"oban","duration":1096,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:30:00.820 [info] {"source":"oban","duration":278,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:30:15.273 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:30:45.275 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:31:00.821 [info] {"source":"oban","duration":270,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:31:15.277 [info] {"source":"oban","duration":1264,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:31:45.279 [info] {"source":"oban","duration":1569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:32:00.822 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:32:15.281 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:32:45.283 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:33:00.823 [info] {"source":"oban","duration":271,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:33:15.285 [info] {"source":"oban","duration":1087,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:33:45.287 [info] {"source":"oban","duration":1176,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:34:00.824 [info] {"source":"oban","duration":300,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:34:15.289 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:34:45.291 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:35:00.825 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:35:15.293 [info] {"source":"oban","duration":1326,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:35:45.295 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:36:00.826 [info] {"source":"oban","duration":274,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:36:15.297 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:36:45.299 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:37:00.827 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:37:15.301 [info] {"source":"oban","duration":1569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:37:45.303 [info] {"source":"oban","duration":1170,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:38:00.828 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:38:15.305 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:38:45.307 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:39:00.829 [info] {"source":"oban","duration":359,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:39:15.309 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:39:45.311 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:40:00.830 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:40:15.313 [info] {"source":"oban","duration":1620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:40:45.315 [info] {"source":"oban","duration":911,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:41:00.831 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:41:15.318 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:41:45.320 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:42:00.832 [info] {"source":"oban","duration":234,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:42:15.322 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:42:45.324 [info] {"source":"oban","duration":1104,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:43:00.833 [info] {"source":"oban","duration":270,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:43:15.326 [info] {"source":"oban","duration":1662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:43:45.328 [info] {"source":"oban","duration":1570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:44:00.834 [info] {"source":"oban","duration":392,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:44:15.330 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:44:45.332 [info] {"source":"oban","duration":1187,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:45:00.835 [info] {"source":"oban","duration":277,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:45:15.334 [info] {"source":"oban","duration":1059,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:45:45.336 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:46:00.836 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:46:15.338 [info] {"source":"oban","duration":1177,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:46:45.340 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:47:00.837 [info] {"source":"oban","duration":241,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:47:15.342 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:47:45.344 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:48:00.838 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:48:15.346 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:48:45.348 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:49:00.839 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:49:15.350 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:49:45.352 [info] {"source":"oban","duration":1384,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:00.840 [info] {"source":"oban","duration":283,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:50:15.354 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:45.356 [info] {"source":"oban","duration":1200,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:54.892 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1769745054891795606,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":15,"tags":["media_item","media_fetching","show_in_dashboard"]} 20:50:54.893 [debug] QUERY OK source="media_items" db=0.5ms idle=1778.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" = ?) [102574] 20:50:54.893 [info] User scripts lifecyle file either not present or is empty. Skipping. 20:50:54.894 [debug] QUERY OK source="sources" db=0.3ms idle=1013.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] 20:50:54.894 [debug] QUERY OK source="media_profiles" db=0.3ms idle=1007.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] 20:50:54.895 [debug] QUERY OK source="media_items" db=0.5ms idle=11.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 [102574] 20:50:54.897 [debug] QUERY OK source="media_metadata" db=0.2ms idle=5.8ms 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" = ?) [102574] 20:50:54.898 [debug] QUERY OK source="media_profiles" db=0.5ms idle=4.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] 20:50:54.899 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 20:50:54.899 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 20:50:54.900 [debug] Running yt-dlp command for action: get_downloadable_status 20:50:54.912 [debug] QUERY OK source="settings" db=0.2ms idle=16.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 [] 20:50:54.913 [debug] QUERY OK source="settings" db=0.2ms idle=15.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 [] 20:50:54.913 [debug] QUERY OK source="settings" db=0.2ms idle=14.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 [] 20:50:54.914 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/14/69/14691b057374f426e48bc851c6095327533c01195f244af929d5aec65c790ca7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 20:50:58.630 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/14/69/14691b057374f426e48bc851c6095327533c01195f244af929d5aec65c790ca7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 20:50:58.630 [debug] Running yt-dlp command for action: download 20:50:58.631 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=738.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 [] 20:50:58.631 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=733.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 [] 20:50:58.632 [debug] QUERY OK source="settings" db=0.2ms idle=517.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 [] 20:50:58.633 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/43/4a/434aebdfbcd40d7786be4ad1dea75cc27d963fbda46c9250df048f2faae0afb5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 20:51:00.841 [info] {"source":"oban","duration":252,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:51:03.450 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/43/4a/434aebdfbcd40d7786be4ad1dea75cc27d963fbda46c9250df048f2faae0afb5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 20:51:03.450 [error] yt-dlp download error for media item #102574: "WARNING: [youtube] opR_Tg1uLjc: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 20:51:03.452 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":102574},"id":2973,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8559301,"event":"job:exception","queue_time":112678,"attempt":15,"tags":["media_item","media_fetching","show_in_dashboard"]} 20:51:15.358 [info] {"source":"oban","duration":1341,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:51:45.360 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:52:00.842 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:52:15.362 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:52:45.364 [info] {"source":"oban","duration":1554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:53:00.843 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:53:15.366 [info] {"source":"oban","duration":1246,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:53:45.368 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:54:00.844 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:54:15.370 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:54:45.372 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:55:00.845 [info] {"source":"oban","duration":274,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:55:15.374 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:55:45.376 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:56:00.846 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:56:15.378 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:56:45.380 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:57:00.847 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:57:15.382 [info] {"source":"oban","duration":1143,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:57:45.384 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:00.848 [info] {"source":"oban","duration":196,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:58:15.386 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:45.388 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:48.080 [debug] Tzdata polling for update. 20:58:48.343 [debug] Tzdata polling shows the loaded tz database is up to date. 20:59:00.849 [info] {"source":"oban","duration":426,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 20:59:15.390 [info] {"source":"oban","duration":1064,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:59:45.392 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:00:00.851 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:00:15.394 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:00:45.396 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:01:00.852 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:01:15.398 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:01:45.400 [info] {"source":"oban","duration":1066,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:02:00.853 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:02:15.402 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:02:45.404 [info] {"source":"oban","duration":1307,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:03:00.854 [info] {"source":"oban","duration":242,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:03:15.406 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:03:45.408 [info] {"source":"oban","duration":1627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:04:00.855 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:04:15.410 [info] {"source":"oban","duration":1325,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:04:45.412 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:05:00.856 [info] {"source":"oban","duration":473,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:05:15.414 [info] {"source":"oban","duration":1622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:05:45.417 [info] {"source":"oban","duration":1500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:06:00.857 [info] {"source":"oban","duration":268,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:06:15.419 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:06:45.421 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:07:00.858 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:07:15.423 [info] {"source":"oban","duration":1316,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:07:45.425 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:08:00.859 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:08:15.427 [info] {"source":"oban","duration":1060,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:08:45.429 [info] {"source":"oban","duration":1159,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:09:00.860 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:09:15.431 [info] {"source":"oban","duration":1145,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:09:45.433 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:10:00.861 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:10:15.435 [info] {"source":"oban","duration":1025,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:10:45.437 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:11:00.862 [info] {"source":"oban","duration":348,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:11:15.439 [info] {"source":"oban","duration":1578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:11:45.442 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:12:00.863 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:12:15.444 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:12:45.446 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:13:00.864 [info] {"source":"oban","duration":235,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:13:15.448 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:13:45.450 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:14:00.865 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:14:15.452 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:14:45.454 [info] {"source":"oban","duration":1003,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:15:00.866 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:15:15.456 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:15:45.458 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:16:00.867 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:16:15.460 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:16:45.462 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:17:00.868 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:17:15.464 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:17:45.466 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:18:00.869 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:18:15.468 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:18:45.470 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:19:00.870 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:19:15.472 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:19:45.474 [info] {"source":"oban","duration":1343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:20:00.871 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:20:15.476 [info] {"source":"oban","duration":1700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:20:45.478 [info] {"source":"oban","duration":1323,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:21:00.872 [info] {"source":"oban","duration":203,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:21:15.480 [info] {"source":"oban","duration":1602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:21:45.482 [info] {"source":"oban","duration":1319,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:22:00.873 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:22:15.484 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:22:45.486 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:23:00.874 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:23:15.488 [info] {"source":"oban","duration":1136,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:23:45.490 [info] {"source":"oban","duration":1170,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:24:00.875 [info] {"source":"oban","duration":420,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:24:15.492 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:24:45.494 [info] {"source":"oban","duration":1191,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:25:00.876 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:25:15.496 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:25:45.498 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:26:00.877 [info] {"source":"oban","duration":274,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:26:15.500 [info] {"source":"oban","duration":1080,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:26:45.502 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:27:00.878 [info] {"source":"oban","duration":373,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:27:15.504 [info] {"source":"oban","duration":1303,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:27:45.506 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:28:00.879 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:28:15.508 [info] {"source":"oban","duration":1565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:28:45.510 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:29:00.880 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:29:15.512 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:29:45.514 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:30:00.881 [info] {"source":"oban","duration":401,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:30:15.516 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:30:45.518 [info] {"source":"oban","duration":1209,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:31:00.882 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:31:15.520 [info] {"source":"oban","duration":1171,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:31:45.522 [info] {"source":"oban","duration":1228,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:32:00.883 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:32:15.524 [info] {"source":"oban","duration":1260,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:32:45.526 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:33:00.884 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:33:15.528 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:33:45.530 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:34:00.885 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:34:15.532 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:34:45.534 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:35:00.886 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:35:15.536 [info] {"source":"oban","duration":1683,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:35:45.538 [info] {"source":"oban","duration":1606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:36:00.887 [info] {"source":"oban","duration":390,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:36:15.540 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:36:45.542 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:37:00.888 [info] {"source":"oban","duration":184,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:37:15.544 [info] {"source":"oban","duration":1361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:37:45.546 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:38:00.889 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:38:15.548 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:38:45.550 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:39:00.890 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:39:15.552 [info] {"source":"oban","duration":1207,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:39:45.554 [info] {"source":"oban","duration":1379,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:40:00.891 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:40:15.556 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:40:45.558 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:41:00.892 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:41:15.560 [info] {"source":"oban","duration":1136,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:41:45.562 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:42:00.893 [info] {"source":"oban","duration":260,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:42:15.564 [info] {"source":"oban","duration":1509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:42:45.566 [info] {"source":"oban","duration":1739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:43:00.894 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:43:15.569 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:43:45.571 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:44:00.895 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:44:15.573 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:44:45.575 [info] {"source":"oban","duration":1225,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:45:00.896 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:45:15.577 [info] {"source":"oban","duration":1080,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:45:45.579 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:46:00.897 [info] {"source":"oban","duration":389,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:46:15.581 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:46:20.289 [info] GET / 21:46:20.290 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 21:46:20.291 [debug] QUERY OK source="settings" db=0.2ms idle=1176.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 [] 21:46:20.313 [debug] QUERY OK source="media_profiles" db=22.1ms queue=0.2ms idle=1177.3ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 21:46:20.338 [debug] QUERY OK source="sources" db=24.5ms queue=0.1ms idle=1199.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 21:46:20.368 [debug] QUERY OK source="media_items" db=29.2ms queue=0.2ms idle=229.4ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 21:46:20.610 [debug] QUERY OK source="media_items" db=240.9ms queue=0.2ms idle=252.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 21:46:20.611 [debug] QUERY OK source="settings" db=0.4ms idle=319.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 [] 21:46:20.611 [debug] QUERY OK source="settings" db=0.3ms idle=297.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 [] 21:46:20.613 [debug] QUERY OK source="settings" db=0.3ms idle=273.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 [] 21:46:20.615 [debug] QUERY OK source="tasks" db=0.6ms idle=246.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"] 21:46:20.618 [debug] QUERY OK source="media_items" db=0.5ms queue=0.3ms 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 (NOT (m0."media_filepath" IS NULL)) [] 21:46:20.620 [debug] QUERY OK source="media_items" db=0.6ms queue=0.3ms idle=7.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] 21:46:20.621 [debug] QUERY OK source="sources" db=0.4ms 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", s0."id" FROM "sources" AS s0 WHERE (s0."id" IN (?,?)) [4, 5] 21:46:20.631 [debug] QUERY OK source="media_items" db=5.8ms queue=0.4ms idle=12.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"))) [] 21:46:20.634 [debug] QUERY OK source="media_items" db=1.3ms queue=0.7ms idle=16.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] 21:46:20.635 [debug] QUERY OK source="sources" db=0.2ms idle=16.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] 21:46:20.640 [info] Sent 200 in 350ms 21:46:45.583 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:47:00.898 [info] {"source":"oban","duration":300,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:47:15.585 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:47:45.587 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:48:00.899 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:48:15.589 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:48:45.591 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:49:00.900 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:49:15.593 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:49:45.595 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:50:00.901 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:50:15.597 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:50:45.599 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:51:00.902 [info] {"source":"oban","duration":234,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:51:15.601 [info] {"source":"oban","duration":1072,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:51:45.603 [info] {"source":"oban","duration":1401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:52:00.903 [info] {"source":"oban","duration":228,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:52:15.605 [info] {"source":"oban","duration":1813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:52:45.608 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:53:00.904 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:53:15.610 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:53:45.612 [info] {"source":"oban","duration":1146,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:54:00.906 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:54:15.614 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:54:45.616 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:55:00.907 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:55:15.618 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:55:45.620 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:56:00.908 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:56:15.622 [info] {"source":"oban","duration":1504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:56:45.624 [info] {"source":"oban","duration":1191,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:57:00.909 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:57:15.626 [info] {"source":"oban","duration":1132,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:57:45.628 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:58:00.910 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:58:15.630 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:58:45.632 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:59:00.911 [info] {"source":"oban","duration":393,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 21:59:15.634 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:59:45.636 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:00:00.912 [info] {"source":"oban","duration":470,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:00:15.638 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:00:45.640 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:01:00.913 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:01:15.642 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:01:45.644 [info] {"source":"oban","duration":1706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:02:00.914 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:02:15.647 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:02:45.649 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:03:00.915 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:03:15.651 [info] {"source":"oban","duration":1624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:03:45.653 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:04:00.916 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:04:15.655 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:04:45.657 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:05:00.917 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:05:15.659 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:05:45.661 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:06:00.918 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:06:15.662 [info] {"source":"oban","duration":907,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:06:45.665 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:07:00.919 [info] {"source":"oban","duration":384,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:07:15.667 [info] {"source":"oban","duration":1309,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:07:45.669 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:08:00.920 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:08:15.671 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:08:45.673 [info] {"source":"oban","duration":1302,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:09:00.921 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:09:15.675 [info] {"source":"oban","duration":1272,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:09:45.677 [info] {"source":"oban","duration":1229,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:10:00.922 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:10:15.679 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:10:45.681 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:11:00.923 [info] {"source":"oban","duration":284,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:11:15.683 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:11:45.685 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:12:00.924 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:12:15.687 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:12:45.689 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:13:00.925 [info] {"source":"oban","duration":449,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:13:15.691 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:13:45.693 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:14:00.926 [info] {"source":"oban","duration":385,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:14:15.695 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:14:45.697 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:15:00.927 [info] {"source":"oban","duration":362,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:15:15.699 [info] {"source":"oban","duration":1554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:15:45.701 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:16:00.928 [info] {"source":"oban","duration":236,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:16:15.703 [info] {"source":"oban","duration":1682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:16:45.705 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:17:00.929 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:17:15.707 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:17:45.709 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:18:00.930 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:18:15.711 [info] {"source":"oban","duration":1671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:18:45.714 [info] {"source":"oban","duration":1184,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:19:00.931 [info] {"source":"oban","duration":298,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:19:15.716 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:19:45.718 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:20:00.932 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:20:15.720 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:20:45.722 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:21:00.933 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:21:15.724 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:21:45.726 [info] {"source":"oban","duration":1024,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:22:00.934 [info] {"source":"oban","duration":391,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:22:15.728 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:22:45.730 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:23:00.935 [info] {"source":"oban","duration":249,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:23:15.732 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:23:45.734 [info] {"source":"oban","duration":1266,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:24:00.936 [info] {"source":"oban","duration":226,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:24:15.736 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:24:45.738 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:25:00.937 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:25:15.740 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:25:45.742 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:26:00.938 [info] {"source":"oban","duration":298,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:26:15.744 [info] {"source":"oban","duration":1527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:26:45.746 [info] {"source":"oban","duration":1616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:27:00.939 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:27:15.748 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:27:45.750 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:00.940 [info] {"source":"oban","duration":299,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:28:15.752 [info] {"source":"oban","duration":1597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:45.754 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:29:00.941 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:29:15.756 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:29:45.758 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:30:00.942 [info] {"source":"oban","duration":335,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:30:15.760 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:30:45.762 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:31:00.943 [info] {"source":"oban","duration":211,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:31:15.764 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:31:45.766 [info] {"source":"oban","duration":1338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:32:00.944 [info] {"source":"oban","duration":403,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:32:15.768 [info] {"source":"oban","duration":1053,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:32:45.770 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:33:00.945 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:33:15.772 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:33:45.774 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:34:00.946 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:34:15.776 [info] {"source":"oban","duration":1589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:34:45.778 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:35:00.947 [info] {"source":"oban","duration":276,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:35:15.780 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:35:45.782 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:36:00.948 [info] {"source":"oban","duration":317,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:36:15.784 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:36:45.786 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:00.949 [info] {"source":"oban","duration":368,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:37:15.788 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:45.790 [info] {"source":"oban","duration":1238,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:00.950 [info] {"source":"oban","duration":280,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:38:15.791 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:45.793 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:00.951 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:39:15.795 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:45.797 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:00.952 [info] {"source":"oban","duration":294,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:40:15.799 [info] {"source":"oban","duration":1249,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:45.801 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:00.953 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:41:15.803 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:45.805 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:00.954 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:42:15.807 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:45.809 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:00.955 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:43:15.811 [info] {"source":"oban","duration":1025,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:45.813 [info] {"source":"oban","duration":1157,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:00.956 [info] {"source":"oban","duration":337,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:44:15.815 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:45.817 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:00.957 [info] {"source":"oban","duration":407,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:45:15.819 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:45.821 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:00.958 [info] {"source":"oban","duration":248,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:46:15.823 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:45.825 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:00.959 [info] {"source":"oban","duration":251,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:47:15.827 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:45.829 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:00.960 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:48:15.831 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:45.833 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:00.961 [info] {"source":"oban","duration":357,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:49:15.835 [info] {"source":"oban","duration":1567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:45.837 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:00.962 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:50:15.839 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:45.841 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:00.963 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:51:15.843 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:45.845 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:00.964 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:52:15.847 [info] {"source":"oban","duration":1171,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:45.849 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:00.965 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:53:15.851 [info] {"source":"oban","duration":1065,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:45.853 [info] {"source":"oban","duration":1183,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:00.966 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:54:15.855 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:17.878 [info] {"args":{"id":5},"id":2930,"meta":{},"system_time":1769752457878304196,"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"]} 22:54:17.881 [debug] QUERY OK source="sources" db=2.4ms queue=0.1ms idle=764.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" = ?) [5] 22:54:17.882 [debug] QUERY OK source="settings" db=0.4ms idle=767.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 [] 22:54:17.885 [debug] QUERY OK source="media_items" db=2.9ms idle=13.5ms 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")))) [5] 22:54:17.886 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=7.8ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [5] 22:54:17.887 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=7.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] 22:54:17.888 [debug] QUERY OK source="settings" db=0.2ms idle=6.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 [] 22:54:17.888 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:54:17.889 [debug] Running yt-dlp command for action: get_media_attributes_for_collection 22:54:17.890 [debug] Current batch of media processed. Will check again in 1000ms 22:54:17.890 [debug] QUERY OK source="settings" db=0.3ms queue=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 [] 22:54:17.890 [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 [] 22:54:17.891 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:54:17.891 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --remux-video mp4 --format-sort res:2160,+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/2c/68/2c6843d272502c06792e34fa696a6f3d328bd814be295575b461fc46111870f3.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:54:18.891 [debug] Current batch of media processed. Will check again in 1000ms 22:54:19.892 [debug] Current batch of media processed. Will check again in 1000ms 22:54:20.893 [debug] Current batch of media processed. Will check again in 1000ms 22:54:21.894 [debug] Current batch of media processed. Will check again in 1000ms 22:54:22.895 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #NY7zO1djeQc/youtube video #NY7zO1djeQc [NY7zO1djeQc].NA", "id" => "NY7zO1djeQc", "original_url" => "https://www.youtube.com/watch?v=NY7zO1djeQc", "playlist_index" => 1, "title" => "youtube video #NY7zO1djeQc"} 22:54:22.896 [debug] QUERY OK source="sources" db=0.4ms idle=1781.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 (?)) [5] 22:54:22.896 [debug] Current batch of media processed. Will check again in 1000ms 22:54:23.897 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #2lRrvkkZYdE/youtube video #2lRrvkkZYdE [2lRrvkkZYdE].NA", "id" => "2lRrvkkZYdE", "original_url" => "https://www.youtube.com/watch?v=2lRrvkkZYdE", "playlist_index" => 2, "title" => "youtube video #2lRrvkkZYdE"} 22:54:23.898 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1001.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 (?)) [5] 22:54:23.898 [debug] Current batch of media processed. Will check again in 1000ms 22:54:24.899 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Umbrella And Coconut Trees | S02E71\n00:03:33 | Trapped | S02E64\n00:07:16 | The Housing Plant Project | S02E26\n00:10:52 | Pollution | S02E60\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#umbrella #coconut #ladybug #winter #trapped #escape #rescue #insects #Minuscule #nature #ladybugs #animatedseries", "duration" => 917, "filename" => "/downloads/Miniscule Season 2/2026-01-24 A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation/A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation [lLIvNqaXysQ].mp4", "id" => "lLIvNqaXysQ", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=lLIvNqaXysQ", "playlist_index" => 3, "timestamp" => 1769281260, "title" => "A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation", "upload_date" => "20260124"} 22:54:24.900 [debug] QUERY OK source="sources" db=0.3ms idle=1015.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" IN (?)) [5] 22:54:24.900 [debug] QUERY OK source="sources" db=0.3ms idle=1009.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" = ?) [5] 22:54:24.902 [debug] QUERY OK source="media_items" db=0.9ms queue=0.3ms idle=1003.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-24 19:01:00Z], 5] 22:54:24.955 [debug] QUERY OK source="media_items" db=51.8ms idle=16.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Umbrella And Coconut Trees | S02E71\n00:03:33 | Trapped | S02E64\n00:07:16 | The Housing Plant Project | S02E26\n00:10:52 | Pollution | S02E60\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#umbrella #coconut #ladybug #winter #trapped #escape #rescue #insects #Minuscule #nature #ladybugs #animatedseries", "A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation", "bb5f69b9-93fe-479d-ae31-dec2050c28a7", "https://www.youtube.com/watch?v=lLIvNqaXysQ", "lLIvNqaXysQ", 917, false, 3, "/downloads/Miniscule Season 2/2026-01-24 A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation/A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation [lLIvNqaXysQ].mp4", false, false, false, 5, [], 0, ~U[2026-01-24 19:01:00Z], ~U[2026-01-30 05:54:24Z], ~U[2026-01-30 05:54:24Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Umbrella And Coconut Trees | S02E71\n00:03:33 | Trapped | S02E64\n00:07:16 | The Housing Plant Project | S02E26\n00:10:52 | Pollution | S02E60\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#umbrella #coconut #ladybug #winter #trapped #escape #rescue #insects #Minuscule #nature #ladybugs #animatedseries", "A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation", "https://www.youtube.com/watch?v=lLIvNqaXysQ", "lLIvNqaXysQ", 917, false, "/downloads/Miniscule Season 2/2026-01-24 A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation/A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation [lLIvNqaXysQ].mp4", false, 5, ~U[2026-01-24 19:01:00Z]] 22:54:24.956 [debug] QUERY OK source="sources" db=0.3ms idle=62.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" = ?) [5] 22:54:24.957 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=56.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] 22:54:24.958 [debug] QUERY OK source="media_items" db=0.6ms idle=56.4ms 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 [106309] 22:54:24.958 [info] Kicking off download for media item #106309 (lLIvNqaXysQ) 22:54:24.961 [debug] QUERY OK source="tasks" db=0.4ms queue=0.1ms idle=4.6ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2979, 106309, ~U[2026-01-30 05:54:24Z], ~U[2026-01-30 05:54:24Z]] 22:54:24.961 [debug] Current batch of media processed. Will check again in 1000ms 22:54:24.968 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769752464968348934,"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"]} 22:54:24.969 [debug] QUERY OK source="media_items" db=0.4ms 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 WHERE (m0."id" = ?) [106309] 22:54:24.969 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:54:24.970 [debug] QUERY OK source="sources" db=0.3ms queue=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" = ?) [5] 22:54:24.971 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=10.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] 22:54:24.972 [debug] QUERY OK source="media_items" db=0.4ms idle=10.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 [106309] 22:54:24.973 [debug] QUERY OK source="media_metadata" db=0.1ms idle=4.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" = ?) [106309] 22:54:24.974 [debug] QUERY OK source="media_profiles" db=0.3ms 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] 22:54:24.974 [debug] QUERY OK source="settings" db=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 [] 22:54:24.975 [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 [] 22:54:24.975 [debug] Running yt-dlp command for action: get_downloadable_status 22:54:24.976 [debug] QUERY OK source="settings" db=0.1ms idle=4.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 [] 22:54:24.977 [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 [] 22:54:24.977 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:54:24.978 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/a3/6c/a36c146f3e093ba548e9e6caedec2e21beedab548b941fa83a3bdadc0335b2a0.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:54:25.962 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Fly Swatter | S03E13\n00:01:29 | Mosquito Net | S03E14\n00:02:58 | A Candlelight Christmas | S03E20\n00:04:27 | The Magic Fly | S03E15\n00:05:56 | Like A Cannon Ball | S03E03\n00:07:25 | Glue | S03E06\n00:09:02 | Mad fly | S03E08\n00:10:31 | He Who Laughs Last, laughs Longest | S03E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#mosquito #sting #swatter #crafty #Mosquito #Net #Sleep #Bugs #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 739, "filename" => "/downloads/Miniscule Season 2/2026-01-22 Fly Swatter | Minuscule 🍃 15' Compilation/Fly Swatter | Minuscule 🍃 15' Compilation [9QYqtNsUz_k].mp4", "id" => "9QYqtNsUz_k", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=9QYqtNsUz_k", "playlist_index" => 4, "timestamp" => 1769079615, "title" => "Fly Swatter | Minuscule 🍃 15' Compilation", "upload_date" => "20260122"} 22:54:25.963 [debug] QUERY OK source="sources" db=0.3ms idle=986.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 (?)) [5] 22:54:25.964 [debug] QUERY OK source="sources" db=0.3ms idle=986.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" = ?) [5] 22:54:25.965 [debug] QUERY OK source="media_items" db=1.0ms idle=986.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-22 11:00:15Z], 5] 22:54:25.979 [debug] QUERY OK source="media_items" db=13.1ms idle=77.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Fly Swatter | S03E13\n00:01:29 | Mosquito Net | S03E14\n00:02:58 | A Candlelight Christmas | S03E20\n00:04:27 | The Magic Fly | S03E15\n00:05:56 | Like A Cannon Ball | S03E03\n00:07:25 | Glue | S03E06\n00:09:02 | Mad fly | S03E08\n00:10:31 | He Who Laughs Last, laughs Longest | S03E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#mosquito #sting #swatter #crafty #Mosquito #Net #Sleep #Bugs #Minuscule #nature #insects #ladybugs #animatedseries", "Fly Swatter | Minuscule 🍃 15' Compilation", "5a0ca4eb-6610-4328-a8ef-b825252ae9d0", "https://www.youtube.com/watch?v=9QYqtNsUz_k", "9QYqtNsUz_k", 739, false, 4, "/downloads/Miniscule Season 2/2026-01-22 Fly Swatter | Minuscule 🍃 15' Compilation/Fly Swatter | Minuscule 🍃 15' Compilation [9QYqtNsUz_k].mp4", false, false, false, 5, [], 1, ~U[2026-01-22 11:00:15Z], ~U[2026-01-30 05:54:25Z], ~U[2026-01-30 05:54:25Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Fly Swatter | S03E13\n00:01:29 | Mosquito Net | S03E14\n00:02:58 | A Candlelight Christmas | S03E20\n00:04:27 | The Magic Fly | S03E15\n00:05:56 | Like A Cannon Ball | S03E03\n00:07:25 | Glue | S03E06\n00:09:02 | Mad fly | S03E08\n00:10:31 | He Who Laughs Last, laughs Longest | S03E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#mosquito #sting #swatter #crafty #Mosquito #Net #Sleep #Bugs #Minuscule #nature #insects #ladybugs #animatedseries", "Fly Swatter | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=9QYqtNsUz_k", "9QYqtNsUz_k", 739, false, "/downloads/Miniscule Season 2/2026-01-22 Fly Swatter | Minuscule 🍃 15' Compilation/Fly Swatter | Minuscule 🍃 15' Compilation [9QYqtNsUz_k].mp4", false, 5, ~U[2026-01-22 11:00:15Z]] 22:54:25.980 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=85.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" = ?) [5] 22:54:25.981 [debug] QUERY OK source="media_profiles" db=0.3ms idle=17.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] 22:54:25.982 [debug] QUERY OK source="media_items" db=0.6ms idle=17.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 [105741] 22:54:25.982 [debug] Current batch of media processed. Will check again in 1000ms 22:54:26.983 [debug] Current batch of media processed. Will check again in 1000ms 22:54:27.984 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 0.56, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nA fly and a spider are watching sports on television. They disagree as to which channel they want to watch. It’s duel time for the remote control. Who is going to let go: the spider, the fly… or the TV?\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nBzzaping | S02E03 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Bzzaping #fly #spider #television #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 45, "filename" => "/downloads/Miniscule Season 2/2026-01-16 Bzzaping | Minuscule/Bzzaping | Minuscule [hWfLGSiZZG8].mp4", "id" => "hWfLGSiZZG8", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=hWfLGSiZZG8", "playlist_index" => 5, "timestamp" => 1768561315, "title" => "Bzzaping | Minuscule", "upload_date" => "20260116"} 22:54:27.985 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=870.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" IN (?)) [5] 22:54:27.986 [debug] QUERY OK source="sources" db=0.4ms idle=871.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" = ?) [5] 22:54:27.987 [debug] QUERY OK source="media_items" db=1.0ms idle=872.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-16 11:01:55Z], 5] 22:54:27.991 [debug] QUERY OK source="media_items" db=2.0ms idle=95.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nA fly and a spider are watching sports on television. They disagree as to which channel they want to watch. It’s duel time for the remote control. Who is going to let go: the spider, the fly… or the TV?\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nBzzaping | S02E03 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Bzzaping #fly #spider #television #Minuscule #nature #insects #ladybugs #animatedseries", "Bzzaping | Minuscule", "2999dacc-6b5e-4454-b840-ccd4f875302c", "https://www.youtube.com/watch?v=hWfLGSiZZG8", "hWfLGSiZZG8", 45, false, 5, "/downloads/Miniscule Season 2/2026-01-16 Bzzaping | Minuscule/Bzzaping | Minuscule [hWfLGSiZZG8].mp4", false, false, true, 5, [], 1, ~U[2026-01-16 11:01:55Z], ~U[2026-01-30 05:54:27Z], ~U[2026-01-30 05:54:27Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nA fly and a spider are watching sports on television. They disagree as to which channel they want to watch. It’s duel time for the remote control. Who is going to let go: the spider, the fly… or the TV?\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nBzzaping | S02E03 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Bzzaping #fly #spider #television #Minuscule #nature #insects #ladybugs #animatedseries", "Bzzaping | Minuscule", "https://www.youtube.com/watch?v=hWfLGSiZZG8", "hWfLGSiZZG8", 45, false, "/downloads/Miniscule Season 2/2026-01-16 Bzzaping | Minuscule/Bzzaping | Minuscule [hWfLGSiZZG8].mp4", true, 5, ~U[2026-01-16 11:01:55Z]] 22:54:27.991 [debug] QUERY OK source="sources" db=0.4ms idle=91.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" = ?) [5] 22:54:27.992 [debug] QUERY OK source="media_profiles" db=0.3ms idle=6.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] 22:54:27.993 [debug] QUERY OK source="media_items" db=0.5ms idle=6.5ms 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 [105742] 22:54:27.993 [debug] Current batch of media processed. Will check again in 1000ms 22:54:28.859 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/a3/6c/a36c146f3e093ba548e9e6caedec2e21beedab548b941fa83a3bdadc0335b2a0.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 22:54:28.859 [debug] Running yt-dlp command for action: download 22:54:28.860 [debug] QUERY OK source="settings" db=0.4ms idle=872.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 [] 22:54:28.861 [debug] QUERY OK source="settings" db=0.2ms idle=870.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 [] 22:54:28.861 [debug] QUERY OK source="settings" db=0.2ms idle=869.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 [] 22:54:28.862 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/89/fd/89fd4fd3b0ffc5fded7b900b6dbc1bea39cf3adb7411ef652338166a20fd5a3a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:54:28.995 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 0.56, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nA spider is trying out a miniature red toy car when a bus full of flies hits it. The flies are clearly looking for trouble. A ladybug comes to save the day, happy to give a lesson to these troublemakers. She takes control of the car and chases the flies with the poor little spider still hanging on! It’s going to be a rough ride!\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nSpider Driver | S02E36 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 21, "filename" => "/downloads/Miniscule Season 2/2026-01-23 Spider Driver | Minuscule/Spider Driver | Minuscule [wK4Zj-bg9Vk].mp4", "id" => "wK4Zj-bg9Vk", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=wK4Zj-bg9Vk", "playlist_index" => 6, "timestamp" => 1769166108, "title" => "Spider Driver | Minuscule", "upload_date" => "20260123"} 22:54:28.996 [debug] QUERY OK source="sources" db=0.3ms idle=135.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" IN (?)) [5] 22:54:28.997 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=135.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" = ?) [5] 22:54:28.998 [debug] QUERY OK source="media_items" db=0.8ms idle=135.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-23 11:01:48Z], 5] 22:54:30.302 [debug] QUERY OK source="media_items" db=1303.1ms idle=103.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nA spider is trying out a miniature red toy car when a bus full of flies hits it. The flies are clearly looking for trouble. A ladybug comes to save the day, happy to give a lesson to these troublemakers. She takes control of the car and chases the flies with the poor little spider still hanging on! It’s going to be a rough ride!\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nSpider Driver | S02E36 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver | Minuscule", "3fe0ff5f-699b-4717-9adf-7a0c52b1cfb2", "https://www.youtube.com/watch?v=wK4Zj-bg9Vk", "wK4Zj-bg9Vk", 21, false, 6, "/downloads/Miniscule Season 2/2026-01-23 Spider Driver | Minuscule/Spider Driver | Minuscule [wK4Zj-bg9Vk].mp4", false, false, true, 5, [], 0, ~U[2026-01-23 11:01:48Z], ~U[2026-01-30 05:54:28Z], ~U[2026-01-30 05:54:28Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nA spider is trying out a miniature red toy car when a bus full of flies hits it. The flies are clearly looking for trouble. A ladybug comes to save the day, happy to give a lesson to these troublemakers. She takes control of the car and chases the flies with the poor little spider still hanging on! It’s going to be a rough ride!\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nSpider Driver | S02E36 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver | Minuscule", "https://www.youtube.com/watch?v=wK4Zj-bg9Vk", "wK4Zj-bg9Vk", 21, false, "/downloads/Miniscule Season 2/2026-01-23 Spider Driver | Minuscule/Spider Driver | Minuscule [wK4Zj-bg9Vk].mp4", true, 5, ~U[2026-01-23 11:01:48Z]] 22:54:30.303 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=0.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" = ?) [5] 22:54:30.303 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1.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] 22:54:30.304 [debug] QUERY OK source="media_items" db=0.6ms idle=2.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 [106312] 22:54:30.304 [info] Kicking off download for media item #106312 (wK4Zj-bg9Vk) 22:54:30.385 [debug] QUERY OK source="tasks" db=0.9ms idle=80.4ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2980, 106312, ~U[2026-01-30 05:54:30Z], ~U[2026-01-30 05:54:30Z]] 22:54:30.385 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sleep Walker | S02E68\n00:03:24 | The Long Road | S02E34\n00:07:07 | Thirsty | S02E29\n00:10:39 | Hop On! | S02E25\n00:14:17 | Zzz zzz | S02E44\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Dream #Love #Snail #Sleep #snail #water #journey #hazard #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1106, "filename" => "/downloads/Miniscule Season 2/2026-01-17 Sleep Walker | Minuscule | 25' Compilation/Sleep Walker | Minuscule | 25' Compilation [PB4H2_VhhIg].mp4", "id" => "PB4H2_VhhIg", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=PB4H2_VhhIg", "playlist_index" => 7, "timestamp" => 1768676455, "title" => "Sleep Walker | Minuscule | 25' Compilation", "upload_date" => "20260117"} 22:54:30.386 [debug] QUERY OK source="sources" db=0.2ms 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" FROM "sources" AS s0 WHERE (s0."id" IN (?)) [5] 22:54:30.386 [debug] QUERY OK source="sources" db=0.2ms idle=80.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" = ?) [5] 22:54:30.387 [debug] QUERY OK source="media_items" db=0.8ms idle=2.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-17 19:00:55Z], 5] 22:54:30.403 [info] {"args":{"id":106312},"id":2980,"meta":{},"system_time":1769752470403725010,"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"]} 22:54:30.404 [debug] QUERY OK source="media_items" db=0.4ms idle=18.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" = ?) [106312] 22:54:30.405 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:54:30.405 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=18.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" = ?) [5] 22:54:30.406 [debug] QUERY OK source="media_profiles" db=0.4ms idle=18.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] 22:54:30.409 [debug] QUERY OK source="media_items" db=0.7ms idle=5.4ms 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 [106312] 22:54:30.411 [debug] QUERY OK source="media_metadata" db=0.2ms 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" = ?) [106312] 22:54:30.411 [debug] QUERY OK source="media_items" db=23.1ms idle=3.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sleep Walker | S02E68\n00:03:24 | The Long Road | S02E34\n00:07:07 | Thirsty | S02E29\n00:10:39 | Hop On! | S02E25\n00:14:17 | Zzz zzz | S02E44\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Dream #Love #Snail #Sleep #snail #water #journey #hazard #Minuscule #nature #insects #ladybugs #animatedseries", "Sleep Walker | Minuscule | 25' Compilation", "2267ecce-5e80-45bd-a7fb-032e78a9f461", "https://www.youtube.com/watch?v=PB4H2_VhhIg", "PB4H2_VhhIg", 1106, false, 7, "/downloads/Miniscule Season 2/2026-01-17 Sleep Walker | Minuscule | 25' Compilation/Sleep Walker | Minuscule | 25' Compilation [PB4H2_VhhIg].mp4", false, false, false, 5, [], 1, ~U[2026-01-17 19:00:55Z], ~U[2026-01-30 05:54:30Z], ~U[2026-01-30 05:54:30Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sleep Walker | S02E68\n00:03:24 | The Long Road | S02E34\n00:07:07 | Thirsty | S02E29\n00:10:39 | Hop On! | S02E25\n00:14:17 | Zzz zzz | S02E44\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Dream #Love #Snail #Sleep #snail #water #journey #hazard #Minuscule #nature #insects #ladybugs #animatedseries", "Sleep Walker | Minuscule | 25' Compilation", "https://www.youtube.com/watch?v=PB4H2_VhhIg", "PB4H2_VhhIg", 1106, false, "/downloads/Miniscule Season 2/2026-01-17 Sleep Walker | Minuscule | 25' Compilation/Sleep Walker | Minuscule | 25' Compilation [PB4H2_VhhIg].mp4", false, 5, ~U[2026-01-17 19:00:55Z]] 22:54:30.412 [debug] QUERY OK source="media_profiles" db=0.5ms idle=6.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] 22:54:30.413 [debug] QUERY OK source="sources" db=0.9ms 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" = ?) [5] 22:54:30.414 [debug] QUERY OK source="settings" db=0.6ms queue=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 [] 22:54:30.414 [debug] QUERY OK source="media_profiles" db=0.7ms queue=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] 22:54:30.414 [debug] QUERY OK source="settings" db=0.3ms 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 [] 22:54:30.415 [debug] QUERY OK source="media_items" db=0.5ms idle=2.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 [105743] 22:54:30.415 [debug] Running yt-dlp command for action: get_downloadable_status 22:54:30.415 [debug] Current batch of media processed. Will check again in 1000ms 22:54:30.416 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:54:30.417 [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 [] 22:54:30.417 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:54:30.417 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=wK4Zj-bg9Vk --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/fc/a7/fca7d10cbd6b051eae69ea57dccf7f9a56314ae45f3bec41a022ac0dd04593a4.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:54:31.416 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sausage Predator | S02E06\n00:03:45 | Away all boarders! | S02E41\n00:07:28 | The Hat Of The Medusa | S02E17\n00:11:13 | The Grocery Store Racketeer | S02E50\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Sausage #Predator #ants #barbecue #battle #cottage #pistachios #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 927, "filename" => "/downloads/Miniscule Season 2/2026-01-13 Sausage Predator | Minuscule | 20' Compilation/Sausage Predator | Minuscule | 20' Compilation [UYDAPXE67aU].mp4", "id" => "UYDAPXE67aU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=UYDAPXE67aU", "playlist_index" => 8, "timestamp" => 1768287664, "title" => "Sausage Predator | Minuscule | 20' Compilation", "upload_date" => "20260113"} 22:54:31.417 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1001.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" IN (?)) [5] 22:54:31.417 [debug] QUERY OK source="sources" db=0.3ms idle=1000.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" = ?) [5] 22:54:31.419 [debug] QUERY OK source="media_items" db=1.0ms idle=1001.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-13 07:01:04Z], 5] 22:54:31.437 [debug] QUERY OK source="media_items" db=17.0ms idle=1002.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sausage Predator | S02E06\n00:03:45 | Away all boarders! | S02E41\n00:07:28 | The Hat Of The Medusa | S02E17\n00:11:13 | The Grocery Store Racketeer | S02E50\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Sausage #Predator #ants #barbecue #battle #cottage #pistachios #Minuscule #nature #insects #ladybugs #animatedseries", "Sausage Predator | Minuscule | 20' Compilation", "6a5cd028-e197-4c0b-9ddf-0a22612ef1df", "https://www.youtube.com/watch?v=UYDAPXE67aU", "UYDAPXE67aU", 927, false, 8, "/downloads/Miniscule Season 2/2026-01-13 Sausage Predator | Minuscule | 20' Compilation/Sausage Predator | Minuscule | 20' Compilation [UYDAPXE67aU].mp4", false, false, false, 5, [], 1, ~U[2026-01-13 07:01:04Z], ~U[2026-01-30 05:54:31Z], ~U[2026-01-30 05:54:31Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sausage Predator | S02E06\n00:03:45 | Away all boarders! | S02E41\n00:07:28 | The Hat Of The Medusa | S02E17\n00:11:13 | The Grocery Store Racketeer | S02E50\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Sausage #Predator #ants #barbecue #battle #cottage #pistachios #Minuscule #nature #insects #ladybugs #animatedseries", "Sausage Predator | Minuscule | 20' Compilation", "https://www.youtube.com/watch?v=UYDAPXE67aU", "UYDAPXE67aU", 927, false, "/downloads/Miniscule Season 2/2026-01-13 Sausage Predator | Minuscule | 20' Compilation/Sausage Predator | Minuscule | 20' Compilation [UYDAPXE67aU].mp4", false, 5, ~U[2026-01-13 07:01:04Z]] 22:54:31.437 [debug] QUERY OK source="sources" db=0.3ms idle=132.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" = ?) [5] 22:54:31.438 [debug] QUERY OK source="media_profiles" db=0.3ms idle=20.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] 22:54:31.439 [debug] QUERY OK source="media_items" db=0.5ms idle=20.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 [105194] 22:54:31.439 [debug] Current batch of media processed. Will check again in 1000ms 22:54:32.440 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 0.56, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nJeering flies are having fun in a miniature bus. That’s before a spider, driving a little car, decides to go after them. A real race starts between both toys.\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nMad fly | S03E08 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 14, "filename" => "/downloads/Miniscule Season 2/2026-01-09 Mad fly | Minuscule/Mad fly | Minuscule [sB-rORC1UMI].mp4", "id" => "sB-rORC1UMI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=sB-rORC1UMI", "playlist_index" => 9, "timestamp" => 1767956516, "title" => "Mad fly | Minuscule", "upload_date" => "20260109"} 22:54:32.441 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" IN (?)) [5] 22:54:32.442 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:54:32.443 [debug] QUERY OK source="media_items" db=1.2ms idle=1003.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-09 11:01:56Z], 5] 22:54:32.446 [debug] QUERY OK source="media_items" db=2.4ms idle=1004.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nJeering flies are having fun in a miniature bus. That’s before a spider, driving a little car, decides to go after them. A real race starts between both toys.\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nMad fly | S03E08 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly | Minuscule", "4fb0bd90-e872-4998-a937-c3e80ae809d4", "https://www.youtube.com/watch?v=sB-rORC1UMI", "sB-rORC1UMI", 14, false, 9, "/downloads/Miniscule Season 2/2026-01-09 Mad fly | Minuscule/Mad fly | Minuscule [sB-rORC1UMI].mp4", false, false, true, 5, [], 1, ~U[2026-01-09 11:01:56Z], ~U[2026-01-30 05:54:32Z], ~U[2026-01-30 05:54:32Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nJeering flies are having fun in a miniature bus. That’s before a spider, driving a little car, decides to go after them. A real race starts between both toys.\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nMad fly | S03E08 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly | Minuscule", "https://www.youtube.com/watch?v=sB-rORC1UMI", "sB-rORC1UMI", 14, false, "/downloads/Miniscule Season 2/2026-01-09 Mad fly | Minuscule/Mad fly | Minuscule [sB-rORC1UMI].mp4", true, 5, ~U[2026-01-09 11:01:56Z]] 22:54:32.447 [debug] QUERY OK source="sources" db=0.3ms idle=139.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" = ?) [5] 22:54:32.448 [debug] QUERY OK source="media_profiles" db=0.8ms idle=6.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] 22:54:32.449 [debug] QUERY OK source="media_items" db=0.5ms idle=6.5ms 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 [105195] 22:54:32.449 [debug] Current batch of media processed. Will check again in 1000ms 22:54:33.100 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/89/fd/89fd4fd3b0ffc5fded7b900b6dbc1bea39cf3adb7411ef652338166a20fd5a3a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 22:54:33.100 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 22:54:33.102 [debug] QUERY OK source="media_items" db=1.6ms queue=0.1ms idle=657.5ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n", ~U[2026-01-30 05:54:33Z], 106309] 22:54:33.104 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8134918,"event":"job:exception","queue_time":966977,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:54:33.450 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | At Full Speed | S02E27\n00:03:43 | Fly Hunting | S02E24\n00:07:17 | The Iron Monster | S02E33\n00:10:50 | Mission : BBQ | S02E09\n00:14:36 | Ants On The Train | S02E52\n00:18:07 | Zzz In The Metro | S02E53\n00:21:43 | It's a tie! | S02E67\n00:25:23 | Turbo speed | S02E58\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#race #insects #country #wacky #fly #hunting #ladybug #pursuit #Minuscule #nature #ladybugs #animatedseries", "duration" => 1766, "filename" => "/downloads/Miniscule Season 2/2026-01-10 At Full Speed | Minuscule 🍃 40' Compilation/At Full Speed | Minuscule 🍃 40' Compilation [Cl8KOpCIEVc].mp4", "id" => "Cl8KOpCIEVc", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Cl8KOpCIEVc", "playlist_index" => 10, "timestamp" => 1768071613, "title" => "At Full Speed | Minuscule 🍃 40' Compilation", "upload_date" => "20260110"} 22:54:33.451 [debug] QUERY OK source="sources" db=0.7ms queue=0.1ms idle=348.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" IN (?)) [5] 22:54:33.452 [debug] QUERY OK source="sources" db=0.4ms idle=347.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" = ?) [5] 22:54:33.454 [debug] QUERY OK source="media_items" db=1.1ms idle=341.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-10 19:00:13Z], 5] 22:54:33.457 [debug] QUERY OK source="media_items" db=2.2ms queue=0.1ms idle=146.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | At Full Speed | S02E27\n00:03:43 | Fly Hunting | S02E24\n00:07:17 | The Iron Monster | S02E33\n00:10:50 | Mission : BBQ | S02E09\n00:14:36 | Ants On The Train | S02E52\n00:18:07 | Zzz In The Metro | S02E53\n00:21:43 | It's a tie! | S02E67\n00:25:23 | Turbo speed | S02E58\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#race #insects #country #wacky #fly #hunting #ladybug #pursuit #Minuscule #nature #ladybugs #animatedseries", "At Full Speed | Minuscule 🍃 40' Compilation", "6319bdf5-af14-40b8-be69-6c3c85506d7d", "https://www.youtube.com/watch?v=Cl8KOpCIEVc", "Cl8KOpCIEVc", 1766, false, 10, "/downloads/Miniscule Season 2/2026-01-10 At Full Speed | Minuscule 🍃 40' Compilation/At Full Speed | Minuscule 🍃 40' Compilation [Cl8KOpCIEVc].mp4", false, false, false, 5, [], 1, ~U[2026-01-10 19:00:13Z], ~U[2026-01-30 05:54:33Z], ~U[2026-01-30 05:54:33Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | At Full Speed | S02E27\n00:03:43 | Fly Hunting | S02E24\n00:07:17 | The Iron Monster | S02E33\n00:10:50 | Mission : BBQ | S02E09\n00:14:36 | Ants On The Train | S02E52\n00:18:07 | Zzz In The Metro | S02E53\n00:21:43 | It's a tie! | S02E67\n00:25:23 | Turbo speed | S02E58\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#race #insects #country #wacky #fly #hunting #ladybug #pursuit #Minuscule #nature #ladybugs #animatedseries", "At Full Speed | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=Cl8KOpCIEVc", "Cl8KOpCIEVc", 1766, false, "/downloads/Miniscule Season 2/2026-01-10 At Full Speed | Minuscule 🍃 40' Compilation/At Full Speed | Minuscule 🍃 40' Compilation [Cl8KOpCIEVc].mp4", false, 5, ~U[2026-01-10 19:00:13Z]] 22:54:33.458 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=142.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" = ?) [5] 22:54:33.459 [debug] QUERY OK source="media_profiles" db=0.4ms idle=6.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] 22:54:33.460 [debug] QUERY OK source="media_items" db=0.5ms idle=7.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 [105196] 22:54:33.460 [debug] Current batch of media processed. Will check again in 1000ms 22:54:34.355 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=wK4Zj-bg9Vk --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/fc/a7/fca7d10cbd6b051eae69ea57dccf7f9a56314ae45f3bec41a022ac0dd04593a4.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] wK4Zj-bg9Vk: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 22:54:34.356 [debug] Running yt-dlp command for action: download 22:54:34.356 [debug] QUERY OK source="settings" db=0.2ms idle=898.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 [] 22:54:34.357 [debug] QUERY OK source="settings" db=0.2ms idle=897.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 [] 22:54:34.357 [debug] QUERY OK source="settings" db=0.1ms idle=897.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 [] 22:54:34.358 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=wK4Zj-bg9Vk --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/6b/5a/6b5a286a66254b06bcd7718e36fa6941674aed4f9bff9c271ac723c7b3dad94d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:54:34.461 [debug] Current batch of media processed. Will check again in 1000ms 22:54:35.462 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Chocolate Fly | S03E23\n00:01:29 | He Who Laughs Last, laughs Longest | S03E12\n00:02:58 | The Doughnut | S03E16\n00:04:30 | At Full Speed | S03E22\n00:05:51 | Like A Cannon Ball | S03E03\n00:07:20 | The Wicked Web | S03E07\n00:08:49 | Mad fly | S03E08\n00:10:18 | The Magic Fly | S03E15\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Chocolate #Fly #Spider #Dessert #laughs #spider #dangerous #swaddled #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 726, "filename" => "/downloads/Miniscule Season 2/2026-01-08 Chocolate Fly | Minuscule 🍃 15' Compilation/Chocolate Fly | Minuscule 🍃 15' Compilation [42Cr5HR1m7E].mp4", "id" => "42Cr5HR1m7E", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=42Cr5HR1m7E", "playlist_index" => 11, "timestamp" => 1767870016, "title" => "Chocolate Fly | Minuscule 🍃 15' Compilation", "upload_date" => "20260108"} 22:54:35.463 [debug] QUERY OK source="sources" db=0.4ms idle=1106.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" IN (?)) [5] 22:54:35.464 [debug] QUERY OK source="sources" db=0.4ms idle=1106.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" = ?) [5] 22:54:35.465 [debug] QUERY OK source="media_items" db=1.1ms queue=0.1ms idle=1107.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-08 11:00:16Z], 5] 22:54:35.489 [debug] QUERY OK source="media_items" db=22.2ms idle=151.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Chocolate Fly | S03E23\n00:01:29 | He Who Laughs Last, laughs Longest | S03E12\n00:02:58 | The Doughnut | S03E16\n00:04:30 | At Full Speed | S03E22\n00:05:51 | Like A Cannon Ball | S03E03\n00:07:20 | The Wicked Web | S03E07\n00:08:49 | Mad fly | S03E08\n00:10:18 | The Magic Fly | S03E15\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Chocolate #Fly #Spider #Dessert #laughs #spider #dangerous #swaddled #Minuscule #nature #insects #ladybugs #animatedseries", "Chocolate Fly | Minuscule 🍃 15' Compilation", "a26d5b08-2240-4b01-9d8a-ef8c0cda58e9", "https://www.youtube.com/watch?v=42Cr5HR1m7E", "42Cr5HR1m7E", 726, false, 11, "/downloads/Miniscule Season 2/2026-01-08 Chocolate Fly | Minuscule 🍃 15' Compilation/Chocolate Fly | Minuscule 🍃 15' Compilation [42Cr5HR1m7E].mp4", false, false, false, 5, [], 1, ~U[2026-01-08 11:00:16Z], ~U[2026-01-30 05:54:35Z], ~U[2026-01-30 05:54:35Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Chocolate Fly | S03E23\n00:01:29 | He Who Laughs Last, laughs Longest | S03E12\n00:02:58 | The Doughnut | S03E16\n00:04:30 | At Full Speed | S03E22\n00:05:51 | Like A Cannon Ball | S03E03\n00:07:20 | The Wicked Web | S03E07\n00:08:49 | Mad fly | S03E08\n00:10:18 | The Magic Fly | S03E15\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Chocolate #Fly #Spider #Dessert #laughs #spider #dangerous #swaddled #Minuscule #nature #insects #ladybugs #animatedseries", "Chocolate Fly | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=42Cr5HR1m7E", "42Cr5HR1m7E", 726, false, "/downloads/Miniscule Season 2/2026-01-08 Chocolate Fly | Minuscule 🍃 15' Compilation/Chocolate Fly | Minuscule 🍃 15' Compilation [42Cr5HR1m7E].mp4", false, 5, ~U[2026-01-08 11:00:16Z]] 22:54:35.490 [debug] QUERY OK source="sources" db=0.4ms idle=168.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" = ?) [5] 22:54:35.490 [debug] QUERY OK source="media_profiles" db=0.4ms idle=26.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] 22:54:35.492 [debug] QUERY OK source="media_items" db=0.7ms queue=0.1ms idle=27.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 [104662] 22:54:35.492 [debug] Current batch of media processed. Will check again in 1000ms 22:54:36.493 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Twelve Angry Snails | S02E66\n00:03:32 | Night of the Gastropods | S02E18\n00:07:18 | The Long Road | S02E34\n00:11:00 | Mission : BBQ | S02E09\n00:14:46 | Thirsty | S02E29\n00:18:18 | Trapped | S02E64\n00:22:01 | Black Slope For Gastropod Skiers | S02E55\n00:25:47 | Patatas Fritas | S02E21\n00:29:33 | Sausage Predator | S02E06\n00:33:18 | The Grocery Store Incident | S02E39\n00:36:49 | The Vegetable Garden | S02E10\n00:40:33 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#snails #escape #gourmet #restaurant #garden #snail #war #salad #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2694, "filename" => "/downloads/Miniscule Season 2/2025-12-30 Twelve Angry Snails 🐌 Minuscule | 60' Compilation/Twelve Angry Snails 🐌 Minuscule | 60' Compilation [boG5r_pUXfs].mp4", "id" => "boG5r_pUXfs", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=boG5r_pUXfs", "playlist_index" => 12, "timestamp" => 1767078030, "title" => "Twelve Angry Snails 🐌 Minuscule | 60' Compilation", "upload_date" => "20251230"} 22:54:36.494 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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 (?)) [5] 22:54:36.494 [debug] QUERY OK source="sources" db=0.2ms idle=1003.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" = ?) [5] 22:54:36.495 [debug] QUERY OK source="media_items" db=0.8ms idle=1002.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-30 07:00:30Z], 5] 22:54:36.576 [debug] QUERY OK source="media_items" db=79.8ms idle=179.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Twelve Angry Snails | S02E66\n00:03:32 | Night of the Gastropods | S02E18\n00:07:18 | The Long Road | S02E34\n00:11:00 | Mission : BBQ | S02E09\n00:14:46 | Thirsty | S02E29\n00:18:18 | Trapped | S02E64\n00:22:01 | Black Slope For Gastropod Skiers | S02E55\n00:25:47 | Patatas Fritas | S02E21\n00:29:33 | Sausage Predator | S02E06\n00:33:18 | The Grocery Store Incident | S02E39\n00:36:49 | The Vegetable Garden | S02E10\n00:40:33 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#snails #escape #gourmet #restaurant #garden #snail #war #salad #Minuscule #nature #insects #ladybugs #animatedseries", "Twelve Angry Snails 🐌 Minuscule | 60' Compilation", "86d29126-7d8e-4084-b77b-638a86e49458", "https://www.youtube.com/watch?v=boG5r_pUXfs", "boG5r_pUXfs", 2694, false, 12, "/downloads/Miniscule Season 2/2025-12-30 Twelve Angry Snails 🐌 Minuscule | 60' Compilation/Twelve Angry Snails 🐌 Minuscule | 60' Compilation [boG5r_pUXfs].mp4", false, false, false, 5, [], 1, ~U[2025-12-30 07:00:30Z], ~U[2026-01-30 05:54:36Z], ~U[2026-01-30 05:54:36Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Twelve Angry Snails | S02E66\n00:03:32 | Night of the Gastropods | S02E18\n00:07:18 | The Long Road | S02E34\n00:11:00 | Mission : BBQ | S02E09\n00:14:46 | Thirsty | S02E29\n00:18:18 | Trapped | S02E64\n00:22:01 | Black Slope For Gastropod Skiers | S02E55\n00:25:47 | Patatas Fritas | S02E21\n00:29:33 | Sausage Predator | S02E06\n00:33:18 | The Grocery Store Incident | S02E39\n00:36:49 | The Vegetable Garden | S02E10\n00:40:33 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#snails #escape #gourmet #restaurant #garden #snail #war #salad #Minuscule #nature #insects #ladybugs #animatedseries", "Twelve Angry Snails 🐌 Minuscule | 60' Compilation", "https://www.youtube.com/watch?v=boG5r_pUXfs", "boG5r_pUXfs", 2694, false, "/downloads/Miniscule Season 2/2025-12-30 Twelve Angry Snails 🐌 Minuscule | 60' Compilation/Twelve Angry Snails 🐌 Minuscule | 60' Compilation [boG5r_pUXfs].mp4", false, 5, ~U[2025-12-30 07:00:30Z]] 22:54:36.577 [debug] QUERY OK source="sources" db=0.3ms idle=253.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" = ?) [5] 22:54:36.577 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=83.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] 22:54:36.578 [debug] QUERY OK source="media_items" db=0.4ms idle=83.4ms 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 [104128] 22:54:36.578 [debug] Current batch of media processed. Will check again in 1000ms 22:54:37.580 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Butterfly Effect | S02E23\n00:03:22 | Metamorphosis | S02E61\n00:06:53 | Hop On! | S02E25\n00:10:30 | The Wing Case | S02E01\n00:14:15 | Turbo speed | S02E58\n00:17:40 | The Grocery Store Incident | S02E39\n00:21:10 | Love Apple | S02E45\n00:24:50 | Woopsy Daysies! | S02E47\n00:28:24 | If Only Lonely | S02E22\n00:32:10 | Fly Hunting | S02E24\n00:35:43 | Snow Fly | S02E51\n00:39:08 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#butterfly #flutter #fields #reaction #transformation #caterpillar #rejection #change #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2583, "filename" => "/downloads/Miniscule Season 2/2026-01-03 The Butterfly Effect | Minuscule | 55' Compilation/The Butterfly Effect | Minuscule | 55' Compilation [pDkGYWpeUPE].mp4", "id" => "pDkGYWpeUPE", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=pDkGYWpeUPE", "playlist_index" => 13, "timestamp" => 1767466851, "title" => "The Butterfly Effect | Minuscule | 55' Compilation", "upload_date" => "20260103"} 22:54:37.581 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:54:37.582 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:54:37.584 [debug] QUERY OK source="media_items" db=1.1ms idle=1004.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-03 19:00:51Z], 5] 22:54:37.587 [debug] QUERY OK source="media_items" db=2.5ms idle=265.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Butterfly Effect | S02E23\n00:03:22 | Metamorphosis | S02E61\n00:06:53 | Hop On! | S02E25\n00:10:30 | The Wing Case | S02E01\n00:14:15 | Turbo speed | S02E58\n00:17:40 | The Grocery Store Incident | S02E39\n00:21:10 | Love Apple | S02E45\n00:24:50 | Woopsy Daysies! | S02E47\n00:28:24 | If Only Lonely | S02E22\n00:32:10 | Fly Hunting | S02E24\n00:35:43 | Snow Fly | S02E51\n00:39:08 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#butterfly #flutter #fields #reaction #transformation #caterpillar #rejection #change #Minuscule #nature #insects #ladybugs #animatedseries", "The Butterfly Effect | Minuscule | 55' Compilation", "6f996ebe-f40e-48a5-b0ee-045cc0ce1fcd", "https://www.youtube.com/watch?v=pDkGYWpeUPE", "pDkGYWpeUPE", 2583, false, 13, "/downloads/Miniscule Season 2/2026-01-03 The Butterfly Effect | Minuscule | 55' Compilation/The Butterfly Effect | Minuscule | 55' Compilation [pDkGYWpeUPE].mp4", false, false, false, 5, [], 1, ~U[2026-01-03 19:00:51Z], ~U[2026-01-30 05:54:37Z], ~U[2026-01-30 05:54:37Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Butterfly Effect | S02E23\n00:03:22 | Metamorphosis | S02E61\n00:06:53 | Hop On! | S02E25\n00:10:30 | The Wing Case | S02E01\n00:14:15 | Turbo speed | S02E58\n00:17:40 | The Grocery Store Incident | S02E39\n00:21:10 | Love Apple | S02E45\n00:24:50 | Woopsy Daysies! | S02E47\n00:28:24 | If Only Lonely | S02E22\n00:32:10 | Fly Hunting | S02E24\n00:35:43 | Snow Fly | S02E51\n00:39:08 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#butterfly #flutter #fields #reaction #transformation #caterpillar #rejection #change #Minuscule #nature #insects #ladybugs #animatedseries", "The Butterfly Effect | Minuscule | 55' Compilation", "https://www.youtube.com/watch?v=pDkGYWpeUPE", "pDkGYWpeUPE", 2583, false, "/downloads/Miniscule Season 2/2026-01-03 The Butterfly Effect | Minuscule | 55' Compilation/The Butterfly Effect | Minuscule | 55' Compilation [pDkGYWpeUPE].mp4", false, 5, ~U[2026-01-03 19:00:51Z]] 22:54:37.588 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=262.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" = ?) [5] 22:54:37.589 [debug] QUERY OK source="media_profiles" db=0.4ms idle=7.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] 22:54:37.590 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=7.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 [104664] 22:54:37.590 [debug] Current batch of media processed. Will check again in 1000ms 22:54:38.591 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Snow Fly | S02E51\n00:03:24 | Zzz In The Metro | S02E53\n00:07:00 | Down The Chimney | S02E42\n00:10:45 | Honey Fly | S02E08\n00:14:35 | Refrigerated | S02E65\n00:18:10 | Umbrella And Coconut Trees | S02E71\n00:21:43 | White As Snow | S02E63\n00:25:20 | Spider Driver | S02E36\n00:29:01 | Labyrinth | S02E69\n00:32:47 | Summer Hat | S02E48\n00:36:28 | Fly Hunting | S02E24\n00:40:02 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Fly #Cold #Ladybug #ladybug #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2651, "filename" => "/downloads/Miniscule Season 2/2025-12-20 Snow Fly 🎅 Minuscule ⛄️ 55' Compilation/Snow Fly 🎅 Minuscule ⛄️ 55' Compilation [tP2OKQfYKfo].mp4", "id" => "tP2OKQfYKfo", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=tP2OKQfYKfo", "playlist_index" => 14, "timestamp" => 1766257251, "title" => "Snow Fly 🎅 Minuscule ⛄️ 55' Compilation", "upload_date" => "20251220"} 22:54:38.592 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:54:38.593 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=1003.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" = ?) [5] 22:54:38.594 [debug] QUERY OK source="media_items" db=0.9ms idle=1003.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-20 19:00:51Z], 5] 22:54:38.720 [debug] QUERY OK source="media_items" db=124.7ms idle=274.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Snow Fly | S02E51\n00:03:24 | Zzz In The Metro | S02E53\n00:07:00 | Down The Chimney | S02E42\n00:10:45 | Honey Fly | S02E08\n00:14:35 | Refrigerated | S02E65\n00:18:10 | Umbrella And Coconut Trees | S02E71\n00:21:43 | White As Snow | S02E63\n00:25:20 | Spider Driver | S02E36\n00:29:01 | Labyrinth | S02E69\n00:32:47 | Summer Hat | S02E48\n00:36:28 | Fly Hunting | S02E24\n00:40:02 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Fly #Cold #Ladybug #ladybug #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Fly 🎅 Minuscule ⛄️ 55' Compilation", "f65d293c-7114-4e1d-af21-4447bde70afb", "https://www.youtube.com/watch?v=tP2OKQfYKfo", "tP2OKQfYKfo", 2651, false, 14, "/downloads/Miniscule Season 2/2025-12-20 Snow Fly 🎅 Minuscule ⛄️ 55' Compilation/Snow Fly 🎅 Minuscule ⛄️ 55' Compilation [tP2OKQfYKfo].mp4", false, false, false, 5, [], 1, ~U[2025-12-20 19:00:51Z], ~U[2026-01-30 05:54:38Z], ~U[2026-01-30 05:54:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Snow Fly | S02E51\n00:03:24 | Zzz In The Metro | S02E53\n00:07:00 | Down The Chimney | S02E42\n00:10:45 | Honey Fly | S02E08\n00:14:35 | Refrigerated | S02E65\n00:18:10 | Umbrella And Coconut Trees | S02E71\n00:21:43 | White As Snow | S02E63\n00:25:20 | Spider Driver | S02E36\n00:29:01 | Labyrinth | S02E69\n00:32:47 | Summer Hat | S02E48\n00:36:28 | Fly Hunting | S02E24\n00:40:02 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Fly #Cold #Ladybug #ladybug #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Fly 🎅 Minuscule ⛄️ 55' Compilation", "https://www.youtube.com/watch?v=tP2OKQfYKfo", "tP2OKQfYKfo", 2651, false, "/downloads/Miniscule Season 2/2025-12-20 Snow Fly 🎅 Minuscule ⛄️ 55' Compilation/Snow Fly 🎅 Minuscule ⛄️ 55' Compilation [tP2OKQfYKfo].mp4", false, 5, ~U[2025-12-20 19:00:51Z]] 22:54:38.721 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=394.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" = ?) [5] 22:54:38.722 [debug] QUERY OK source="media_profiles" db=0.3ms idle=129.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] 22:54:38.723 [debug] QUERY OK source="media_items" db=0.6ms idle=129.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 [103608] 22:54:38.723 [debug] Current batch of media processed. Will check again in 1000ms 22:54:39.433 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=wK4Zj-bg9Vk --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/6b/5a/6b5a286a66254b06bcd7718e36fa6941674aed4f9bff9c271ac723c7b3dad94d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] wK4Zj-bg9Vk: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 22:54:39.442 [debug] Running yt-dlp command for action: download_thumbnail 22:54:39.443 [debug] QUERY OK source="settings" db=0.3ms idle=721.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 [] 22:54:39.444 [debug] QUERY OK source="settings" db=0.2ms idle=721.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 [] 22:54:39.444 [debug] QUERY OK source="settings" db=0.1ms idle=721.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 [] 22:54:39.445 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=wK4Zj-bg9Vk --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/106312/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/f4/23/f423a7594c1841492ac8141304c47d31d72fd29456ad341c2b8c3e7cd26cfd2f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:54:39.724 [debug] Current batch of media processed. Will check again in 1000ms 22:54:40.725 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | An Acorn Season | S02E05\n00:03:45 | Chewing gum rodeo | S02E14\n00:07:31 | The Annoying Neighbor | S02E28\n00:11:07 | To The Port Now! | S02E43\n00:14:34 | Woopsy Daysies! | S02E47\n00:18:08 | Ladybugland | S02E62\n00:21:36 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:25:21 | The Grocery Store Racketeer | S02E50\n00:28:57 | Fly Hunting | S02E24\n00:32:30 | Acrobatics | S02E16\n00:36:16 | Rascals! | S02E38\n00:39:55 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acorn #Grasshopper #Insects #Justice #gum #grasshopper #insects #ladybird #Minuscule #nature #ladybugs #animatedseries", "duration" => 2657, "filename" => "/downloads/Miniscule Season 2/2025-12-25 An Acorn Season | Minuscule | 55' Compilation/An Acorn Season | Minuscule | 55' Compilation [tLn8a3TLDZY].mp4", "id" => "tLn8a3TLDZY", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=tLn8a3TLDZY", "playlist_index" => 15, "timestamp" => 1766660501, "title" => "An Acorn Season | Minuscule | 55' Compilation", "upload_date" => "20251225"} 22:54:40.726 [debug] QUERY OK source="sources" db=0.6ms idle=1281.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" IN (?)) [5] 22:54:40.727 [debug] QUERY OK source="sources" db=0.4ms idle=1282.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" = ?) [5] 22:54:40.728 [debug] QUERY OK source="media_items" db=0.9ms idle=1282.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-25 11:01:41Z], 5] 22:54:40.731 [debug] QUERY OK source="media_items" db=1.7ms idle=403.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | An Acorn Season | S02E05\n00:03:45 | Chewing gum rodeo | S02E14\n00:07:31 | The Annoying Neighbor | S02E28\n00:11:07 | To The Port Now! | S02E43\n00:14:34 | Woopsy Daysies! | S02E47\n00:18:08 | Ladybugland | S02E62\n00:21:36 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:25:21 | The Grocery Store Racketeer | S02E50\n00:28:57 | Fly Hunting | S02E24\n00:32:30 | Acrobatics | S02E16\n00:36:16 | Rascals! | S02E38\n00:39:55 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acorn #Grasshopper #Insects #Justice #gum #grasshopper #insects #ladybird #Minuscule #nature #ladybugs #animatedseries", "An Acorn Season | Minuscule | 55' Compilation", "1c046252-1012-44f5-8ad9-90271b1ae31f", "https://www.youtube.com/watch?v=tLn8a3TLDZY", "tLn8a3TLDZY", 2657, false, 15, "/downloads/Miniscule Season 2/2025-12-25 An Acorn Season | Minuscule | 55' Compilation/An Acorn Season | Minuscule | 55' Compilation [tLn8a3TLDZY].mp4", false, false, false, 5, [], 1, ~U[2025-12-25 11:01:41Z], ~U[2026-01-30 05:54:40Z], ~U[2026-01-30 05:54:40Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | An Acorn Season | S02E05\n00:03:45 | Chewing gum rodeo | S02E14\n00:07:31 | The Annoying Neighbor | S02E28\n00:11:07 | To The Port Now! | S02E43\n00:14:34 | Woopsy Daysies! | S02E47\n00:18:08 | Ladybugland | S02E62\n00:21:36 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:25:21 | The Grocery Store Racketeer | S02E50\n00:28:57 | Fly Hunting | S02E24\n00:32:30 | Acrobatics | S02E16\n00:36:16 | Rascals! | S02E38\n00:39:55 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acorn #Grasshopper #Insects #Justice #gum #grasshopper #insects #ladybird #Minuscule #nature #ladybugs #animatedseries", "An Acorn Season | Minuscule | 55' Compilation", "https://www.youtube.com/watch?v=tLn8a3TLDZY", "tLn8a3TLDZY", 2657, false, "/downloads/Miniscule Season 2/2025-12-25 An Acorn Season | Minuscule | 55' Compilation/An Acorn Season | Minuscule | 55' Compilation [tLn8a3TLDZY].mp4", false, 5, ~U[2025-12-25 11:01:41Z]] 22:54:40.731 [debug] QUERY OK source="sources" db=0.3ms idle=397.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" = ?) [5] 22:54:40.732 [debug] QUERY OK source="media_profiles" db=0.3ms idle=5.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] 22:54:40.733 [debug] QUERY OK source="media_items" db=0.3ms idle=5.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 [103609] 22:54:40.733 [debug] Current batch of media processed. Will check again in 1000ms 22:54:41.734 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | If Only Lonely | S02E22\n00:03:45 | The Wing Case | S02E01\n00:07:31 | Ladybugland | S02E62\n00:10:58 | Ants On The Train | S02E52\n00:14:30 | Away all boarders! | S02E41\n00:18:12 | A Butterfly's Nightmare | S02E20\n00:21:29 | Trapped | S02E64\n00:25:11 | Homeless | S02E02\n00:28:59 | Valentine's Day | S02E15\n00:32:44 | Honey Fly | S02E08\n00:36:35 | Fly Hunting | S02E24\n00:40:08 | The Annoying Neighbor | S02E28\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #sibling #anxiety #ants #egg #caterpillar #adoption #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2663, "filename" => "/downloads/Miniscule Season 2/2025-12-23 If Only Lonely | Minuscule | 55' Compilation/If Only Lonely | Minuscule | 55' Compilation [gyJPPysg8bI].mp4", "id" => "gyJPPysg8bI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=gyJPPysg8bI", "playlist_index" => 16, "timestamp" => 1766473247, "title" => "If Only Lonely | Minuscule | 55' Compilation", "upload_date" => "20251223"} 22:54:41.735 [debug] QUERY OK source="sources" db=0.5ms idle=1003.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" IN (?)) [5] 22:54:41.736 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" = ?) [5] 22:54:41.738 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-23 07:00:47Z], 5] 22:54:41.741 [debug] QUERY OK source="media_items" db=2.4ms idle=409.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | If Only Lonely | S02E22\n00:03:45 | The Wing Case | S02E01\n00:07:31 | Ladybugland | S02E62\n00:10:58 | Ants On The Train | S02E52\n00:14:30 | Away all boarders! | S02E41\n00:18:12 | A Butterfly's Nightmare | S02E20\n00:21:29 | Trapped | S02E64\n00:25:11 | Homeless | S02E02\n00:28:59 | Valentine's Day | S02E15\n00:32:44 | Honey Fly | S02E08\n00:36:35 | Fly Hunting | S02E24\n00:40:08 | The Annoying Neighbor | S02E28\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #sibling #anxiety #ants #egg #caterpillar #adoption #Minuscule #nature #insects #ladybugs #animatedseries", "If Only Lonely | Minuscule | 55' Compilation", "59f57682-27e2-4d08-bd8c-47870bbcba73", "https://www.youtube.com/watch?v=gyJPPysg8bI", "gyJPPysg8bI", 2663, false, 16, "/downloads/Miniscule Season 2/2025-12-23 If Only Lonely | Minuscule | 55' Compilation/If Only Lonely | Minuscule | 55' Compilation [gyJPPysg8bI].mp4", false, false, false, 5, [], 1, ~U[2025-12-23 07:00:47Z], ~U[2026-01-30 05:54:41Z], ~U[2026-01-30 05:54:41Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | If Only Lonely | S02E22\n00:03:45 | The Wing Case | S02E01\n00:07:31 | Ladybugland | S02E62\n00:10:58 | Ants On The Train | S02E52\n00:14:30 | Away all boarders! | S02E41\n00:18:12 | A Butterfly's Nightmare | S02E20\n00:21:29 | Trapped | S02E64\n00:25:11 | Homeless | S02E02\n00:28:59 | Valentine's Day | S02E15\n00:32:44 | Honey Fly | S02E08\n00:36:35 | Fly Hunting | S02E24\n00:40:08 | The Annoying Neighbor | S02E28\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #sibling #anxiety #ants #egg #caterpillar #adoption #Minuscule #nature #insects #ladybugs #animatedseries", "If Only Lonely | Minuscule | 55' Compilation", "https://www.youtube.com/watch?v=gyJPPysg8bI", "gyJPPysg8bI", 2663, false, "/downloads/Miniscule Season 2/2025-12-23 If Only Lonely | Minuscule | 55' Compilation/If Only Lonely | Minuscule | 55' Compilation [gyJPPysg8bI].mp4", false, 5, ~U[2025-12-23 07:00:47Z]] 22:54:41.742 [debug] QUERY OK source="sources" db=0.4ms idle=406.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" = ?) [5] 22:54:41.743 [debug] QUERY OK source="media_profiles" db=0.4ms idle=7.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] 22:54:41.744 [debug] QUERY OK source="media_items" db=0.5ms idle=7.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 [103610] 22:54:41.744 [debug] Current batch of media processed. Will check again in 1000ms 22:54:42.745 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Brushing | S02E46\n00:03:32 | Spider from the Depths | S02E31\n00:07:07 | Spider Driver | S02E36\n00:10:48 | The Hat Of The Medusa | S02E17\n00:14:34 | Labyrinth | S02E69\n00:18:19 | Summer Hat | S02E48\n00:22:01 | Refrigerated | S02E65\n00:25:35 | Bzzaping | S02E03\n00:29:22 | Fly Hunting | S02E24\n00:32:56 | Microzilla | S02E07\n00:36:41 | A Pathetic She'Nut'Igan | S02E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Brushing #Fly #Spider #Drunk #spider #prey #fly #pool #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2465, "filename" => "/downloads/Miniscule Season 2/2025-12-27 Brushing | Minuscule | 55' Compilation/Brushing | Minuscule | 55' Compilation [bal9pZmYCZI].mp4", "id" => "bal9pZmYCZI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=bal9pZmYCZI", "playlist_index" => 17, "timestamp" => 1766862039, "title" => "Brushing | Minuscule | 55' Compilation", "upload_date" => "20251227"} 22:54:42.746 [debug] QUERY OK source="sources" db=0.5ms idle=1003.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" IN (?)) [5] 22:54:42.747 [debug] QUERY OK source="sources" db=0.5ms idle=1004.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" = ?) [5] 22:54:42.748 [debug] QUERY OK source="media_items" db=0.8ms idle=1003.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-27 19:00:39Z], 5] 22:54:42.752 [debug] QUERY OK source="media_items" db=2.5ms idle=418.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Brushing | S02E46\n00:03:32 | Spider from the Depths | S02E31\n00:07:07 | Spider Driver | S02E36\n00:10:48 | The Hat Of The Medusa | S02E17\n00:14:34 | Labyrinth | S02E69\n00:18:19 | Summer Hat | S02E48\n00:22:01 | Refrigerated | S02E65\n00:25:35 | Bzzaping | S02E03\n00:29:22 | Fly Hunting | S02E24\n00:32:56 | Microzilla | S02E07\n00:36:41 | A Pathetic She'Nut'Igan | S02E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Brushing #Fly #Spider #Drunk #spider #prey #fly #pool #Minuscule #nature #insects #ladybugs #animatedseries", "Brushing | Minuscule | 55' Compilation", "542a7584-7aa5-4a14-ab25-a922a2e17b1f", "https://www.youtube.com/watch?v=bal9pZmYCZI", "bal9pZmYCZI", 2465, false, 17, "/downloads/Miniscule Season 2/2025-12-27 Brushing | Minuscule | 55' Compilation/Brushing | Minuscule | 55' Compilation [bal9pZmYCZI].mp4", false, false, false, 5, [], 1, ~U[2025-12-27 19:00:39Z], ~U[2026-01-30 05:54:42Z], ~U[2026-01-30 05:54:42Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Brushing | S02E46\n00:03:32 | Spider from the Depths | S02E31\n00:07:07 | Spider Driver | S02E36\n00:10:48 | The Hat Of The Medusa | S02E17\n00:14:34 | Labyrinth | S02E69\n00:18:19 | Summer Hat | S02E48\n00:22:01 | Refrigerated | S02E65\n00:25:35 | Bzzaping | S02E03\n00:29:22 | Fly Hunting | S02E24\n00:32:56 | Microzilla | S02E07\n00:36:41 | A Pathetic She'Nut'Igan | S02E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Brushing #Fly #Spider #Drunk #spider #prey #fly #pool #Minuscule #nature #insects #ladybugs #animatedseries", "Brushing | Minuscule | 55' Compilation", "https://www.youtube.com/watch?v=bal9pZmYCZI", "bal9pZmYCZI", 2465, false, "/downloads/Miniscule Season 2/2025-12-27 Brushing | Minuscule | 55' Compilation/Brushing | Minuscule | 55' Compilation [bal9pZmYCZI].mp4", false, 5, ~U[2025-12-27 19:00:39Z]] 22:54:42.753 [debug] QUERY OK source="sources" db=0.5ms idle=415.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" = ?) [5] 22:54:42.754 [debug] QUERY OK source="media_profiles" db=0.4ms idle=6.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] 22:54:42.755 [debug] QUERY OK source="media_items" db=0.6ms 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 [104132] 22:54:42.755 [debug] Current batch of media processed. Will check again in 1000ms 22:54:43.515 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=wK4Zj-bg9Vk --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/106312/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/f4/23/f423a7594c1841492ac8141304c47d31d72fd29456ad341c2b8c3e7cd26cfd2f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] wK4Zj-bg9Vk: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 22:54:43.516 [debug] QUERY OK db=0.0ms queue=0.1ms idle=762.5ms begin [] 22:54:43.545 [debug] QUERY OK source="media_items" db=29.4ms UPDATE "media_items" SET "metadata_filepath" = ?, "thumbnail_filepath" = ?, "media_downloaded_at" = ?, "media_filepath" = ?, "updated_at" = ? WHERE "id" = ? ["/downloads/Miniscule Season 2/2026-01-23 Spider Driver | Minuscule/Spider Driver | Minuscule [wK4Zj-bg9Vk].info.json", "/downloads/Miniscule Season 2/2026-01-23 Spider Driver | Minuscule/Spider Driver | Minuscule [wK4Zj-bg9Vk]-thumb.jpg", ~U[2026-01-30 05:54:39Z], "/downloads/Miniscule Season 2/2026-01-23 Spider Driver | Minuscule/Spider Driver | Minuscule [wK4Zj-bg9Vk].mp4", ~U[2026-01-30 05:54:43Z], 106312] 22:54:43.688 [debug] QUERY OK source="media_metadata" db=141.9ms 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/106312/metadata.json.gz", "/config/metadata/media_items/106312/thumbnail.jpg", 106312, ~U[2026-01-30 05:54:43Z], ~U[2026-01-30 05:54:43Z]] 22:54:43.688 [debug] QUERY OK db=0.4ms commit [] 22:54:43.691 [debug] QUERY OK source="media_items" db=2.0ms idle=935.1ms UPDATE "media_items" SET "media_size_bytes" = ?, "updated_at" = ? WHERE "id" = ? [6936686, ~U[2026-01-30 05:54:43Z], 106312] 22:54:43.691 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:54:43.692 [info] {"args":{"id":106312},"id":2980,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":13287997,"event":"job:stop","queue_time":307915,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:54:43.756 [debug] Current batch of media processed. Will check again in 1000ms 22:54:44.757 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Patatas Fritas | S02E21\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Away all boarders! | S02E41\n00:11:05 | The Grocery Store Incident | S02E39\n00:14:36 | Turbo speed | S02E58\n00:18:01 | Trapped | S02E64\n00:21:43 | Twelve Angry Snails | S02E66\n00:25:16 | The Hat Of The Medusa | S02E17\n00:29:01 | Homeless | S02E02\n00:32:49 | The Chocolate Chase! | S02E19\n00:36:34 | Mission : BBQ | S02E09\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Patatas #Fritas #wasps #universe #Tabasco #wasp #patrol #ladybug #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2459, "filename" => "/downloads/Miniscule Season 2/2025-12-06 Patatas Fritas 🍟 Minuscule | 55' Compilation/Patatas Fritas 🍟 Minuscule | 55' Compilation [SCmQ8PfbcOQ].mp4", "id" => "SCmQ8PfbcOQ", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=SCmQ8PfbcOQ", "playlist_index" => 18, "timestamp" => 1765047626, "title" => "Patatas Fritas 🍟 Minuscule | 55' Compilation", "upload_date" => "20251206"} 22:54:44.758 [debug] QUERY OK source="sources" db=0.6ms idle=1066.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" IN (?)) [5] 22:54:44.759 [debug] QUERY OK source="sources" db=0.5ms idle=1066.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" = ?) [5] 22:54:44.761 [debug] QUERY OK source="media_items" db=1.1ms idle=1060.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-06 19:00:26Z], 5] 22:54:44.775 [debug] QUERY OK source="media_items" db=13.3ms idle=426.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Patatas Fritas | S02E21\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Away all boarders! | S02E41\n00:11:05 | The Grocery Store Incident | S02E39\n00:14:36 | Turbo speed | S02E58\n00:18:01 | Trapped | S02E64\n00:21:43 | Twelve Angry Snails | S02E66\n00:25:16 | The Hat Of The Medusa | S02E17\n00:29:01 | Homeless | S02E02\n00:32:49 | The Chocolate Chase! | S02E19\n00:36:34 | Mission : BBQ | S02E09\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Patatas #Fritas #wasps #universe #Tabasco #wasp #patrol #ladybug #Minuscule #nature #insects #ladybugs #animatedseries", "Patatas Fritas 🍟 Minuscule | 55' Compilation", "545e66b4-95f7-4394-a34d-cb401bfd1820", "https://www.youtube.com/watch?v=SCmQ8PfbcOQ", "SCmQ8PfbcOQ", 2459, false, 18, "/downloads/Miniscule Season 2/2025-12-06 Patatas Fritas 🍟 Minuscule | 55' Compilation/Patatas Fritas 🍟 Minuscule | 55' Compilation [SCmQ8PfbcOQ].mp4", false, false, false, 5, [], 1, ~U[2025-12-06 19:00:26Z], ~U[2026-01-30 05:54:44Z], ~U[2026-01-30 05:54:44Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Patatas Fritas | S02E21\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Away all boarders! | S02E41\n00:11:05 | The Grocery Store Incident | S02E39\n00:14:36 | Turbo speed | S02E58\n00:18:01 | Trapped | S02E64\n00:21:43 | Twelve Angry Snails | S02E66\n00:25:16 | The Hat Of The Medusa | S02E17\n00:29:01 | Homeless | S02E02\n00:32:49 | The Chocolate Chase! | S02E19\n00:36:34 | Mission : BBQ | S02E09\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Patatas #Fritas #wasps #universe #Tabasco #wasp #patrol #ladybug #Minuscule #nature #insects #ladybugs #animatedseries", "Patatas Fritas 🍟 Minuscule | 55' Compilation", "https://www.youtube.com/watch?v=SCmQ8PfbcOQ", "SCmQ8PfbcOQ", 2459, false, "/downloads/Miniscule Season 2/2025-12-06 Patatas Fritas 🍟 Minuscule | 55' Compilation/Patatas Fritas 🍟 Minuscule | 55' Compilation [SCmQ8PfbcOQ].mp4", false, 5, ~U[2025-12-06 19:00:26Z]] 22:54:44.776 [debug] QUERY OK source="sources" db=0.5ms idle=434.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" = ?) [5] 22:54:44.777 [debug] QUERY OK source="media_profiles" db=0.4ms idle=17.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] 22:54:44.778 [debug] QUERY OK source="media_items" db=0.6ms idle=18.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 [102593] 22:54:44.778 [debug] Current batch of media processed. Will check again in 1000ms 22:54:45.780 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mad fly | S03E08\n00:01:29 | The Magic Fly | S03E15\n00:02:58 | At Full Speed | S03E22\n00:04:19 | He Who Laughs Last, laughs Longest | S03E12\n00:05:48 | Pea supper | S03E01\n00:07:17 | Webrizon | S03E02\n00:08:46 | A Christmas Apple | S03E04\n00:10:15 | Like A Cannon Ball | S03E03\n00:11:44 | A Pea In The Hand Is Worth... | S03E05\n00:13:17 | Glue | S03E06\n00:14:54 | The Wicked Web | S03E07\n00:16:23 | The Cruel Cow in The Meadow | S03E09\n00:17:53 | Need for Speed | S03E10\n00:19:22 | Sow The Wind And Reap The Storm | S03E11\n00:21:00 | Fly Swatter | S03E13\n00:22:29 | Mosquito Net | S03E14\n00:23:58 | The Doughnut | S03E16\n00:25:31 | Ant On The Rocks | S03E17\n00:27:02 | The Artist | S03E18\n00:28:47 | Telecanetic | S03E19\n00:30:16 | Chocolate Fly | S03E23\n00:31:45 | A Dream Of Speed | S03E24\n00:33:14 | The Sled and the Ant | S03E25\n00:34:43 | Blunder | S03E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Magic #Spider #Fly #Winner #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2203, "filename" => "/downloads/Miniscule Season 2/2025-11-20 Mad fly 🚕 Minuscule Marathon✨ 50' Compilation/Mad fly 🚕 Minuscule Marathon✨ 50' Compilation [BdpBsxt6z5I].mp4", "id" => "BdpBsxt6z5I", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=BdpBsxt6z5I", "playlist_index" => 19, "timestamp" => 1763636525, "title" => "Mad fly 🚕 Minuscule Marathon✨ 50' Compilation", "upload_date" => "20251120"} 22:54:45.781 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1004.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 (?)) [5] 22:54:45.782 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:54:45.783 [debug] QUERY OK source="media_items" db=1.0ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-20 11:02:05Z], 5] 22:54:45.821 [debug] QUERY OK source="media_items" db=36.5ms idle=447.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mad fly | S03E08\n00:01:29 | The Magic Fly | S03E15\n00:02:58 | At Full Speed | S03E22\n00:04:19 | He Who Laughs Last, laughs Longest | S03E12\n00:05:48 | Pea supper | S03E01\n00:07:17 | Webrizon | S03E02\n00:08:46 | A Christmas Apple | S03E04\n00:10:15 | Like A Cannon Ball | S03E03\n00:11:44 | A Pea In The Hand Is Worth... | S03E05\n00:13:17 | Glue | S03E06\n00:14:54 | The Wicked Web | S03E07\n00:16:23 | The Cruel Cow in The Meadow | S03E09\n00:17:53 | Need for Speed | S03E10\n00:19:22 | Sow The Wind And Reap The Storm | S03E11\n00:21:00 | Fly Swatter | S03E13\n00:22:29 | Mosquito Net | S03E14\n00:23:58 | The Doughnut | S03E16\n00:25:31 | Ant On The Rocks | S03E17\n00:27:02 | The Artist | S03E18\n00:28:47 | Telecanetic | S03E19\n00:30:16 | Chocolate Fly | S03E23\n00:31:45 | A Dream Of Speed | S03E24\n00:33:14 | The Sled and the Ant | S03E25\n00:34:43 | Blunder | S03E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Magic #Spider #Fly #Winner #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly 🚕 Minuscule Marathon✨ 50' Compilation", "ee8c2848-d141-4358-b377-ff009e12a6d7", "https://www.youtube.com/watch?v=BdpBsxt6z5I", "BdpBsxt6z5I", 2203, false, 19, "/downloads/Miniscule Season 2/2025-11-20 Mad fly 🚕 Minuscule Marathon✨ 50' Compilation/Mad fly 🚕 Minuscule Marathon✨ 50' Compilation [BdpBsxt6z5I].mp4", false, false, false, 5, [], 1, ~U[2025-11-20 11:02:05Z], ~U[2026-01-30 05:54:45Z], ~U[2026-01-30 05:54:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mad fly | S03E08\n00:01:29 | The Magic Fly | S03E15\n00:02:58 | At Full Speed | S03E22\n00:04:19 | He Who Laughs Last, laughs Longest | S03E12\n00:05:48 | Pea supper | S03E01\n00:07:17 | Webrizon | S03E02\n00:08:46 | A Christmas Apple | S03E04\n00:10:15 | Like A Cannon Ball | S03E03\n00:11:44 | A Pea In The Hand Is Worth... | S03E05\n00:13:17 | Glue | S03E06\n00:14:54 | The Wicked Web | S03E07\n00:16:23 | The Cruel Cow in The Meadow | S03E09\n00:17:53 | Need for Speed | S03E10\n00:19:22 | Sow The Wind And Reap The Storm | S03E11\n00:21:00 | Fly Swatter | S03E13\n00:22:29 | Mosquito Net | S03E14\n00:23:58 | The Doughnut | S03E16\n00:25:31 | Ant On The Rocks | S03E17\n00:27:02 | The Artist | S03E18\n00:28:47 | Telecanetic | S03E19\n00:30:16 | Chocolate Fly | S03E23\n00:31:45 | A Dream Of Speed | S03E24\n00:33:14 | The Sled and the Ant | S03E25\n00:34:43 | Blunder | S03E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Magic #Spider #Fly #Winner #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly 🚕 Minuscule Marathon✨ 50' Compilation", "https://www.youtube.com/watch?v=BdpBsxt6z5I", "BdpBsxt6z5I", 2203, false, "/downloads/Miniscule Season 2/2025-11-20 Mad fly 🚕 Minuscule Marathon✨ 50' Compilation/Mad fly 🚕 Minuscule Marathon✨ 50' Compilation [BdpBsxt6z5I].mp4", false, 5, ~U[2025-11-20 11:02:05Z]] 22:54:45.822 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=478.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" = ?) [5] 22:54:45.822 [debug] QUERY OK source="media_profiles" db=0.4ms idle=40.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] 22:54:45.823 [debug] QUERY OK source="media_items" db=0.5ms idle=41.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 [101230] 22:54:45.824 [debug] Current batch of media processed. Will check again in 1000ms 22:54:45.857 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:46.825 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pollution | S02E60\n00:03:45 | Zzz zzz | S02E44\n00:07:16 | Sunburn | S02E40\n00:10:40 | The Annoying Neighbor | S02E28\n00:14:16 | Mission : BBQ | S02E09\n00:18:02 | Acrobatics | S02E16\n00:21:47 | The Mosquito Of The Caribbean | S02E57\n00:25:33 | Trapped | S02E64\n00:29:15 | Zzz In The Metro | S02E53\n00:32:51 | Labyrinth | S02E69\n00:36:36 | The Monster Of The Haunted Swamp | S02E37\n00:40:07 | Gather More to Pollinate More | S02E32\n00:43:52 | Microzilla | S02E07\n00:47:38 | Honey Fly | S02E08\n00:51:28 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pollution #Mosquito #City #Noise #mosquito #bedroom #sleeping #challenge #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 3337, "filename" => "/downloads/Miniscule Season 2/2025-11-25 Pollution | Minuscule | 70' Compilation/Pollution | Minuscule | 70' Compilation [W4uAWoVZClM].mp4", "id" => "W4uAWoVZClM", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=W4uAWoVZClM", "playlist_index" => 20, "timestamp" => 1764054027, "title" => "Pollution | Minuscule | 70' Compilation", "upload_date" => "20251125"} 22:54:46.826 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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 (?)) [5] 22:54:46.827 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:54:46.828 [debug] QUERY OK source="media_items" db=1.1ms idle=970.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-25 07:00:27Z], 5] 22:54:46.832 [debug] QUERY OK source="media_items" db=2.4ms idle=489.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pollution | S02E60\n00:03:45 | Zzz zzz | S02E44\n00:07:16 | Sunburn | S02E40\n00:10:40 | The Annoying Neighbor | S02E28\n00:14:16 | Mission : BBQ | S02E09\n00:18:02 | Acrobatics | S02E16\n00:21:47 | The Mosquito Of The Caribbean | S02E57\n00:25:33 | Trapped | S02E64\n00:29:15 | Zzz In The Metro | S02E53\n00:32:51 | Labyrinth | S02E69\n00:36:36 | The Monster Of The Haunted Swamp | S02E37\n00:40:07 | Gather More to Pollinate More | S02E32\n00:43:52 | Microzilla | S02E07\n00:47:38 | Honey Fly | S02E08\n00:51:28 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pollution #Mosquito #City #Noise #mosquito #bedroom #sleeping #challenge #Minuscule #nature #insects #ladybugs #animatedseries", "Pollution | Minuscule | 70' Compilation", "60f7a615-39f1-4ca3-9cad-26fdf2956a89", "https://www.youtube.com/watch?v=W4uAWoVZClM", "W4uAWoVZClM", 3337, false, 20, "/downloads/Miniscule Season 2/2025-11-25 Pollution | Minuscule | 70' Compilation/Pollution | Minuscule | 70' Compilation [W4uAWoVZClM].mp4", false, false, false, 5, [], 1, ~U[2025-11-25 07:00:27Z], ~U[2026-01-30 05:54:46Z], ~U[2026-01-30 05:54:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pollution | S02E60\n00:03:45 | Zzz zzz | S02E44\n00:07:16 | Sunburn | S02E40\n00:10:40 | The Annoying Neighbor | S02E28\n00:14:16 | Mission : BBQ | S02E09\n00:18:02 | Acrobatics | S02E16\n00:21:47 | The Mosquito Of The Caribbean | S02E57\n00:25:33 | Trapped | S02E64\n00:29:15 | Zzz In The Metro | S02E53\n00:32:51 | Labyrinth | S02E69\n00:36:36 | The Monster Of The Haunted Swamp | S02E37\n00:40:07 | Gather More to Pollinate More | S02E32\n00:43:52 | Microzilla | S02E07\n00:47:38 | Honey Fly | S02E08\n00:51:28 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pollution #Mosquito #City #Noise #mosquito #bedroom #sleeping #challenge #Minuscule #nature #insects #ladybugs #animatedseries", "Pollution | Minuscule | 70' Compilation", "https://www.youtube.com/watch?v=W4uAWoVZClM", "W4uAWoVZClM", 3337, false, "/downloads/Miniscule Season 2/2025-11-25 Pollution | Minuscule | 70' Compilation/Pollution | Minuscule | 70' Compilation [W4uAWoVZClM].mp4", false, 5, ~U[2025-11-25 07:00:27Z]] 22:54:46.833 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=486.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" = ?) [5] 22:54:46.833 [debug] QUERY OK source="media_profiles" db=0.3ms idle=6.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] 22:54:46.835 [debug] QUERY OK source="media_items" db=0.4ms idle=7.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 [101673] 22:54:46.835 [debug] Current batch of media processed. Will check again in 1000ms 22:54:47.836 [debug] Current batch of media processed. Will check again in 1000ms 22:54:48.837 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Gather More to Pollinate More | S02E32\n00:03:45 | The Chocolate Chase! | S02E19\n00:07:31 | Fly Hunting | S02E24\n00:11:04 | Turbo speed | S02E58\n00:14:29 | The Annoying Neighbor | S02E28\n00:18:05 | Away all boarders! | S02E41\n00:21:47 | Trapped | S02E64\n00:25:30 | The Grocery Store Incident | S02E39\n00:29:00 | Mission : BBQ | S02E09\n00:32:46 | The Butterfly Effect | S02E23\n00:36:08 | At Full Speed | S02E27\n00:39:52 | Hop On! | S02E25\n00:43:29 | If Only Lonely | S02E22\n00:47:15 | Zzz In The Metro | S02E53\n00:50:50 | Honey Fly | S02E08\n00:54:40 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#gather #pollinate #productivity #competition #chocolate #centipede #bees #wasps #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 3530, "filename" => "/downloads/Miniscule Season 2/2025-11-13 Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation/Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation [ooZmfVoI3SY].mp4", "id" => "ooZmfVoI3SY", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=ooZmfVoI3SY", "playlist_index" => 21, "timestamp" => 1763031702, "title" => "Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation", "upload_date" => "20251113"} 22:54:48.838 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=536.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" IN (?)) [5] 22:54:48.839 [debug] QUERY OK source="sources" db=0.4ms idle=538.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" = ?) [5] 22:54:48.841 [debug] QUERY OK source="media_items" db=1.1ms queue=0.1ms idle=538.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-13 11:01:42Z], 5] 22:54:48.845 [debug] QUERY OK source="media_items" db=2.6ms idle=498.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Gather More to Pollinate More | S02E32\n00:03:45 | The Chocolate Chase! | S02E19\n00:07:31 | Fly Hunting | S02E24\n00:11:04 | Turbo speed | S02E58\n00:14:29 | The Annoying Neighbor | S02E28\n00:18:05 | Away all boarders! | S02E41\n00:21:47 | Trapped | S02E64\n00:25:30 | The Grocery Store Incident | S02E39\n00:29:00 | Mission : BBQ | S02E09\n00:32:46 | The Butterfly Effect | S02E23\n00:36:08 | At Full Speed | S02E27\n00:39:52 | Hop On! | S02E25\n00:43:29 | If Only Lonely | S02E22\n00:47:15 | Zzz In The Metro | S02E53\n00:50:50 | Honey Fly | S02E08\n00:54:40 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#gather #pollinate #productivity #competition #chocolate #centipede #bees #wasps #Minuscule #nature #insects #ladybugs #animatedseries", "Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation", "b1b43505-d664-447e-bbbb-d30f7d163159", "https://www.youtube.com/watch?v=ooZmfVoI3SY", "ooZmfVoI3SY", 3530, false, 21, "/downloads/Miniscule Season 2/2025-11-13 Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation/Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation [ooZmfVoI3SY].mp4", false, false, false, 5, [], 1, ~U[2025-11-13 11:01:42Z], ~U[2026-01-30 05:54:48Z], ~U[2026-01-30 05:54:48Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Gather More to Pollinate More | S02E32\n00:03:45 | The Chocolate Chase! | S02E19\n00:07:31 | Fly Hunting | S02E24\n00:11:04 | Turbo speed | S02E58\n00:14:29 | The Annoying Neighbor | S02E28\n00:18:05 | Away all boarders! | S02E41\n00:21:47 | Trapped | S02E64\n00:25:30 | The Grocery Store Incident | S02E39\n00:29:00 | Mission : BBQ | S02E09\n00:32:46 | The Butterfly Effect | S02E23\n00:36:08 | At Full Speed | S02E27\n00:39:52 | Hop On! | S02E25\n00:43:29 | If Only Lonely | S02E22\n00:47:15 | Zzz In The Metro | S02E53\n00:50:50 | Honey Fly | S02E08\n00:54:40 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#gather #pollinate #productivity #competition #chocolate #centipede #bees #wasps #Minuscule #nature #insects #ladybugs #animatedseries", "Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation", "https://www.youtube.com/watch?v=ooZmfVoI3SY", "ooZmfVoI3SY", 3530, false, "/downloads/Miniscule Season 2/2025-11-13 Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation/Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation [ooZmfVoI3SY].mp4", false, 5, ~U[2025-11-13 11:01:42Z]] 22:54:48.846 [debug] QUERY OK source="sources" db=0.4ms idle=494.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" = ?) [5] 22:54:48.846 [debug] QUERY OK source="media_profiles" db=0.4ms idle=7.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] 22:54:48.848 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [100785] 22:54:48.848 [debug] Current batch of media processed. Will check again in 1000ms 22:54:49.849 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Yule log | S02E35\n00:03:45 | Rascals! | S02E38\n00:07:25 | Sand Castle | S02E49\n00:10:51 | White As Snow | S02E63\n00:14:28 | Down The Chimney | S02E42\n00:18:13 | To The Port Now! | S02E43\n00:21:41 | Ants On The Train | S02E52\n00:25:12 | Sausage Predator | S02E06\n00:28:58 | The Chocolate Chase! | S02E19\n00:32:43 | Mission : BBQ | S02E09\n00:36:29 | An Acorn Season | S02E05\n00:40:14 | It's a tie! | S02E67\n00:43:55 | Ladybugland | S02E62\n00:47:22 | Snow Fly | S02E51\n00:50:47 | Snow Carrot | S02E59\n00:54:25 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Yule #Christmas #fire #ants #battle #steal #leader #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 3527, "filename" => "/downloads/Miniscule Season 2/2025-12-16 The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️/The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️ [Lu76r0t06JQ].mp4", "id" => "Lu76r0t06JQ", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Lu76r0t06JQ", "playlist_index" => 22, "timestamp" => 1765868417, "title" => "The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️", "upload_date" => "20251216"} 22:54:49.850 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:54:49.851 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:54:49.852 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-16 07:00:17Z], 5] 22:54:49.856 [debug] QUERY OK source="media_items" db=2.4ms idle=506.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Yule log | S02E35\n00:03:45 | Rascals! | S02E38\n00:07:25 | Sand Castle | S02E49\n00:10:51 | White As Snow | S02E63\n00:14:28 | Down The Chimney | S02E42\n00:18:13 | To The Port Now! | S02E43\n00:21:41 | Ants On The Train | S02E52\n00:25:12 | Sausage Predator | S02E06\n00:28:58 | The Chocolate Chase! | S02E19\n00:32:43 | Mission : BBQ | S02E09\n00:36:29 | An Acorn Season | S02E05\n00:40:14 | It's a tie! | S02E67\n00:43:55 | Ladybugland | S02E62\n00:47:22 | Snow Fly | S02E51\n00:50:47 | Snow Carrot | S02E59\n00:54:25 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Yule #Christmas #fire #ants #battle #steal #leader #Minuscule #nature #insects #ladybugs #animatedseries", "The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️", "107abfe7-6293-4d92-aeec-605399816bde", "https://www.youtube.com/watch?v=Lu76r0t06JQ", "Lu76r0t06JQ", 3527, false, 22, "/downloads/Miniscule Season 2/2025-12-16 The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️/The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️ [Lu76r0t06JQ].mp4", false, false, false, 5, [], 1, ~U[2025-12-16 07:00:17Z], ~U[2026-01-30 05:54:49Z], ~U[2026-01-30 05:54:49Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Yule log | S02E35\n00:03:45 | Rascals! | S02E38\n00:07:25 | Sand Castle | S02E49\n00:10:51 | White As Snow | S02E63\n00:14:28 | Down The Chimney | S02E42\n00:18:13 | To The Port Now! | S02E43\n00:21:41 | Ants On The Train | S02E52\n00:25:12 | Sausage Predator | S02E06\n00:28:58 | The Chocolate Chase! | S02E19\n00:32:43 | Mission : BBQ | S02E09\n00:36:29 | An Acorn Season | S02E05\n00:40:14 | It's a tie! | S02E67\n00:43:55 | Ladybugland | S02E62\n00:47:22 | Snow Fly | S02E51\n00:50:47 | Snow Carrot | S02E59\n00:54:25 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Yule #Christmas #fire #ants #battle #steal #leader #Minuscule #nature #insects #ladybugs #animatedseries", "The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️", "https://www.youtube.com/watch?v=Lu76r0t06JQ", "Lu76r0t06JQ", 3527, false, "/downloads/Miniscule Season 2/2025-12-16 The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️/The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️ [Lu76r0t06JQ].mp4", false, 5, ~U[2025-12-16 07:00:17Z]] 22:54:49.857 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=502.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" = ?) [5] 22:54:49.857 [debug] QUERY OK source="media_profiles" db=0.3ms idle=6.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] 22:54:49.858 [debug] QUERY OK source="media_items" db=0.5ms idle=6.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 [103098] 22:54:49.859 [debug] Current batch of media processed. Will check again in 1000ms 22:54:50.357 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769752490357154551,"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"]} 22:54:50.358 [debug] QUERY OK source="media_items" db=0.4ms idle=500.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" = ?) [106309] 22:54:50.358 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:54:50.359 [debug] QUERY OK source="sources" db=0.3ms idle=500.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" = ?) [5] 22:54:50.359 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=500.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] 22:54:50.360 [debug] QUERY OK source="media_items" db=0.4ms idle=9.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 [106309] 22:54:50.383 [debug] QUERY OK source="media_metadata" db=0.1ms idle=26.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" = ?) [106309] 22:54:50.383 [debug] QUERY OK source="media_profiles" db=0.2ms idle=25.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] 22:54:50.384 [debug] QUERY OK source="settings" db=0.1ms idle=25.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 [] 22:54:50.384 [debug] QUERY OK source="settings" db=0.2ms idle=24.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 [] 22:54:50.385 [debug] Running yt-dlp command for action: get_downloadable_status 22:54:50.405 [debug] QUERY OK source="settings" db=0.2ms idle=44.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 [] 22:54:50.405 [debug] QUERY OK source="settings" db=0.2ms idle=22.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 [] 22:54:50.406 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:54:50.406 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/2b/f2/2bf23c52bb3558125df2bd761e446158e88b970e62d8138180c8187c134a0f02.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:54:50.860 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Pathetic She'Nut'Igan | S02E12\n00:03:45 | Summer Hat | S02E48\n00:07:27 | The Stubborn Spider | S02E04\n00:11:12 | Brushing | S02E46\n00:14:44 | The Grocery Store Racketeer | S02E50\n00:18:20 | The Hat Of The Medusa | S02E17\n00:22:06 | Honey Fly | S02E08\n00:25:56 | Ladybugland | S02E62\n00:29:23 | Refrigerated | S02E65\n00:32:58 | Microzilla | S02E07\n00:36:43 | Fly Hunting | S02E24\n00:40:17 | Spider Driver | S02E36\n00:43:58 | To The Port Now! | S02E43\n00:47:26 | The Chocolate Chase! | S02E19\n00:51:11 | If Only Lonely | S02E22\n00:54:57 | Ants On The Train | S02E52\n00:58:28 | Labyrinth | S02E69\n01:02:14 | Spider from the Depths | S02E31\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pathetic #Spider #Invent #Strategies #summer #hat #fly #spider #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 3987, "filename" => "/downloads/Miniscule Season 2/2025-11-06 A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation/A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation [yOHwnMxTeok].mp4", "id" => "yOHwnMxTeok", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=yOHwnMxTeok", "playlist_index" => 23, "timestamp" => 1762426912, "title" => "A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation", "upload_date" => "20251106"} 22:54:50.861 [debug] QUERY OK source="sources" db=0.5ms idle=476.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" IN (?)) [5] 22:54:50.862 [debug] QUERY OK source="sources" db=0.4ms idle=477.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" = ?) [5] 22:54:50.864 [debug] QUERY OK source="media_items" db=1.1ms idle=457.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-06 11:01:52Z], 5] 22:54:50.986 [debug] QUERY OK source="media_items" db=121.2ms idle=458.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Pathetic She'Nut'Igan | S02E12\n00:03:45 | Summer Hat | S02E48\n00:07:27 | The Stubborn Spider | S02E04\n00:11:12 | Brushing | S02E46\n00:14:44 | The Grocery Store Racketeer | S02E50\n00:18:20 | The Hat Of The Medusa | S02E17\n00:22:06 | Honey Fly | S02E08\n00:25:56 | Ladybugland | S02E62\n00:29:23 | Refrigerated | S02E65\n00:32:58 | Microzilla | S02E07\n00:36:43 | Fly Hunting | S02E24\n00:40:17 | Spider Driver | S02E36\n00:43:58 | To The Port Now! | S02E43\n00:47:26 | The Chocolate Chase! | S02E19\n00:51:11 | If Only Lonely | S02E22\n00:54:57 | Ants On The Train | S02E52\n00:58:28 | Labyrinth | S02E69\n01:02:14 | Spider from the Depths | S02E31\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pathetic #Spider #Invent #Strategies #summer #hat #fly #spider #Minuscule #nature #insects #ladybugs #animatedseries", "A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation", "0e4a9d23-f326-4fb1-881f-a2840dd509d3", "https://www.youtube.com/watch?v=yOHwnMxTeok", "yOHwnMxTeok", 3987, false, 23, "/downloads/Miniscule Season 2/2025-11-06 A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation/A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation [yOHwnMxTeok].mp4", false, false, false, 5, [], 1, ~U[2025-11-06 11:01:52Z], ~U[2026-01-30 05:54:50Z], ~U[2026-01-30 05:54:50Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Pathetic She'Nut'Igan | S02E12\n00:03:45 | Summer Hat | S02E48\n00:07:27 | The Stubborn Spider | S02E04\n00:11:12 | Brushing | S02E46\n00:14:44 | The Grocery Store Racketeer | S02E50\n00:18:20 | The Hat Of The Medusa | S02E17\n00:22:06 | Honey Fly | S02E08\n00:25:56 | Ladybugland | S02E62\n00:29:23 | Refrigerated | S02E65\n00:32:58 | Microzilla | S02E07\n00:36:43 | Fly Hunting | S02E24\n00:40:17 | Spider Driver | S02E36\n00:43:58 | To The Port Now! | S02E43\n00:47:26 | The Chocolate Chase! | S02E19\n00:51:11 | If Only Lonely | S02E22\n00:54:57 | Ants On The Train | S02E52\n00:58:28 | Labyrinth | S02E69\n01:02:14 | Spider from the Depths | S02E31\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pathetic #Spider #Invent #Strategies #summer #hat #fly #spider #Minuscule #nature #insects #ladybugs #animatedseries", "A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation", "https://www.youtube.com/watch?v=yOHwnMxTeok", "yOHwnMxTeok", 3987, false, "/downloads/Miniscule Season 2/2025-11-06 A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation/A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation [yOHwnMxTeok].mp4", false, 5, ~U[2025-11-06 11:01:52Z]] 22:54:50.987 [debug] QUERY OK source="sources" db=0.4ms idle=580.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" = ?) [5] 22:54:50.988 [debug] QUERY OK source="media_profiles" db=0.4ms idle=126.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] 22:54:50.989 [debug] QUERY OK source="media_items" db=0.6ms idle=126.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 [100347] 22:54:50.989 [debug] Current batch of media processed. Will check again in 1000ms 22:54:51.990 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Black Slope For Gastropod Skiers | S02E55\n00:03:45 | Night of the Gastropods | S02E18\n00:07:31 | Snow Carrot | S02E59\n00:11:09 | Twelve Angry Snails | S02E66\n00:14:42 | Thirsty | S02E29\n00:18:14 | The Long Road | S02E34\n00:21:57 | Snow Fly | S02E51\n00:25:21 | It's a tie! | S02E67\n00:29:02 | The Vegetable Garden | S02E10\n00:32:46 | Away all boarders! | S02E41\n00:36:29 | Down The Chimney | S02E42\n00:40:14 | White As Snow | S02E63\n00:43:51 | Sleep Walker | S02E68\n00:47:15 | Sand Castle | S02E49\n00:50:42 | At Full Speed | S02E27\n00:54:25 | Homeless | S02E02\n00:58:13 | The Hat Of The Medusa | S02E17\n01:01:59 | Metamorphosis | S02E61\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Black #Slope #Skiers #Gastropod #garden #snail #war #salad #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 3968, "filename" => "/downloads/Miniscule Season 2/2025-11-04 Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation/Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation [yTR3JnYV6Tk].mp4", "id" => "yTR3JnYV6Tk", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=yTR3JnYV6Tk", "playlist_index" => 24, "timestamp" => 1762239653, "title" => "Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation", "upload_date" => "20251104"} 22:54:51.991 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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 (?)) [5] 22:54:51.992 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:54:51.993 [debug] QUERY OK source="media_items" db=0.8ms idle=1002.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-04 07:00:53Z], 5] 22:54:52.582 [debug] QUERY OK source="media_items" db=587.7ms idle=641.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Black Slope For Gastropod Skiers | S02E55\n00:03:45 | Night of the Gastropods | S02E18\n00:07:31 | Snow Carrot | S02E59\n00:11:09 | Twelve Angry Snails | S02E66\n00:14:42 | Thirsty | S02E29\n00:18:14 | The Long Road | S02E34\n00:21:57 | Snow Fly | S02E51\n00:25:21 | It's a tie! | S02E67\n00:29:02 | The Vegetable Garden | S02E10\n00:32:46 | Away all boarders! | S02E41\n00:36:29 | Down The Chimney | S02E42\n00:40:14 | White As Snow | S02E63\n00:43:51 | Sleep Walker | S02E68\n00:47:15 | Sand Castle | S02E49\n00:50:42 | At Full Speed | S02E27\n00:54:25 | Homeless | S02E02\n00:58:13 | The Hat Of The Medusa | S02E17\n01:01:59 | Metamorphosis | S02E61\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Black #Slope #Skiers #Gastropod #garden #snail #war #salad #Minuscule #nature #insects #ladybugs #animatedseries", "Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation", "f7d29744-ed8e-477c-bd76-a45f2a90011b", "https://www.youtube.com/watch?v=yTR3JnYV6Tk", "yTR3JnYV6Tk", 3968, false, 24, "/downloads/Miniscule Season 2/2025-11-04 Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation/Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation [yTR3JnYV6Tk].mp4", false, false, false, 5, [], 1, ~U[2025-11-04 07:00:53Z], ~U[2026-01-30 05:54:51Z], ~U[2026-01-30 05:54:51Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Black Slope For Gastropod Skiers | S02E55\n00:03:45 | Night of the Gastropods | S02E18\n00:07:31 | Snow Carrot | S02E59\n00:11:09 | Twelve Angry Snails | S02E66\n00:14:42 | Thirsty | S02E29\n00:18:14 | The Long Road | S02E34\n00:21:57 | Snow Fly | S02E51\n00:25:21 | It's a tie! | S02E67\n00:29:02 | The Vegetable Garden | S02E10\n00:32:46 | Away all boarders! | S02E41\n00:36:29 | Down The Chimney | S02E42\n00:40:14 | White As Snow | S02E63\n00:43:51 | Sleep Walker | S02E68\n00:47:15 | Sand Castle | S02E49\n00:50:42 | At Full Speed | S02E27\n00:54:25 | Homeless | S02E02\n00:58:13 | The Hat Of The Medusa | S02E17\n01:01:59 | Metamorphosis | S02E61\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Black #Slope #Skiers #Gastropod #garden #snail #war #salad #Minuscule #nature #insects #ladybugs #animatedseries", "Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation", "https://www.youtube.com/watch?v=yTR3JnYV6Tk", "yTR3JnYV6Tk", 3968, false, "/downloads/Miniscule Season 2/2025-11-04 Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation/Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation [yTR3JnYV6Tk].mp4", false, 5, ~U[2025-11-04 07:00:53Z]] 22:54:52.583 [debug] QUERY OK source="sources" db=0.2ms idle=591.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" = ?) [5] 22:54:52.584 [debug] QUERY OK source="media_profiles" db=0.2ms idle=591.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] 22:54:52.585 [debug] QUERY OK source="media_items" db=0.5ms idle=591.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 [100348] 22:54:52.585 [debug] Current batch of media processed. Will check again in 1000ms 22:54:53.586 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Hop On! | S02E25\n00:03:37 | Zzz In The Metro | S02E53\n00:07:12 | Honey Fly | S02E08\n00:11:02 | Fly Hunting | S02E24\n00:14:36 | The Butterfly Effect | S02E23\n00:17:58 | Valentine's Day | S02E15\n00:21:44 | Snow Fly | S02E51\n00:25:08 | Turbo speed | S02E58\n00:28:33 | Metamorphosis | S02E61\n00:32:03 | At Full Speed | S02E27\n00:35:47 | Trapped | S02E64\n00:39:30 | The Chocolate Chase! | S02E19\n00:43:15 | Sleep Walker | S02E68\n00:46:40 | Down The Chimney | S02E42\n00:50:25 | If Only Lonely | S02E22\n00:54:11 | The Long Road | S02E34\n00:57:54 | The Wing Case | S02E01\n01:01:39 | Love Apple | S02E45\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #butterfly #traffic #crossroad #ladybug #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 3957, "filename" => "/downloads/Miniscule Season 2/2025-11-08 Hop On! | Minuscule 🍃 85' Compilation/Hop On! | Minuscule 🍃 85' Compilation [Es5UBeusgdQ].mp4", "id" => "Es5UBeusgdQ", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Es5UBeusgdQ", "playlist_index" => 25, "timestamp" => 1762628426, "title" => "Hop On! | Minuscule 🍃 85' Compilation", "upload_date" => "20251108"} 22:54:53.587 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" IN (?)) [5] 22:54:53.588 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" = ?) [5] 22:54:53.589 [debug] QUERY OK source="media_items" db=1.0ms idle=1003.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-08 19:00:26Z], 5] 22:54:53.600 [debug] QUERY OK source="media_items" db=10.0ms queue=0.2ms idle=1001.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Hop On! | S02E25\n00:03:37 | Zzz In The Metro | S02E53\n00:07:12 | Honey Fly | S02E08\n00:11:02 | Fly Hunting | S02E24\n00:14:36 | The Butterfly Effect | S02E23\n00:17:58 | Valentine's Day | S02E15\n00:21:44 | Snow Fly | S02E51\n00:25:08 | Turbo speed | S02E58\n00:28:33 | Metamorphosis | S02E61\n00:32:03 | At Full Speed | S02E27\n00:35:47 | Trapped | S02E64\n00:39:30 | The Chocolate Chase! | S02E19\n00:43:15 | Sleep Walker | S02E68\n00:46:40 | Down The Chimney | S02E42\n00:50:25 | If Only Lonely | S02E22\n00:54:11 | The Long Road | S02E34\n00:57:54 | The Wing Case | S02E01\n01:01:39 | Love Apple | S02E45\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #butterfly #traffic #crossroad #ladybug #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Hop On! | Minuscule 🍃 85' Compilation", "16d01b77-290a-4734-91b6-4fb0d797a746", "https://www.youtube.com/watch?v=Es5UBeusgdQ", "Es5UBeusgdQ", 3957, false, 25, "/downloads/Miniscule Season 2/2025-11-08 Hop On! | Minuscule 🍃 85' Compilation/Hop On! | Minuscule 🍃 85' Compilation [Es5UBeusgdQ].mp4", false, false, false, 5, [], 1, ~U[2025-11-08 19:00:26Z], ~U[2026-01-30 05:54:53Z], ~U[2026-01-30 05:54:53Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Hop On! | S02E25\n00:03:37 | Zzz In The Metro | S02E53\n00:07:12 | Honey Fly | S02E08\n00:11:02 | Fly Hunting | S02E24\n00:14:36 | The Butterfly Effect | S02E23\n00:17:58 | Valentine's Day | S02E15\n00:21:44 | Snow Fly | S02E51\n00:25:08 | Turbo speed | S02E58\n00:28:33 | Metamorphosis | S02E61\n00:32:03 | At Full Speed | S02E27\n00:35:47 | Trapped | S02E64\n00:39:30 | The Chocolate Chase! | S02E19\n00:43:15 | Sleep Walker | S02E68\n00:46:40 | Down The Chimney | S02E42\n00:50:25 | If Only Lonely | S02E22\n00:54:11 | The Long Road | S02E34\n00:57:54 | The Wing Case | S02E01\n01:01:39 | Love Apple | S02E45\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #butterfly #traffic #crossroad #ladybug #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Hop On! | Minuscule 🍃 85' Compilation", "https://www.youtube.com/watch?v=Es5UBeusgdQ", "Es5UBeusgdQ", 3957, false, "/downloads/Miniscule Season 2/2025-11-08 Hop On! | Minuscule 🍃 85' Compilation/Hop On! | Minuscule 🍃 85' Compilation [Es5UBeusgdQ].mp4", false, 5, ~U[2025-11-08 19:00:26Z]] 22:54:53.601 [debug] QUERY OK source="sources" db=0.3ms idle=13.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" = ?) [5] 22:54:53.602 [debug] QUERY OK source="media_profiles" db=0.3ms idle=13.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] 22:54:53.603 [debug] QUERY OK source="media_items" db=0.5ms idle=13.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 [100788] 22:54:53.603 [debug] Current batch of media processed. Will check again in 1000ms 22:54:54.408 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/2b/f2/2bf23c52bb3558125df2bd761e446158e88b970e62d8138180c8187c134a0f02.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 22:54:54.408 [debug] Running yt-dlp command for action: download 22:54:54.409 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=808.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 [] 22:54:54.409 [debug] QUERY OK source="settings" db=0.3ms idle=808.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 [] 22:54:54.410 [debug] QUERY OK source="settings" db=0.2ms idle=808.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 [] 22:54:54.411 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/76/49/7649b38e4e782b44a780f81317bd0a172656c2504adc627c0c9d3298746032fa.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:54:54.604 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Romeo and Antiet | S03E27\n00:12:21 | Night Of The Mandibles | S03E28\n00:39:06 | Ant On The Rocks | S03E17\n00:40:37 | Sow The Wind And Reap The Storm | S03E11\n00:42:15 | A Pea In The Hand Is Worth... | S03E05\n00:43:47 | The Magic Fly | S03E15\n00:45:16 | Blunder | S03E26\n00:46:56 | The Sled and the Ant | S03E25\n00:48:25 | Telecanetic | S03E19\n00:49:54 | The Artist | S03E18\n00:51:39 | A Dream Of Speed | S03E24\n00:53:09 | Mosquito Net | S03E14\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #conflict #spying #leadership #insects #entomologist #capture #ladybird #Minuscule #nature #ladybugs #animatedseries", "duration" => 3297, "filename" => "/downloads/Miniscule Season 2/2025-11-22 Romeo and Antiet | Minuscule Specials | 60' Compilation/Romeo and Antiet | Minuscule Specials | 60' Compilation [wo0P_r_WzPU].mp4", "id" => "wo0P_r_WzPU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=wo0P_r_WzPU", "playlist_index" => 26, "timestamp" => 1763838063, "title" => "Romeo and Antiet | Minuscule Specials | 60' Compilation", "upload_date" => "20251122"} 22:54:54.605 [debug] QUERY OK source="sources" db=0.2ms idle=195.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" IN (?)) [5] 22:54:54.605 [debug] QUERY OK source="sources" db=0.3ms idle=195.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" = ?) [5] 22:54:54.606 [debug] QUERY OK source="media_items" db=0.8ms idle=195.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-22 19:01:03Z], 5] 22:54:54.609 [debug] QUERY OK source="media_items" db=1.9ms idle=20.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Romeo and Antiet | S03E27\n00:12:21 | Night Of The Mandibles | S03E28\n00:39:06 | Ant On The Rocks | S03E17\n00:40:37 | Sow The Wind And Reap The Storm | S03E11\n00:42:15 | A Pea In The Hand Is Worth... | S03E05\n00:43:47 | The Magic Fly | S03E15\n00:45:16 | Blunder | S03E26\n00:46:56 | The Sled and the Ant | S03E25\n00:48:25 | Telecanetic | S03E19\n00:49:54 | The Artist | S03E18\n00:51:39 | A Dream Of Speed | S03E24\n00:53:09 | Mosquito Net | S03E14\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #conflict #spying #leadership #insects #entomologist #capture #ladybird #Minuscule #nature #ladybugs #animatedseries", "Romeo and Antiet | Minuscule Specials | 60' Compilation", "40c00f8a-d9ad-4f1c-a661-27b897b6a7de", "https://www.youtube.com/watch?v=wo0P_r_WzPU", "wo0P_r_WzPU", 3297, false, 26, "/downloads/Miniscule Season 2/2025-11-22 Romeo and Antiet | Minuscule Specials | 60' Compilation/Romeo and Antiet | Minuscule Specials | 60' Compilation [wo0P_r_WzPU].mp4", false, false, false, 5, [], 1, ~U[2025-11-22 19:01:03Z], ~U[2026-01-30 05:54:54Z], ~U[2026-01-30 05:54:54Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Romeo and Antiet | S03E27\n00:12:21 | Night Of The Mandibles | S03E28\n00:39:06 | Ant On The Rocks | S03E17\n00:40:37 | Sow The Wind And Reap The Storm | S03E11\n00:42:15 | A Pea In The Hand Is Worth... | S03E05\n00:43:47 | The Magic Fly | S03E15\n00:45:16 | Blunder | S03E26\n00:46:56 | The Sled and the Ant | S03E25\n00:48:25 | Telecanetic | S03E19\n00:49:54 | The Artist | S03E18\n00:51:39 | A Dream Of Speed | S03E24\n00:53:09 | Mosquito Net | S03E14\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #conflict #spying #leadership #insects #entomologist #capture #ladybird #Minuscule #nature #ladybugs #animatedseries", "Romeo and Antiet | Minuscule Specials | 60' Compilation", "https://www.youtube.com/watch?v=wo0P_r_WzPU", "wo0P_r_WzPU", 3297, false, "/downloads/Miniscule Season 2/2025-11-22 Romeo and Antiet | Minuscule Specials | 60' Compilation/Romeo and Antiet | Minuscule Specials | 60' Compilation [wo0P_r_WzPU].mp4", false, 5, ~U[2025-11-22 19:01:03Z]] 22:54:54.610 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=17.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" = ?) [5] 22:54:54.611 [debug] QUERY OK source="media_profiles" db=0.3ms idle=5.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] 22:54:54.612 [debug] QUERY OK source="media_items" db=0.3ms idle=5.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 [101678] 22:54:54.612 [debug] Current batch of media processed. Will check again in 1000ms 22:54:55.613 [debug] Current batch of media processed. Will check again in 1000ms 22:54:56.614 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Homeless | S02E02\n00:03:47 | The Housing Plant Project | S02E26\n00:07:24 | The Annoying Neighbor | S02E28\n00:11:00 | Love Apple | S02E45\n00:14:39 | Trapped | S02E64\n00:18:22 | A Butterfly's Nightmare | S02E20\n00:21:39 | The Iron Monster | S02E33\n00:25:12 | Metamorphosis | S02E61\n00:28:43 | Beehive On A Troll | S02E56\n00:32:13 | The Wing Case | S02E01\n00:35:59 | The Vegetable Garden | S02E10\n00:39:43 | Away all boarders! | S02E41\n00:43:26 | If Only Lonely | S02E22\n00:47:11 | The Hat Of The Medusa | S02E17\n00:50:57 | An Acorn Season | S02E05\n00:54:42 | Patatas Fritas | S02E21\n00:58:28 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Caterpillar #Refuge #Insects #Homeless #caterpillar #plant #winter #competition #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 3772, "filename" => "/downloads/Miniscule Season 2/2025-10-28 Homeless 🎃 Minuscule 🍃 80' Compilation/Homeless 🎃 Minuscule 🍃 80' Compilation [xQPQfuEUDH0].mp4", "id" => "xQPQfuEUDH0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=xQPQfuEUDH0", "playlist_index" => 27, "timestamp" => 1761663727, "title" => "Homeless 🎃 Minuscule 🍃 80' Compilation", "upload_date" => "20251028"} 22:54:56.615 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=313.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 (?)) [5] 22:54:56.616 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=314.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" = ?) [5] 22:54:56.617 [debug] QUERY OK source="media_items" db=0.9ms idle=315.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-28 15:02:07Z], 5] 22:54:56.638 [debug] QUERY OK source="media_items" db=19.4ms idle=27.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Homeless | S02E02\n00:03:47 | The Housing Plant Project | S02E26\n00:07:24 | The Annoying Neighbor | S02E28\n00:11:00 | Love Apple | S02E45\n00:14:39 | Trapped | S02E64\n00:18:22 | A Butterfly's Nightmare | S02E20\n00:21:39 | The Iron Monster | S02E33\n00:25:12 | Metamorphosis | S02E61\n00:28:43 | Beehive On A Troll | S02E56\n00:32:13 | The Wing Case | S02E01\n00:35:59 | The Vegetable Garden | S02E10\n00:39:43 | Away all boarders! | S02E41\n00:43:26 | If Only Lonely | S02E22\n00:47:11 | The Hat Of The Medusa | S02E17\n00:50:57 | An Acorn Season | S02E05\n00:54:42 | Patatas Fritas | S02E21\n00:58:28 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Caterpillar #Refuge #Insects #Homeless #caterpillar #plant #winter #competition #Minuscule #nature #insects #ladybugs #animatedseries", "Homeless 🎃 Minuscule 🍃 80' Compilation", "a42e2d86-503a-4899-b2ba-044c83c01fed", "https://www.youtube.com/watch?v=xQPQfuEUDH0", "xQPQfuEUDH0", 3772, false, 27, "/downloads/Miniscule Season 2/2025-10-28 Homeless 🎃 Minuscule 🍃 80' Compilation/Homeless 🎃 Minuscule 🍃 80' Compilation [xQPQfuEUDH0].mp4", false, false, false, 5, [], 1, ~U[2025-10-28 15:02:07Z], ~U[2026-01-30 05:54:56Z], ~U[2026-01-30 05:54:56Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Homeless | S02E02\n00:03:47 | The Housing Plant Project | S02E26\n00:07:24 | The Annoying Neighbor | S02E28\n00:11:00 | Love Apple | S02E45\n00:14:39 | Trapped | S02E64\n00:18:22 | A Butterfly's Nightmare | S02E20\n00:21:39 | The Iron Monster | S02E33\n00:25:12 | Metamorphosis | S02E61\n00:28:43 | Beehive On A Troll | S02E56\n00:32:13 | The Wing Case | S02E01\n00:35:59 | The Vegetable Garden | S02E10\n00:39:43 | Away all boarders! | S02E41\n00:43:26 | If Only Lonely | S02E22\n00:47:11 | The Hat Of The Medusa | S02E17\n00:50:57 | An Acorn Season | S02E05\n00:54:42 | Patatas Fritas | S02E21\n00:58:28 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Caterpillar #Refuge #Insects #Homeless #caterpillar #plant #winter #competition #Minuscule #nature #insects #ladybugs #animatedseries", "Homeless 🎃 Minuscule 🍃 80' Compilation", "https://www.youtube.com/watch?v=xQPQfuEUDH0", "xQPQfuEUDH0", 3772, false, "/downloads/Miniscule Season 2/2025-10-28 Homeless 🎃 Minuscule 🍃 80' Compilation/Homeless 🎃 Minuscule 🍃 80' Compilation [xQPQfuEUDH0].mp4", false, 5, ~U[2025-10-28 15:02:07Z]] 22:54:56.639 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=41.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" = ?) [5] 22:54:56.640 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=24.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] 22:54:56.641 [debug] QUERY OK source="media_items" db=0.6ms idle=24.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 [99915] 22:54:56.641 [debug] Current batch of media processed. Will check again in 1000ms 22:54:57.642 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | High voltage | S02E30\n00:03:34 | Spider Driver | S02E36\n00:07:15 | Labyrinth | S02E69\n00:11:01 | Bzzaping | S02E03\n00:14:48 | Spider from the Depths | S02E31\n00:18:22 | Refrigerated | S02E65\n00:21:57 | Brushing | S02E46\n00:25:29 | Ladybugland | S02E62\n00:28:57 | Ants On The Train | S02E52\n00:32:28 | Snow Fly | S02E51\n00:35:53 | The Stubborn Spider | S02E04\n00:39:38 | A Pathetic She'Nut'Igan | S02E12\n00:43:24 | Fly Hunting | S02E24\n00:46:57 | Turbo speed | S02E58\n00:50:22 | The Iron Monster | S02E33\n00:53:55 | Summer Hat | S02E48\n00:57:37 | Microzilla | S02E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#electricity #spider #fly #danger #flies #ladybug #car #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 3721, "filename" => "/downloads/Miniscule Season 2/2025-11-01 High voltage | Minuscule 🍃 80' Compilation/High voltage | Minuscule 🍃 80' Compilation [UXxEZXNs1RM].mp4", "id" => "UXxEZXNs1RM", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=UXxEZXNs1RM", "playlist_index" => 28, "timestamp" => 1762023634, "title" => "High voltage | Minuscule 🍃 80' Compilation", "upload_date" => "20251101"} 22:54:57.643 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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 (?)) [5] 22:54:57.644 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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" = ?) [5] 22:54:57.646 [debug] QUERY OK source="media_items" db=1.0ms queue=0.1ms idle=1003.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-01 19:00:34Z], 5] 22:54:57.649 [debug] QUERY OK source="media_items" db=2.4ms idle=53.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | High voltage | S02E30\n00:03:34 | Spider Driver | S02E36\n00:07:15 | Labyrinth | S02E69\n00:11:01 | Bzzaping | S02E03\n00:14:48 | Spider from the Depths | S02E31\n00:18:22 | Refrigerated | S02E65\n00:21:57 | Brushing | S02E46\n00:25:29 | Ladybugland | S02E62\n00:28:57 | Ants On The Train | S02E52\n00:32:28 | Snow Fly | S02E51\n00:35:53 | The Stubborn Spider | S02E04\n00:39:38 | A Pathetic She'Nut'Igan | S02E12\n00:43:24 | Fly Hunting | S02E24\n00:46:57 | Turbo speed | S02E58\n00:50:22 | The Iron Monster | S02E33\n00:53:55 | Summer Hat | S02E48\n00:57:37 | Microzilla | S02E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#electricity #spider #fly #danger #flies #ladybug #car #Minuscule #nature #insects #ladybugs #animatedseries", "High voltage | Minuscule 🍃 80' Compilation", "d659d5de-179d-4911-90ff-7af1ec54158f", "https://www.youtube.com/watch?v=UXxEZXNs1RM", "UXxEZXNs1RM", 3721, false, 28, "/downloads/Miniscule Season 2/2025-11-01 High voltage | Minuscule 🍃 80' Compilation/High voltage | Minuscule 🍃 80' Compilation [UXxEZXNs1RM].mp4", false, false, false, 5, [], 1, ~U[2025-11-01 19:00:34Z], ~U[2026-01-30 05:54:57Z], ~U[2026-01-30 05:54:57Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | High voltage | S02E30\n00:03:34 | Spider Driver | S02E36\n00:07:15 | Labyrinth | S02E69\n00:11:01 | Bzzaping | S02E03\n00:14:48 | Spider from the Depths | S02E31\n00:18:22 | Refrigerated | S02E65\n00:21:57 | Brushing | S02E46\n00:25:29 | Ladybugland | S02E62\n00:28:57 | Ants On The Train | S02E52\n00:32:28 | Snow Fly | S02E51\n00:35:53 | The Stubborn Spider | S02E04\n00:39:38 | A Pathetic She'Nut'Igan | S02E12\n00:43:24 | Fly Hunting | S02E24\n00:46:57 | Turbo speed | S02E58\n00:50:22 | The Iron Monster | S02E33\n00:53:55 | Summer Hat | S02E48\n00:57:37 | Microzilla | S02E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#electricity #spider #fly #danger #flies #ladybug #car #Minuscule #nature #insects #ladybugs #animatedseries", "High voltage | Minuscule 🍃 80' Compilation", "https://www.youtube.com/watch?v=UXxEZXNs1RM", "UXxEZXNs1RM", 3721, false, "/downloads/Miniscule Season 2/2025-11-01 High voltage | Minuscule 🍃 80' Compilation/High voltage | Minuscule 🍃 80' Compilation [UXxEZXNs1RM].mp4", false, 5, ~U[2025-11-01 19:00:34Z]] 22:54:57.650 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=51.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" = ?) [5] 22:54:57.651 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=7.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] 22:54:57.653 [debug] QUERY OK source="media_items" db=0.5ms idle=7.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 [100350] 22:54:57.653 [debug] Current batch of media processed. Will check again in 1000ms 22:54:58.654 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Monster Of The Haunted Swamp | S02E37\n00:03:30 | The Iron Monster | S02E33\n00:07:04 | The Mosquito Of The Caribbean | S02E57\n00:10:49 | Microzilla | S02E07\n00:14:35 | The Hat Of The Medusa | S02E17\n00:18:20 | Zzz zzz | S02E44\n00:21:51 | Ladybugland | S02E62\n00:25:18 | Mission : BBQ | S02E09\n00:29:04 | Homeless | S02E02\n00:32:51 | Spider from the Depths | S02E31\n00:36:26 | Night of the Gastropods | S02E18\n00:40:11 | Sausage Predator | S02E06\n00:43:57 | The Annoying Neighbor | S02E28\n00:47:33 | Summer Hat | S02E48\n00:51:14 | An Acorn Season | S02E05\n00:55:00 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Monster #Swamp #Insects #Sounds #Iron #Panic #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 3564, "filename" => "/downloads/Miniscule Season 2/2025-10-23 The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation/The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation [N5cGHceTqJU].mp4", "id" => "N5cGHceTqJU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=N5cGHceTqJU", "playlist_index" => 29, "timestamp" => 1761213648, "title" => "The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation", "upload_date" => "20251023"} 22:54:58.655 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" IN (?)) [5] 22:54:58.656 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" = ?) [5] 22:54:58.657 [debug] QUERY OK source="media_items" db=1.0ms idle=1003.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-23 10:00:48Z], 5] 22:54:58.687 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/76/49/7649b38e4e782b44a780f81317bd0a172656c2504adc627c0c9d3298746032fa.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 22:54:58.688 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 22:54:58.736 [debug] QUERY OK source="media_items" db=77.9ms idle=63.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Monster Of The Haunted Swamp | S02E37\n00:03:30 | The Iron Monster | S02E33\n00:07:04 | The Mosquito Of The Caribbean | S02E57\n00:10:49 | Microzilla | S02E07\n00:14:35 | The Hat Of The Medusa | S02E17\n00:18:20 | Zzz zzz | S02E44\n00:21:51 | Ladybugland | S02E62\n00:25:18 | Mission : BBQ | S02E09\n00:29:04 | Homeless | S02E02\n00:32:51 | Spider from the Depths | S02E31\n00:36:26 | Night of the Gastropods | S02E18\n00:40:11 | Sausage Predator | S02E06\n00:43:57 | The Annoying Neighbor | S02E28\n00:47:33 | Summer Hat | S02E48\n00:51:14 | An Acorn Season | S02E05\n00:55:00 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Monster #Swamp #Insects #Sounds #Iron #Panic #Minuscule #nature #insects #ladybugs #animatedseries", "The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation", "56a32c3a-908a-4454-ad50-76b4a9dfc621", "https://www.youtube.com/watch?v=N5cGHceTqJU", "N5cGHceTqJU", 3564, false, 29, "/downloads/Miniscule Season 2/2025-10-23 The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation/The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation [N5cGHceTqJU].mp4", false, false, false, 5, [], 1, ~U[2025-10-23 10:00:48Z], ~U[2026-01-30 05:54:58Z], ~U[2026-01-30 05:54:58Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Monster Of The Haunted Swamp | S02E37\n00:03:30 | The Iron Monster | S02E33\n00:07:04 | The Mosquito Of The Caribbean | S02E57\n00:10:49 | Microzilla | S02E07\n00:14:35 | The Hat Of The Medusa | S02E17\n00:18:20 | Zzz zzz | S02E44\n00:21:51 | Ladybugland | S02E62\n00:25:18 | Mission : BBQ | S02E09\n00:29:04 | Homeless | S02E02\n00:32:51 | Spider from the Depths | S02E31\n00:36:26 | Night of the Gastropods | S02E18\n00:40:11 | Sausage Predator | S02E06\n00:43:57 | The Annoying Neighbor | S02E28\n00:47:33 | Summer Hat | S02E48\n00:51:14 | An Acorn Season | S02E05\n00:55:00 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Monster #Swamp #Insects #Sounds #Iron #Panic #Minuscule #nature #insects #ladybugs #animatedseries", "The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation", "https://www.youtube.com/watch?v=N5cGHceTqJU", "N5cGHceTqJU", 3564, false, "/downloads/Miniscule Season 2/2025-10-23 The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation/The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation [N5cGHceTqJU].mp4", false, 5, ~U[2025-10-23 10:00:48Z]] 22:54:58.737 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=81.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" = ?) [5] 22:54:58.738 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=81.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] 22:54:58.739 [debug] QUERY OK source="media_items" db=0.6ms idle=81.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 [99487] 22:54:58.739 [debug] Current batch of media processed. Will check again in 1000ms 22:54:58.742 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8331262,"event":"job:exception","queue_time":252571,"attempt":2,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:54:59.740 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #AOtLBkMuRzc/youtube video #AOtLBkMuRzc [AOtLBkMuRzc].NA", "id" => "AOtLBkMuRzc", "original_url" => "https://www.youtube.com/watch?v=AOtLBkMuRzc", "playlist_index" => 30, "title" => "youtube video #AOtLBkMuRzc"} 22:54:59.741 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1001.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" IN (?)) [5] 22:54:59.741 [debug] Current batch of media processed. Will check again in 1000ms 22:55:00.743 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Umbrella And Coconut Trees | S02E71\n00:03:33 | Down The Chimney | S02E42\n00:07:19 | Trapped | S02E64\n00:11:01 | Zzz In The Metro | S02E53\n00:14:37 | Away all boarders! | S02E41\n00:18:19 | Summer Hat | S02E48\n00:22:01 | Metamorphosis | S02E61\n00:25:31 | Beehive On A Troll | S02E56\n00:29:02 | Snow Carrot | S02E59\n00:32:40 | Ladybugland | S02E62\n00:36:08 | The Wing Case | S02E01\n00:39:53 | If Only Lonely | S02E22\n00:43:39 | Turbo speed | S02E58\n00:47:03 | Snow Fly | S02E51\n00:50:28 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#umbrella #coconut #ladybug #winter #ladybugs #chimney #Christmas #Minuscule #nature #insects #animatedseries", "duration" => 3283, "filename" => "/downloads/Miniscule Season 2/2025-10-14 Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation/Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation [wJ_yF5dN89w].mp4", "id" => "wJ_yF5dN89w", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=wJ_yF5dN89w", "playlist_index" => 31, "timestamp" => 1760421653, "title" => "Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation", "upload_date" => "20251014"} 22:55:00.744 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1002.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" IN (?)) [5] 22:55:00.745 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=443.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" = ?) [5] 22:55:00.746 [debug] QUERY OK source="media_items" db=1.0ms queue=0.1ms idle=444.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-14 06:00:53Z], 5] 22:55:00.766 [debug] QUERY OK source="media_items" db=18.7ms idle=148.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Umbrella And Coconut Trees | S02E71\n00:03:33 | Down The Chimney | S02E42\n00:07:19 | Trapped | S02E64\n00:11:01 | Zzz In The Metro | S02E53\n00:14:37 | Away all boarders! | S02E41\n00:18:19 | Summer Hat | S02E48\n00:22:01 | Metamorphosis | S02E61\n00:25:31 | Beehive On A Troll | S02E56\n00:29:02 | Snow Carrot | S02E59\n00:32:40 | Ladybugland | S02E62\n00:36:08 | The Wing Case | S02E01\n00:39:53 | If Only Lonely | S02E22\n00:43:39 | Turbo speed | S02E58\n00:47:03 | Snow Fly | S02E51\n00:50:28 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#umbrella #coconut #ladybug #winter #ladybugs #chimney #Christmas #Minuscule #nature #insects #animatedseries", "Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation", "9d455f28-2e4b-4355-9045-e9a02350b0a6", "https://www.youtube.com/watch?v=wJ_yF5dN89w", "wJ_yF5dN89w", 3283, false, 31, "/downloads/Miniscule Season 2/2025-10-14 Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation/Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation [wJ_yF5dN89w].mp4", false, false, false, 5, [], 1, ~U[2025-10-14 06:00:53Z], ~U[2026-01-30 05:55:00Z], ~U[2026-01-30 05:55:00Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Umbrella And Coconut Trees | S02E71\n00:03:33 | Down The Chimney | S02E42\n00:07:19 | Trapped | S02E64\n00:11:01 | Zzz In The Metro | S02E53\n00:14:37 | Away all boarders! | S02E41\n00:18:19 | Summer Hat | S02E48\n00:22:01 | Metamorphosis | S02E61\n00:25:31 | Beehive On A Troll | S02E56\n00:29:02 | Snow Carrot | S02E59\n00:32:40 | Ladybugland | S02E62\n00:36:08 | The Wing Case | S02E01\n00:39:53 | If Only Lonely | S02E22\n00:43:39 | Turbo speed | S02E58\n00:47:03 | Snow Fly | S02E51\n00:50:28 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#umbrella #coconut #ladybug #winter #ladybugs #chimney #Christmas #Minuscule #nature #insects #animatedseries", "Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation", "https://www.youtube.com/watch?v=wJ_yF5dN89w", "wJ_yF5dN89w", 3283, false, "/downloads/Miniscule Season 2/2025-10-14 Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation/Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation [wJ_yF5dN89w].mp4", false, 5, ~U[2025-10-14 06:00:53Z]] 22:55:00.767 [debug] QUERY OK source="sources" db=0.4ms idle=161.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" = ?) [5] 22:55:00.768 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=23.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] 22:55:00.769 [debug] QUERY OK source="media_items" db=0.4ms idle=23.4ms 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 [99066] 22:55:00.769 [debug] Current batch of media processed. Will check again in 1000ms 22:55:00.967 [info] {"source":"oban","duration":325,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:55:01.770 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Acrobatics | S02E16\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Go Blue Go! | S02E54\n00:11:04 | Chewing gum rodeo | S02E14\n00:14:50 | The Chocolate Chase! | S02E19\n00:18:35 | Mission : BBQ | S02E09\n00:22:21 | Honey Fly | S02E08\n00:26:11 | Zzz In The Metro | S02E53\n00:29:46 | It's a tie! | S02E67\n00:33:27 | Turbo speed | S02E58\n00:36:51 | The Annoying Neighbor | S02E28\n00:40:27 | An Acorn Season | S02E05\n00:44:13 | Fly Hunting | S02E24\n00:47:46 | Trapped | S02E64\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acrobatics #Wasps #Ladybird #Competition #Tabasco #wasp #patrol #ladybug #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 3128, "filename" => "/downloads/Miniscule Season 2/2025-10-11 Acrobatics 🎃 Minuscule 🍃 70' Compilation/Acrobatics 🎃 Minuscule 🍃 70' Compilation [u9kg6go3tPc].mp4", "id" => "u9kg6go3tPc", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=u9kg6go3tPc", "playlist_index" => 32, "timestamp" => 1760205652, "title" => "Acrobatics 🎃 Minuscule 🍃 70' Compilation", "upload_date" => "20251011"} 22:55:01.771 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1002.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" IN (?)) [5] 22:55:01.772 [debug] QUERY OK source="sources" db=0.4ms idle=1002.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" = ?) [5] 22:55:01.774 [debug] QUERY OK source="media_items" db=1.2ms idle=805.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-11 18:00:52Z], 5] 22:55:01.793 [debug] QUERY OK source="media_items" db=17.8ms idle=174.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Acrobatics | S02E16\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Go Blue Go! | S02E54\n00:11:04 | Chewing gum rodeo | S02E14\n00:14:50 | The Chocolate Chase! | S02E19\n00:18:35 | Mission : BBQ | S02E09\n00:22:21 | Honey Fly | S02E08\n00:26:11 | Zzz In The Metro | S02E53\n00:29:46 | It's a tie! | S02E67\n00:33:27 | Turbo speed | S02E58\n00:36:51 | The Annoying Neighbor | S02E28\n00:40:27 | An Acorn Season | S02E05\n00:44:13 | Fly Hunting | S02E24\n00:47:46 | Trapped | S02E64\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acrobatics #Wasps #Ladybird #Competition #Tabasco #wasp #patrol #ladybug #Minuscule #nature #insects #ladybugs #animatedseries", "Acrobatics 🎃 Minuscule 🍃 70' Compilation", "c50bb7cc-f817-44d1-bcc7-de582084c721", "https://www.youtube.com/watch?v=u9kg6go3tPc", "u9kg6go3tPc", 3128, false, 32, "/downloads/Miniscule Season 2/2025-10-11 Acrobatics 🎃 Minuscule 🍃 70' Compilation/Acrobatics 🎃 Minuscule 🍃 70' Compilation [u9kg6go3tPc].mp4", false, false, false, 5, [], 1, ~U[2025-10-11 18:00:52Z], ~U[2026-01-30 05:55:01Z], ~U[2026-01-30 05:55:01Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Acrobatics | S02E16\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Go Blue Go! | S02E54\n00:11:04 | Chewing gum rodeo | S02E14\n00:14:50 | The Chocolate Chase! | S02E19\n00:18:35 | Mission : BBQ | S02E09\n00:22:21 | Honey Fly | S02E08\n00:26:11 | Zzz In The Metro | S02E53\n00:29:46 | It's a tie! | S02E67\n00:33:27 | Turbo speed | S02E58\n00:36:51 | The Annoying Neighbor | S02E28\n00:40:27 | An Acorn Season | S02E05\n00:44:13 | Fly Hunting | S02E24\n00:47:46 | Trapped | S02E64\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acrobatics #Wasps #Ladybird #Competition #Tabasco #wasp #patrol #ladybug #Minuscule #nature #insects #ladybugs #animatedseries", "Acrobatics 🎃 Minuscule 🍃 70' Compilation", "https://www.youtube.com/watch?v=u9kg6go3tPc", "u9kg6go3tPc", 3128, false, "/downloads/Miniscule Season 2/2025-10-11 Acrobatics 🎃 Minuscule 🍃 70' Compilation/Acrobatics 🎃 Minuscule 🍃 70' Compilation [u9kg6go3tPc].mp4", false, 5, ~U[2025-10-11 18:00:52Z]] 22:55:01.793 [debug] QUERY OK source="sources" db=0.5ms idle=186.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" = ?) [5] 22:55:01.794 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=22.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] 22:55:01.795 [debug] QUERY OK source="media_items" db=0.6ms idle=22.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 [99067] 22:55:01.796 [debug] Current batch of media processed. Will check again in 1000ms 22:55:02.797 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mission : BBQ | S02E09\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Ladybugland | S02E62\n00:10:50 | Trapped | S02E64\n00:14:33 | Fly Hunting | S02E24\n00:18:06 | The Chocolate Chase! | S02E19\n00:21:52 | Patatas Fritas | S02E21\n00:25:38 | Spider Driver | S02E36\n00:29:19 | The Grocery Store Incident | S02E39\n00:32:50 | Turbo speed | S02E58\n00:36:14 | Sausage Predator | S02E06\n00:40:00 | Chewing gum rodeo | S02E14\n00:43:45 | Acrobatics | S02E16\n00:47:31 | Zzz In The Metro | S02E53\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Tabasco #wasp #patrol #ladybug #BBQ #garden #insects #wasps #Minuscule #nature #ladybugs #animatedseries", "duration" => 3105, "filename" => "/downloads/Miniscule Season 2/2025-10-07 Mission : BBQ 🎃 Minuscule 🍃 65' Compilation/Mission : BBQ 🎃 Minuscule 🍃 65' Compilation [mRDF4eQMrp0].mp4", "id" => "mRDF4eQMrp0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=mRDF4eQMrp0", "playlist_index" => 33, "timestamp" => 1759816844, "title" => "Mission : BBQ 🎃 Minuscule 🍃 65' Compilation", "upload_date" => "20251007"} 22:55:02.798 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:55:02.799 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:55:02.801 [debug] QUERY OK source="media_items" db=1.1ms queue=0.1ms idle=1003.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-07 06:00:44Z], 5] 22:55:02.804 [debug] QUERY OK source="media_items" db=2.3ms idle=198.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mission : BBQ | S02E09\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Ladybugland | S02E62\n00:10:50 | Trapped | S02E64\n00:14:33 | Fly Hunting | S02E24\n00:18:06 | The Chocolate Chase! | S02E19\n00:21:52 | Patatas Fritas | S02E21\n00:25:38 | Spider Driver | S02E36\n00:29:19 | The Grocery Store Incident | S02E39\n00:32:50 | Turbo speed | S02E58\n00:36:14 | Sausage Predator | S02E06\n00:40:00 | Chewing gum rodeo | S02E14\n00:43:45 | Acrobatics | S02E16\n00:47:31 | Zzz In The Metro | S02E53\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Tabasco #wasp #patrol #ladybug #BBQ #garden #insects #wasps #Minuscule #nature #ladybugs #animatedseries", "Mission : BBQ 🎃 Minuscule 🍃 65' Compilation", "202cf547-2601-492c-b0d1-3bff0304d4dc", "https://www.youtube.com/watch?v=mRDF4eQMrp0", "mRDF4eQMrp0", 3105, false, 33, "/downloads/Miniscule Season 2/2025-10-07 Mission : BBQ 🎃 Minuscule 🍃 65' Compilation/Mission : BBQ 🎃 Minuscule 🍃 65' Compilation [mRDF4eQMrp0].mp4", false, false, false, 5, [], 1, ~U[2025-10-07 06:00:44Z], ~U[2026-01-30 05:55:02Z], ~U[2026-01-30 05:55:02Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mission : BBQ | S02E09\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Ladybugland | S02E62\n00:10:50 | Trapped | S02E64\n00:14:33 | Fly Hunting | S02E24\n00:18:06 | The Chocolate Chase! | S02E19\n00:21:52 | Patatas Fritas | S02E21\n00:25:38 | Spider Driver | S02E36\n00:29:19 | The Grocery Store Incident | S02E39\n00:32:50 | Turbo speed | S02E58\n00:36:14 | Sausage Predator | S02E06\n00:40:00 | Chewing gum rodeo | S02E14\n00:43:45 | Acrobatics | S02E16\n00:47:31 | Zzz In The Metro | S02E53\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Tabasco #wasp #patrol #ladybug #BBQ #garden #insects #wasps #Minuscule #nature #ladybugs #animatedseries", "Mission : BBQ 🎃 Minuscule 🍃 65' Compilation", "https://www.youtube.com/watch?v=mRDF4eQMrp0", "mRDF4eQMrp0", 3105, false, "/downloads/Miniscule Season 2/2025-10-07 Mission : BBQ 🎃 Minuscule 🍃 65' Compilation/Mission : BBQ 🎃 Minuscule 🍃 65' Compilation [mRDF4eQMrp0].mp4", false, 5, ~U[2025-10-07 06:00:44Z]] 22:55:02.805 [debug] QUERY OK source="sources" db=0.5ms idle=195.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" = ?) [5] 22:55:02.806 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=6.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] 22:55:02.807 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=7.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 [98653] 22:55:02.807 [debug] Current batch of media processed. Will check again in 1000ms 22:55:03.808 [debug] Current batch of media processed. Will check again in 1000ms 22:55:04.809 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Mosquito Of The Caribbean | S02E57\n00:03:45 | Zzz zzz | S02E44\n00:07:16 | Sunburn | S02E40\n00:10:40 | Zzz In The Metro | S02E53\n00:14:16 | Trapped | S02E64\n00:17:58 | Summer Hat | S02E48\n00:21:40 | The Hat Of The Medusa | S02E17\n00:25:25 | The Monster Of The Haunted Swamp | S02E37\n00:28:56 | Mission : BBQ | S02E09\n00:32:41 | Labyrinth | S02E69\n00:36:27 | Refrigerated | S02E65\n00:40:01 | Microzilla | S02E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#mosquito #Caribbean #suitcase #rollercoaster #bedroom #sleeping #challenge #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2666, "filename" => "/downloads/Miniscule Season 2/2025-09-25 The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation/The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation [0uh8G_bFGd4].mp4", "id" => "0uh8G_bFGd4", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=0uh8G_bFGd4", "playlist_index" => 34, "timestamp" => 1758794402, "title" => "The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation", "upload_date" => "20250925"} 22:55:04.810 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=508.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 (?)) [5] 22:55:04.811 [debug] QUERY OK source="sources" db=0.4ms idle=509.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" = ?) [5] 22:55:04.813 [debug] QUERY OK source="media_items" db=1.3ms idle=510.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-25 10:00:02Z], 5] 22:55:04.828 [debug] QUERY OK source="media_items" db=14.4ms idle=205.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Mosquito Of The Caribbean | S02E57\n00:03:45 | Zzz zzz | S02E44\n00:07:16 | Sunburn | S02E40\n00:10:40 | Zzz In The Metro | S02E53\n00:14:16 | Trapped | S02E64\n00:17:58 | Summer Hat | S02E48\n00:21:40 | The Hat Of The Medusa | S02E17\n00:25:25 | The Monster Of The Haunted Swamp | S02E37\n00:28:56 | Mission : BBQ | S02E09\n00:32:41 | Labyrinth | S02E69\n00:36:27 | Refrigerated | S02E65\n00:40:01 | Microzilla | S02E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#mosquito #Caribbean #suitcase #rollercoaster #bedroom #sleeping #challenge #Minuscule #nature #insects #ladybugs #animatedseries", "The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation", "1909e090-a1c7-41ef-8896-015d6f442515", "https://www.youtube.com/watch?v=0uh8G_bFGd4", "0uh8G_bFGd4", 2666, false, 34, "/downloads/Miniscule Season 2/2025-09-25 The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation/The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation [0uh8G_bFGd4].mp4", false, false, false, 5, [], 1, ~U[2025-09-25 10:00:02Z], ~U[2026-01-30 05:55:04Z], ~U[2026-01-30 05:55:04Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Mosquito Of The Caribbean | S02E57\n00:03:45 | Zzz zzz | S02E44\n00:07:16 | Sunburn | S02E40\n00:10:40 | Zzz In The Metro | S02E53\n00:14:16 | Trapped | S02E64\n00:17:58 | Summer Hat | S02E48\n00:21:40 | The Hat Of The Medusa | S02E17\n00:25:25 | The Monster Of The Haunted Swamp | S02E37\n00:28:56 | Mission : BBQ | S02E09\n00:32:41 | Labyrinth | S02E69\n00:36:27 | Refrigerated | S02E65\n00:40:01 | Microzilla | S02E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#mosquito #Caribbean #suitcase #rollercoaster #bedroom #sleeping #challenge #Minuscule #nature #insects #ladybugs #animatedseries", "The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation", "https://www.youtube.com/watch?v=0uh8G_bFGd4", "0uh8G_bFGd4", 2666, false, "/downloads/Miniscule Season 2/2025-09-25 The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation/The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation [0uh8G_bFGd4].mp4", false, 5, ~U[2025-09-25 10:00:02Z]] 22:55:04.829 [debug] QUERY OK source="sources" db=0.5ms idle=213.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" = ?) [5] 22:55:04.830 [debug] QUERY OK source="media_profiles" db=0.4ms idle=19.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] 22:55:04.831 [debug] QUERY OK source="media_items" db=0.5ms idle=19.5ms 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 [97891] 22:55:04.831 [debug] Current batch of media processed. Will check again in 1000ms 22:55:05.833 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Go Blue Go! | S02E54\n00:03:41 | Bzzaping | S02E03\n00:07:28 | It's a tie! | S02E67\n00:11:09 | Turbo speed | S02E58\n00:14:33 | An Acorn Season | S02E05\n00:18:19 | Spider Driver | S02E36\n00:22:00 | Acrobatics | S02E16\n00:25:46 | At Full Speed | S02E27\n00:29:29 | Away all boarders! | S02E41\n00:33:12 | Snow Fly | S02E51\n00:36:36 | Spider from the Depths | S02E31\n00:40:11 | Fly Hunting | S02E24\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#dragonflies #fight #pond #insects #Bzzaping #fly #spider #television #Minuscule #nature #ladybugs #animatedseries", "duration" => 2663, "filename" => "/downloads/Miniscule Season 2/2025-09-23 Go Blue Go! | Minuscule 🍃 55' Compilation/Go Blue Go! | Minuscule 🍃 55' Compilation [CejWzxTmiZI].mp4", "id" => "CejWzxTmiZI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=CejWzxTmiZI", "playlist_index" => 35, "timestamp" => 1758607210, "title" => "Go Blue Go! | Minuscule 🍃 55' Compilation", "upload_date" => "20250923"} 22:55:05.834 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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" IN (?)) [5] 22:55:05.835 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:55:05.836 [debug] QUERY OK source="media_items" db=0.9ms idle=1003.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-23 06:00:10Z], 5] 22:55:05.838 [debug] QUERY OK source="media_items" db=1.7ms idle=226.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Go Blue Go! | S02E54\n00:03:41 | Bzzaping | S02E03\n00:07:28 | It's a tie! | S02E67\n00:11:09 | Turbo speed | S02E58\n00:14:33 | An Acorn Season | S02E05\n00:18:19 | Spider Driver | S02E36\n00:22:00 | Acrobatics | S02E16\n00:25:46 | At Full Speed | S02E27\n00:29:29 | Away all boarders! | S02E41\n00:33:12 | Snow Fly | S02E51\n00:36:36 | Spider from the Depths | S02E31\n00:40:11 | Fly Hunting | S02E24\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#dragonflies #fight #pond #insects #Bzzaping #fly #spider #television #Minuscule #nature #ladybugs #animatedseries", "Go Blue Go! | Minuscule 🍃 55' Compilation", "24336b1a-fe98-4de2-b311-b36588cef4dd", "https://www.youtube.com/watch?v=CejWzxTmiZI", "CejWzxTmiZI", 2663, false, 35, "/downloads/Miniscule Season 2/2025-09-23 Go Blue Go! | Minuscule 🍃 55' Compilation/Go Blue Go! | Minuscule 🍃 55' Compilation [CejWzxTmiZI].mp4", false, false, false, 5, [], 1, ~U[2025-09-23 06:00:10Z], ~U[2026-01-30 05:55:05Z], ~U[2026-01-30 05:55:05Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Go Blue Go! | S02E54\n00:03:41 | Bzzaping | S02E03\n00:07:28 | It's a tie! | S02E67\n00:11:09 | Turbo speed | S02E58\n00:14:33 | An Acorn Season | S02E05\n00:18:19 | Spider Driver | S02E36\n00:22:00 | Acrobatics | S02E16\n00:25:46 | At Full Speed | S02E27\n00:29:29 | Away all boarders! | S02E41\n00:33:12 | Snow Fly | S02E51\n00:36:36 | Spider from the Depths | S02E31\n00:40:11 | Fly Hunting | S02E24\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#dragonflies #fight #pond #insects #Bzzaping #fly #spider #television #Minuscule #nature #ladybugs #animatedseries", "Go Blue Go! | Minuscule 🍃 55' Compilation", "https://www.youtube.com/watch?v=CejWzxTmiZI", "CejWzxTmiZI", 2663, false, "/downloads/Miniscule Season 2/2025-09-23 Go Blue Go! | Minuscule 🍃 55' Compilation/Go Blue Go! | Minuscule 🍃 55' Compilation [CejWzxTmiZI].mp4", false, 5, ~U[2025-09-23 06:00:10Z]] 22:55:05.839 [debug] QUERY OK source="sources" db=0.3ms idle=221.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" = ?) [5] 22:55:05.839 [debug] QUERY OK source="media_profiles" db=0.2ms idle=5.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] 22:55:05.840 [debug] QUERY OK source="media_items" db=0.4ms idle=5.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 [97892] 22:55:05.840 [debug] Current batch of media processed. Will check again in 1000ms 22:55:06.842 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Thievish As A Magpie | S02E11\n00:03:45 | The Chocolate Chase! | S02E19\n00:07:31 | Valentine's Day | S02E15\n00:11:16 | The Hat Of The Medusa | S02E17\n00:15:02 | Thirsty | S02E29\n00:18:34 | Ladybugland | S02E62\n00:22:02 | Away all boarders! | S02E41\n00:25:44 | Spider from the Depths | S02E31\n00:29:19 | Mission : BBQ | S02E09\n00:33:04 | Summer Hat | S02E48\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#thief #beach #treasures #panic #chocolate #centipede #bees #wasps #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2244, "filename" => "/downloads/Miniscule Season 2/2025-09-11 Thievish As A Magpie | Minuscule 🍃 50' Compilation/Thievish As A Magpie | Minuscule 🍃 50' Compilation [Fmdn7GZo03E].mp4", "id" => "Fmdn7GZo03E", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Fmdn7GZo03E", "playlist_index" => 36, "timestamp" => 1757584821, "title" => "Thievish As A Magpie | Minuscule 🍃 50' Compilation", "upload_date" => "20250911"} 22:55:06.843 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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 (?)) [5] 22:55:06.844 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1004.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" = ?) [5] 22:55:06.845 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-11 10:00:21Z], 5] 22:55:06.866 [debug] QUERY OK source="media_items" db=20.0ms idle=233.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Thievish As A Magpie | S02E11\n00:03:45 | The Chocolate Chase! | S02E19\n00:07:31 | Valentine's Day | S02E15\n00:11:16 | The Hat Of The Medusa | S02E17\n00:15:02 | Thirsty | S02E29\n00:18:34 | Ladybugland | S02E62\n00:22:02 | Away all boarders! | S02E41\n00:25:44 | Spider from the Depths | S02E31\n00:29:19 | Mission : BBQ | S02E09\n00:33:04 | Summer Hat | S02E48\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#thief #beach #treasures #panic #chocolate #centipede #bees #wasps #Minuscule #nature #insects #ladybugs #animatedseries", "Thievish As A Magpie | Minuscule 🍃 50' Compilation", "cec1dab9-b119-4cc3-aa47-db8a3d7a9442", "https://www.youtube.com/watch?v=Fmdn7GZo03E", "Fmdn7GZo03E", 2244, false, 36, "/downloads/Miniscule Season 2/2025-09-11 Thievish As A Magpie | Minuscule 🍃 50' Compilation/Thievish As A Magpie | Minuscule 🍃 50' Compilation [Fmdn7GZo03E].mp4", false, false, false, 5, [], 1, ~U[2025-09-11 10:00:21Z], ~U[2026-01-30 05:55:06Z], ~U[2026-01-30 05:55:06Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Thievish As A Magpie | S02E11\n00:03:45 | The Chocolate Chase! | S02E19\n00:07:31 | Valentine's Day | S02E15\n00:11:16 | The Hat Of The Medusa | S02E17\n00:15:02 | Thirsty | S02E29\n00:18:34 | Ladybugland | S02E62\n00:22:02 | Away all boarders! | S02E41\n00:25:44 | Spider from the Depths | S02E31\n00:29:19 | Mission : BBQ | S02E09\n00:33:04 | Summer Hat | S02E48\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#thief #beach #treasures #panic #chocolate #centipede #bees #wasps #Minuscule #nature #insects #ladybugs #animatedseries", "Thievish As A Magpie | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=Fmdn7GZo03E", "Fmdn7GZo03E", 2244, false, "/downloads/Miniscule Season 2/2025-09-11 Thievish As A Magpie | Minuscule 🍃 50' Compilation/Thievish As A Magpie | Minuscule 🍃 50' Compilation [Fmdn7GZo03E].mp4", false, 5, ~U[2025-09-11 10:00:21Z]] 22:55:06.867 [debug] QUERY OK source="sources" db=0.4ms idle=247.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" = ?) [5] 22:55:06.868 [debug] QUERY OK source="media_profiles" db=0.3ms idle=24.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] 22:55:06.869 [debug] QUERY OK source="media_items" db=0.6ms idle=24.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 [97079] 22:55:06.869 [debug] Current batch of media processed. Will check again in 1000ms 22:55:07.870 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grocery Store Racketeer | S02E50\n00:03:35 | The Grocery Store Incident | S02E39\n00:07:06 | The Stubborn Spider | S02E04\n00:10:51 | Spider from the Depths | S02E31\n00:14:26 | Spider Driver | S02E36\n00:18:07 | Rascals! | S02E38\n00:21:46 | Sausage Predator | S02E06\n00:25:32 | An Acorn Season | S02E05\n00:29:18 | A Pathetic She'Nut'Igan | S02E12\n00:33:03 | Ladybugland | S02E62\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Grocery #Spider #Bullying #Revenge #ladybug #flies #chase #supermarket #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2229, "filename" => "/downloads/Miniscule Season 2/2025-09-09 The Grocery Store Racketeer | Minuscule 🍃 50' Compilation/The Grocery Store Racketeer | Minuscule 🍃 50' Compilation [M8b3joyk5Vc].mp4", "id" => "M8b3joyk5Vc", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=M8b3joyk5Vc", "playlist_index" => 37, "timestamp" => 1757397628, "title" => "The Grocery Store Racketeer | Minuscule 🍃 50' Compilation", "upload_date" => "20250909"} 22:55:07.871 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:55:07.872 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:55:07.873 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-09 06:00:28Z], 5] 22:55:07.877 [debug] QUERY OK source="media_items" db=2.3ms idle=259.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grocery Store Racketeer | S02E50\n00:03:35 | The Grocery Store Incident | S02E39\n00:07:06 | The Stubborn Spider | S02E04\n00:10:51 | Spider from the Depths | S02E31\n00:14:26 | Spider Driver | S02E36\n00:18:07 | Rascals! | S02E38\n00:21:46 | Sausage Predator | S02E06\n00:25:32 | An Acorn Season | S02E05\n00:29:18 | A Pathetic She'Nut'Igan | S02E12\n00:33:03 | Ladybugland | S02E62\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Grocery #Spider #Bullying #Revenge #ladybug #flies #chase #supermarket #Minuscule #nature #insects #ladybugs #animatedseries", "The Grocery Store Racketeer | Minuscule 🍃 50' Compilation", "1d911d17-b06e-40d5-9148-490eb1eaec5d", "https://www.youtube.com/watch?v=M8b3joyk5Vc", "M8b3joyk5Vc", 2229, false, 37, "/downloads/Miniscule Season 2/2025-09-09 The Grocery Store Racketeer | Minuscule 🍃 50' Compilation/The Grocery Store Racketeer | Minuscule 🍃 50' Compilation [M8b3joyk5Vc].mp4", false, false, false, 5, [], 1, ~U[2025-09-09 06:00:28Z], ~U[2026-01-30 05:55:07Z], ~U[2026-01-30 05:55:07Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grocery Store Racketeer | S02E50\n00:03:35 | The Grocery Store Incident | S02E39\n00:07:06 | The Stubborn Spider | S02E04\n00:10:51 | Spider from the Depths | S02E31\n00:14:26 | Spider Driver | S02E36\n00:18:07 | Rascals! | S02E38\n00:21:46 | Sausage Predator | S02E06\n00:25:32 | An Acorn Season | S02E05\n00:29:18 | A Pathetic She'Nut'Igan | S02E12\n00:33:03 | Ladybugland | S02E62\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Grocery #Spider #Bullying #Revenge #ladybug #flies #chase #supermarket #Minuscule #nature #insects #ladybugs #animatedseries", "The Grocery Store Racketeer | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=M8b3joyk5Vc", "M8b3joyk5Vc", 2229, false, "/downloads/Miniscule Season 2/2025-09-09 The Grocery Store Racketeer | Minuscule 🍃 50' Compilation/The Grocery Store Racketeer | Minuscule 🍃 50' Compilation [M8b3joyk5Vc].mp4", false, 5, ~U[2025-09-09 06:00:28Z]] 22:55:07.878 [debug] QUERY OK source="sources" db=0.4ms idle=256.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" = ?) [5] 22:55:07.878 [debug] QUERY OK source="media_profiles" db=0.3ms idle=6.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] 22:55:07.879 [debug] QUERY OK source="media_items" db=0.5ms idle=6.5ms 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 [97081] 22:55:07.879 [debug] Current batch of media processed. Will check again in 1000ms 22:55:08.881 [debug] Current batch of media processed. Will check again in 1000ms 22:55:09.882 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Butterfly's Nightmare | S02E20\n00:03:16 | Metamorphosis | S02E61\n00:06:47 | The Butterfly Effect | S02E23\n00:10:09 | The Annoying Neighbor | S02E28\n00:13:45 | Homeless | S02E02\n00:17:33 | The Wing Case | S02E01\n00:21:18 | The Housing Plant Project | S02E26\n00:24:55 | If Only Lonely | S02E22\n00:28:40 | Love Apple | S02E45\n00:32:20 | Trapped | S02E64\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Butterfly #Caterpillar #Nightmare #Cocoon #transformation #caterpillar #rejection #change #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2201, "filename" => "/downloads/Miniscule Season 2/2025-09-13 A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation/A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation [OT9yM4KWpsE].mp4", "id" => "OT9yM4KWpsE", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=OT9yM4KWpsE", "playlist_index" => 38, "timestamp" => 1757786431, "title" => "A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation", "upload_date" => "20250913"} 22:55:09.883 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=581.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 (?)) [5] 22:55:09.884 [debug] QUERY OK source="sources" db=0.3ms idle=582.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" = ?) [5] 22:55:09.885 [debug] QUERY OK source="media_items" db=1.1ms idle=582.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-13 18:00:31Z], 5] 22:55:09.888 [debug] QUERY OK source="media_items" db=2.2ms idle=266.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Butterfly's Nightmare | S02E20\n00:03:16 | Metamorphosis | S02E61\n00:06:47 | The Butterfly Effect | S02E23\n00:10:09 | The Annoying Neighbor | S02E28\n00:13:45 | Homeless | S02E02\n00:17:33 | The Wing Case | S02E01\n00:21:18 | The Housing Plant Project | S02E26\n00:24:55 | If Only Lonely | S02E22\n00:28:40 | Love Apple | S02E45\n00:32:20 | Trapped | S02E64\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Butterfly #Caterpillar #Nightmare #Cocoon #transformation #caterpillar #rejection #change #Minuscule #nature #insects #ladybugs #animatedseries", "A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation", "c60b6b6a-6920-4df0-a348-e0a776d3a7bc", "https://www.youtube.com/watch?v=OT9yM4KWpsE", "OT9yM4KWpsE", 2201, false, 38, "/downloads/Miniscule Season 2/2025-09-13 A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation/A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation [OT9yM4KWpsE].mp4", false, false, false, 5, [], 1, ~U[2025-09-13 18:00:31Z], ~U[2026-01-30 05:55:09Z], ~U[2026-01-30 05:55:09Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Butterfly's Nightmare | S02E20\n00:03:16 | Metamorphosis | S02E61\n00:06:47 | The Butterfly Effect | S02E23\n00:10:09 | The Annoying Neighbor | S02E28\n00:13:45 | Homeless | S02E02\n00:17:33 | The Wing Case | S02E01\n00:21:18 | The Housing Plant Project | S02E26\n00:24:55 | If Only Lonely | S02E22\n00:28:40 | Love Apple | S02E45\n00:32:20 | Trapped | S02E64\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Butterfly #Caterpillar #Nightmare #Cocoon #transformation #caterpillar #rejection #change #Minuscule #nature #insects #ladybugs #animatedseries", "A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation", "https://www.youtube.com/watch?v=OT9yM4KWpsE", "OT9yM4KWpsE", 2201, false, "/downloads/Miniscule Season 2/2025-09-13 A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation/A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation [OT9yM4KWpsE].mp4", false, 5, ~U[2025-09-13 18:00:31Z]] 22:55:09.889 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=262.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" = ?) [5] 22:55:09.890 [debug] QUERY OK source="media_profiles" db=0.6ms queue=0.1ms idle=6.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] 22:55:09.891 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms 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 [97083] 22:55:09.891 [debug] Current batch of media processed. Will check again in 1000ms 22:55:10.892 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Vegetable Garden | S02E10\n00:03:44 | Ants On The Train | S02E52\n00:07:16 | Away all boarders! | S02E41\n00:10:58 | Ladybugland | S02E62\n00:14:26 | Turbo speed | S02E58\n00:17:50 | Chewing gum rodeo | S02E14\n00:21:36 | Homeless | S02E02\n00:25:23 | Woopsy Daysies! | S02E47\n00:28:57 | Night of the Gastropods | S02E18\n00:32:43 | Mission : BBQ | S02E09\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#vegetable #garden #insects #gardener #ants #train #spider #Minuscule #nature #ladybugs #animatedseries", "duration" => 2227, "filename" => "/downloads/Miniscule Season 2/2025-09-06 The Vegetable Garden | Minuscule 🍃 50' Compilation/The Vegetable Garden | Minuscule 🍃 50' Compilation [XQtJAsx-RbU].mp4", "id" => "XQtJAsx-RbU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=XQtJAsx-RbU", "playlist_index" => 39, "timestamp" => 1757181638, "title" => "The Vegetable Garden | Minuscule 🍃 50' Compilation", "upload_date" => "20250906"} 22:55:10.893 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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 (?)) [5] 22:55:10.894 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:55:10.895 [debug] QUERY OK source="media_items" db=1.0ms idle=1003.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-06 18:00:38Z], 5] 22:55:10.978 [debug] QUERY OK source="media_items" db=82.1ms idle=274.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Vegetable Garden | S02E10\n00:03:44 | Ants On The Train | S02E52\n00:07:16 | Away all boarders! | S02E41\n00:10:58 | Ladybugland | S02E62\n00:14:26 | Turbo speed | S02E58\n00:17:50 | Chewing gum rodeo | S02E14\n00:21:36 | Homeless | S02E02\n00:25:23 | Woopsy Daysies! | S02E47\n00:28:57 | Night of the Gastropods | S02E18\n00:32:43 | Mission : BBQ | S02E09\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#vegetable #garden #insects #gardener #ants #train #spider #Minuscule #nature #ladybugs #animatedseries", "The Vegetable Garden | Minuscule 🍃 50' Compilation", "6c696179-844a-492f-9201-c832ab84eb02", "https://www.youtube.com/watch?v=XQtJAsx-RbU", "XQtJAsx-RbU", 2227, false, 39, "/downloads/Miniscule Season 2/2025-09-06 The Vegetable Garden | Minuscule 🍃 50' Compilation/The Vegetable Garden | Minuscule 🍃 50' Compilation [XQtJAsx-RbU].mp4", false, false, false, 5, [], 1, ~U[2025-09-06 18:00:38Z], ~U[2026-01-30 05:55:10Z], ~U[2026-01-30 05:55:10Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Vegetable Garden | S02E10\n00:03:44 | Ants On The Train | S02E52\n00:07:16 | Away all boarders! | S02E41\n00:10:58 | Ladybugland | S02E62\n00:14:26 | Turbo speed | S02E58\n00:17:50 | Chewing gum rodeo | S02E14\n00:21:36 | Homeless | S02E02\n00:25:23 | Woopsy Daysies! | S02E47\n00:28:57 | Night of the Gastropods | S02E18\n00:32:43 | Mission : BBQ | S02E09\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#vegetable #garden #insects #gardener #ants #train #spider #Minuscule #nature #ladybugs #animatedseries", "The Vegetable Garden | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=XQtJAsx-RbU", "XQtJAsx-RbU", 2227, false, "/downloads/Miniscule Season 2/2025-09-06 The Vegetable Garden | Minuscule 🍃 50' Compilation/The Vegetable Garden | Minuscule 🍃 50' Compilation [XQtJAsx-RbU].mp4", false, 5, ~U[2025-09-06 18:00:38Z]] 22:55:10.979 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=350.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" = ?) [5] 22:55:10.980 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=86.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] 22:55:10.981 [debug] QUERY OK source="media_items" db=0.6ms idle=86.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 [96695] 22:55:10.981 [debug] Current batch of media processed. Will check again in 1000ms 22:55:11.982 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Turbo speed | S02E58\n00:03:24 | At Full Speed | S02E27\n00:07:08 | Fly Hunting | S02E24\n00:10:41 | Spider Driver | S02E36\n00:14:23 | Mission : BBQ | S02E09\n00:18:08 | Zzz In The Metro | S02E53\n00:21:44 | Trapped | S02E64\n00:25:26 | Ladybugland | S02E62\n00:28:54 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Turbo #Dragonflies #Beans #Ladybird #race #insects #country #wacky #Minuscule #nature #ladybugs #animatedseries", "duration" => 1983, "filename" => "/downloads/Miniscule Season 2/2025-09-04 Turbo speed | Minuscule 🍃 45' Compilation/Turbo speed | Minuscule 🍃 45' Compilation [NMhU-D734N0].mp4", "id" => "NMhU-D734N0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=NMhU-D734N0", "playlist_index" => 40, "timestamp" => 1756980038, "title" => "Turbo speed | Minuscule 🍃 45' Compilation", "upload_date" => "20250904"} 22:55:11.983 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:55:11.984 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" = ?) [5] 22:55:11.986 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-04 10:00:38Z], 5] 22:55:11.989 [debug] QUERY OK source="media_items" db=2.3ms queue=0.1ms idle=362.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Turbo speed | S02E58\n00:03:24 | At Full Speed | S02E27\n00:07:08 | Fly Hunting | S02E24\n00:10:41 | Spider Driver | S02E36\n00:14:23 | Mission : BBQ | S02E09\n00:18:08 | Zzz In The Metro | S02E53\n00:21:44 | Trapped | S02E64\n00:25:26 | Ladybugland | S02E62\n00:28:54 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Turbo #Dragonflies #Beans #Ladybird #race #insects #country #wacky #Minuscule #nature #ladybugs #animatedseries", "Turbo speed | Minuscule 🍃 45' Compilation", "9df01c56-ad06-410f-8fc2-974e157b789e", "https://www.youtube.com/watch?v=NMhU-D734N0", "NMhU-D734N0", 1983, false, 40, "/downloads/Miniscule Season 2/2025-09-04 Turbo speed | Minuscule 🍃 45' Compilation/Turbo speed | Minuscule 🍃 45' Compilation [NMhU-D734N0].mp4", false, false, false, 5, [], 1, ~U[2025-09-04 10:00:38Z], ~U[2026-01-30 05:55:11Z], ~U[2026-01-30 05:55:11Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Turbo speed | S02E58\n00:03:24 | At Full Speed | S02E27\n00:07:08 | Fly Hunting | S02E24\n00:10:41 | Spider Driver | S02E36\n00:14:23 | Mission : BBQ | S02E09\n00:18:08 | Zzz In The Metro | S02E53\n00:21:44 | Trapped | S02E64\n00:25:26 | Ladybugland | S02E62\n00:28:54 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Turbo #Dragonflies #Beans #Ladybird #race #insects #country #wacky #Minuscule #nature #ladybugs #animatedseries", "Turbo speed | Minuscule 🍃 45' Compilation", "https://www.youtube.com/watch?v=NMhU-D734N0", "NMhU-D734N0", 1983, false, "/downloads/Miniscule Season 2/2025-09-04 Turbo speed | Minuscule 🍃 45' Compilation/Turbo speed | Minuscule 🍃 45' Compilation [NMhU-D734N0].mp4", false, 5, ~U[2025-09-04 10:00:38Z]] 22:55:11.990 [debug] QUERY OK source="sources" db=0.5ms idle=359.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" = ?) [5] 22:55:11.991 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=6.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] 22:55:11.992 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [96696] 22:55:11.992 [debug] Current batch of media processed. Will check again in 1000ms 22:55:12.993 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:03:45 | Woopsy Daysies! | S02E47\n00:07:19 | Chewing gum rodeo | S02E14\n00:11:05 | If Only Lonely | S02E22\n00:14:50 | The Wing Case | S02E01\n00:18:36 | Fly Hunting | S02E24\n00:22:09 | Ladybugland | S02E62\n00:25:37 | An Acorn Season | S02E05\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #babies #leap #outcast #leaps #calculation #house #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1801, "filename" => "/downloads/Miniscule Season 2/2025-08-30 The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation/The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation [PKmKoMbaCQU].mp4", "id" => "PKmKoMbaCQU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=PKmKoMbaCQU", "playlist_index" => 41, "timestamp" => 1756576831, "title" => "The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation", "upload_date" => "20250830"} 22:55:12.994 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:55:12.995 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" = ?) [5] 22:55:12.996 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-30 18:00:31Z], 5] 22:55:13.000 [debug] QUERY OK source="media_items" db=2.2ms idle=371.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:03:45 | Woopsy Daysies! | S02E47\n00:07:19 | Chewing gum rodeo | S02E14\n00:11:05 | If Only Lonely | S02E22\n00:14:50 | The Wing Case | S02E01\n00:18:36 | Fly Hunting | S02E24\n00:22:09 | Ladybugland | S02E62\n00:25:37 | An Acorn Season | S02E05\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #babies #leap #outcast #leaps #calculation #house #Minuscule #nature #insects #ladybugs #animatedseries", "The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation", "569bf189-9cfc-43c3-b656-db1c0c85ac61", "https://www.youtube.com/watch?v=PKmKoMbaCQU", "PKmKoMbaCQU", 1801, false, 41, "/downloads/Miniscule Season 2/2025-08-30 The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation/The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation [PKmKoMbaCQU].mp4", false, false, false, 5, [], 1, ~U[2025-08-30 18:00:31Z], ~U[2026-01-30 05:55:12Z], ~U[2026-01-30 05:55:12Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:03:45 | Woopsy Daysies! | S02E47\n00:07:19 | Chewing gum rodeo | S02E14\n00:11:05 | If Only Lonely | S02E22\n00:14:50 | The Wing Case | S02E01\n00:18:36 | Fly Hunting | S02E24\n00:22:09 | Ladybugland | S02E62\n00:25:37 | An Acorn Season | S02E05\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #babies #leap #outcast #leaps #calculation #house #Minuscule #nature #insects #ladybugs #animatedseries", "The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=PKmKoMbaCQU", "PKmKoMbaCQU", 1801, false, "/downloads/Miniscule Season 2/2025-08-30 The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation/The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation [PKmKoMbaCQU].mp4", false, 5, ~U[2025-08-30 18:00:31Z]] 22:55:13.000 [debug] QUERY OK source="sources" db=0.3ms idle=368.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" = ?) [5] 22:55:13.001 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=6.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] 22:55:13.002 [debug] QUERY OK source="media_items" db=0.6ms idle=6.5ms 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 [96299] 22:55:13.002 [debug] Current batch of media processed. Will check again in 1000ms 22:55:14.004 [debug] Current batch of media processed. Will check again in 1000ms 22:55:15.005 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Beehive On A Troll | S02E56\n00:03:30 | Honey Fly | S02E08\n00:07:20 | Trapped | S02E64\n00:11:03 | Gather More to Pollinate More | S02E32\n00:14:48 | The Housing Plant Project | S02E26\n00:18:25 | Homeless | S02E02\n00:22:12 | The Annoying Neighbor | S02E28\n00:25:49 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Beehive #Pollen #Troll #Shelter #Honey #Fly #Bees #Admiration #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1810, "filename" => "/downloads/Miniscule Season 2/2025-08-21 Beehive On A Troll | Minuscule 🍃 40' Compilation/Beehive On A Troll | Minuscule 🍃 40' Compilation [YvYdCFLchVw].mp4", "id" => "YvYdCFLchVw", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=YvYdCFLchVw", "playlist_index" => 42, "timestamp" => 1755770463, "title" => "Beehive On A Troll | Minuscule 🍃 40' Compilation", "upload_date" => "20250821"} 22:55:15.006 [debug] QUERY OK source="sources" db=0.5ms idle=704.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" IN (?)) [5] 22:55:15.007 [debug] QUERY OK source="sources" db=0.3ms idle=705.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" = ?) [5] 22:55:15.009 [debug] QUERY OK source="media_items" db=1.1ms idle=706.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-21 10:01:03Z], 5] 22:55:15.023 [debug] QUERY OK source="media_items" db=13.7ms idle=378.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Beehive On A Troll | S02E56\n00:03:30 | Honey Fly | S02E08\n00:07:20 | Trapped | S02E64\n00:11:03 | Gather More to Pollinate More | S02E32\n00:14:48 | The Housing Plant Project | S02E26\n00:18:25 | Homeless | S02E02\n00:22:12 | The Annoying Neighbor | S02E28\n00:25:49 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Beehive #Pollen #Troll #Shelter #Honey #Fly #Bees #Admiration #Minuscule #nature #insects #ladybugs #animatedseries", "Beehive On A Troll | Minuscule 🍃 40' Compilation", "b71701db-980f-416d-a04f-910340827ec7", "https://www.youtube.com/watch?v=YvYdCFLchVw", "YvYdCFLchVw", 1810, false, 42, "/downloads/Miniscule Season 2/2025-08-21 Beehive On A Troll | Minuscule 🍃 40' Compilation/Beehive On A Troll | Minuscule 🍃 40' Compilation [YvYdCFLchVw].mp4", false, false, false, 5, [], 1, ~U[2025-08-21 10:01:03Z], ~U[2026-01-30 05:55:15Z], ~U[2026-01-30 05:55:15Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Beehive On A Troll | S02E56\n00:03:30 | Honey Fly | S02E08\n00:07:20 | Trapped | S02E64\n00:11:03 | Gather More to Pollinate More | S02E32\n00:14:48 | The Housing Plant Project | S02E26\n00:18:25 | Homeless | S02E02\n00:22:12 | The Annoying Neighbor | S02E28\n00:25:49 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Beehive #Pollen #Troll #Shelter #Honey #Fly #Bees #Admiration #Minuscule #nature #insects #ladybugs #animatedseries", "Beehive On A Troll | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=YvYdCFLchVw", "YvYdCFLchVw", 1810, false, "/downloads/Miniscule Season 2/2025-08-21 Beehive On A Troll | Minuscule 🍃 40' Compilation/Beehive On A Troll | Minuscule 🍃 40' Compilation [YvYdCFLchVw].mp4", false, 5, ~U[2025-08-21 10:01:03Z]] 22:55:15.024 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=386.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" = ?) [5] 22:55:15.025 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=18.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] 22:55:15.026 [debug] QUERY OK source="media_items" db=0.5ms idle=18.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 [95920] 22:55:15.026 [debug] Current batch of media processed. Will check again in 1000ms 22:55:15.859 [info] {"source":"oban","duration":1637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:16.027 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Refrigerated | S02E65\n00:03:34 | Microzilla | S02E07\n00:07:20 | Brushing | S02E46\n00:10:52 | Snow Fly | S02E51\n00:14:17 | Summer Hat | S02E48\n00:17:58 | Bzzaping | S02E03\n00:21:45 | Spider from the Depths | S02E31\n00:25:20 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Refrigerated #spider #fly #ice #Microzilla #microwave #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1784, "filename" => "/downloads/Miniscule Season 2/2025-08-26 Refrigerated | Minuscule 🍃 40' Compilation/Refrigerated | Minuscule 🍃 40' Compilation [BG3zv1AFadA].mp4", "id" => "BG3zv1AFadA", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=BG3zv1AFadA", "playlist_index" => 43, "timestamp" => 1756188017, "title" => "Refrigerated | Minuscule 🍃 40' Compilation", "upload_date" => "20250826"} 22:55:16.028 [debug] QUERY OK source="sources" db=0.3ms idle=1002.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" IN (?)) [5] 22:55:16.029 [debug] QUERY OK source="sources" db=0.4ms idle=1002.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" = ?) [5] 22:55:16.031 [debug] QUERY OK source="media_items" db=1.3ms idle=396.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-26 06:00:17Z], 5] 22:55:16.034 [debug] QUERY OK source="media_items" db=2.3ms idle=392.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Refrigerated | S02E65\n00:03:34 | Microzilla | S02E07\n00:07:20 | Brushing | S02E46\n00:10:52 | Snow Fly | S02E51\n00:14:17 | Summer Hat | S02E48\n00:17:58 | Bzzaping | S02E03\n00:21:45 | Spider from the Depths | S02E31\n00:25:20 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Refrigerated #spider #fly #ice #Microzilla #microwave #Minuscule #nature #insects #ladybugs #animatedseries", "Refrigerated | Minuscule 🍃 40' Compilation", "91bca3fd-2435-451d-8695-2fc76cae43a5", "https://www.youtube.com/watch?v=BG3zv1AFadA", "BG3zv1AFadA", 1784, false, 43, "/downloads/Miniscule Season 2/2025-08-26 Refrigerated | Minuscule 🍃 40' Compilation/Refrigerated | Minuscule 🍃 40' Compilation [BG3zv1AFadA].mp4", false, false, false, 5, [], 1, ~U[2025-08-26 06:00:17Z], ~U[2026-01-30 05:55:16Z], ~U[2026-01-30 05:55:16Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Refrigerated | S02E65\n00:03:34 | Microzilla | S02E07\n00:07:20 | Brushing | S02E46\n00:10:52 | Snow Fly | S02E51\n00:14:17 | Summer Hat | S02E48\n00:17:58 | Bzzaping | S02E03\n00:21:45 | Spider from the Depths | S02E31\n00:25:20 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Refrigerated #spider #fly #ice #Microzilla #microwave #Minuscule #nature #insects #ladybugs #animatedseries", "Refrigerated | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=BG3zv1AFadA", "BG3zv1AFadA", 1784, false, "/downloads/Miniscule Season 2/2025-08-26 Refrigerated | Minuscule 🍃 40' Compilation/Refrigerated | Minuscule 🍃 40' Compilation [BG3zv1AFadA].mp4", false, 5, ~U[2025-08-26 06:00:17Z]] 22:55:16.035 [debug] QUERY OK source="sources" db=0.5ms idle=174.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" = ?) [5] 22:55:16.036 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=7.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] 22:55:16.037 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [96303] 22:55:16.037 [debug] Current batch of media processed. Will check again in 1000ms 22:55:17.038 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | To The Port Now! | S02E43\n00:03:27 | Rascals! | S02E38\n00:07:06 | White As Snow | S02E63\n00:10:43 | The Yule log | S02E35\n00:14:28 | An Acorn Season | S02E05\n00:18:14 | Sausage Predator | S02E06\n00:22:00 | Sand Castle | S02E49\n00:25:26 | Ants On The Train | S02E52\n00:28:58 | The Chocolate Chase! | S02E19\n00:32:43 | Snow Carrot | S02E59\n00:36:22 | A Pathetic She'Nut'Igan | S02E12\n00:40:07 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ant #trap #booty #walnut #ants #battle #steal #leader #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2668, "filename" => "/downloads/Miniscule Season 2/2025-08-07 To The Port Now! | Minuscule 🍃 60' Compilation/To The Port Now! | Minuscule 🍃 60' Compilation [KbWIJP2TEkE].mp4", "id" => "KbWIJP2TEkE", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=KbWIJP2TEkE", "playlist_index" => 44, "timestamp" => 1754560846, "title" => "To The Port Now! | Minuscule 🍃 60' Compilation", "upload_date" => "20250807"} 22:55:17.039 [debug] QUERY OK source="sources" db=0.5ms idle=1003.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" IN (?)) [5] 22:55:17.040 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" = ?) [5] 22:55:17.042 [debug] QUERY OK source="media_items" db=1.2ms queue=0.1ms idle=1003.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-07 10:00:46Z], 5] 22:55:17.045 [debug] QUERY OK source="media_items" db=2.4ms idle=406.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | To The Port Now! | S02E43\n00:03:27 | Rascals! | S02E38\n00:07:06 | White As Snow | S02E63\n00:10:43 | The Yule log | S02E35\n00:14:28 | An Acorn Season | S02E05\n00:18:14 | Sausage Predator | S02E06\n00:22:00 | Sand Castle | S02E49\n00:25:26 | Ants On The Train | S02E52\n00:28:58 | The Chocolate Chase! | S02E19\n00:32:43 | Snow Carrot | S02E59\n00:36:22 | A Pathetic She'Nut'Igan | S02E12\n00:40:07 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ant #trap #booty #walnut #ants #battle #steal #leader #Minuscule #nature #insects #ladybugs #animatedseries", "To The Port Now! | Minuscule 🍃 60' Compilation", "39444c6b-2db9-410a-8dee-c8fb8bd6472e", "https://www.youtube.com/watch?v=KbWIJP2TEkE", "KbWIJP2TEkE", 2668, false, 44, "/downloads/Miniscule Season 2/2025-08-07 To The Port Now! | Minuscule 🍃 60' Compilation/To The Port Now! | Minuscule 🍃 60' Compilation [KbWIJP2TEkE].mp4", false, false, false, 5, [], 1, ~U[2025-08-07 10:00:46Z], ~U[2026-01-30 05:55:17Z], ~U[2026-01-30 05:55:17Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | To The Port Now! | S02E43\n00:03:27 | Rascals! | S02E38\n00:07:06 | White As Snow | S02E63\n00:10:43 | The Yule log | S02E35\n00:14:28 | An Acorn Season | S02E05\n00:18:14 | Sausage Predator | S02E06\n00:22:00 | Sand Castle | S02E49\n00:25:26 | Ants On The Train | S02E52\n00:28:58 | The Chocolate Chase! | S02E19\n00:32:43 | Snow Carrot | S02E59\n00:36:22 | A Pathetic She'Nut'Igan | S02E12\n00:40:07 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ant #trap #booty #walnut #ants #battle #steal #leader #Minuscule #nature #insects #ladybugs #animatedseries", "To The Port Now! | Minuscule 🍃 60' Compilation", "https://www.youtube.com/watch?v=KbWIJP2TEkE", "KbWIJP2TEkE", 2668, false, "/downloads/Miniscule Season 2/2025-08-07 To The Port Now! | Minuscule 🍃 60' Compilation/To The Port Now! | Minuscule 🍃 60' Compilation [KbWIJP2TEkE].mp4", false, 5, ~U[2025-08-07 10:00:46Z]] 22:55:17.046 [debug] QUERY OK source="sources" db=0.6ms idle=403.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" = ?) [5] 22:55:17.047 [debug] QUERY OK source="media_profiles" db=0.4ms idle=7.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] 22:55:17.048 [debug] QUERY OK source="media_items" db=0.5ms idle=7.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 [95106] 22:55:17.048 [debug] Current batch of media processed. Will check again in 1000ms 22:55:18.049 [debug] Current batch of media processed. Will check again in 1000ms 22:55:18.648 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769752518648771690,"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"]} 22:55:18.649 [debug] QUERY OK source="media_items" db=0.4ms idle=348.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" = ?) [106309] 22:55:18.650 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:55:18.650 [debug] QUERY OK source="sources" db=0.3ms idle=349.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" = ?) [5] 22:55:18.651 [debug] QUERY OK source="media_profiles" db=0.3ms idle=349.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] 22:55:18.652 [debug] QUERY OK source="media_items" db=0.7ms idle=10.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 [106309] 22:55:18.677 [debug] QUERY OK source="media_metadata" db=0.1ms idle=28.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" = ?) [106309] 22:55:18.677 [debug] QUERY OK source="media_profiles" db=0.3ms idle=27.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] 22:55:18.678 [debug] QUERY OK source="settings" db=0.2ms idle=27.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 [] 22:55:18.679 [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 [] 22:55:18.679 [debug] Running yt-dlp command for action: get_downloadable_status 22:55:18.680 [debug] QUERY OK source="settings" db=0.2ms idle=27.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 [] 22:55:18.681 [debug] QUERY OK source="settings" db=0.1ms 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 [] 22:55:18.681 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:55:18.682 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/0f/ad/0fad67e3ac1be819815f53650b55dbd8df37a9c31482f9f1bb054a45e21be851.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:55:19.050 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sleep Walker | S02E68\n00:03:24 | The Long Road | S02E34\n00:07:07 | Night of the Gastropods | S02E18\n00:10:52 | Thirsty | S02E29\n00:14:25 | Hop On! | S02E25\n00:18:02 | Zzz zzz | S02E44\n00:21:33 | Spider from the Depths | S02E31\n00:25:07 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Dream #Love #Snail #Sleep #snail #water #journey #hazard #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1742, "filename" => "/downloads/Miniscule Season 2/2025-08-16 Sleep Walker | Minuscule 🍃 40' Compilation/Sleep Walker | Minuscule 🍃 40' Compilation [nT-gIL_wrbs].mp4", "id" => "nT-gIL_wrbs", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=nT-gIL_wrbs", "playlist_index" => 45, "timestamp" => 1755367245, "title" => "Sleep Walker | Minuscule 🍃 40' Compilation", "upload_date" => "20250816"} 22:55:19.051 [debug] QUERY OK source="sources" db=0.5ms idle=372.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" IN (?)) [5] 22:55:19.052 [debug] QUERY OK source="sources" db=0.3ms idle=372.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" = ?) [5] 22:55:19.053 [debug] QUERY OK source="media_items" db=1.0ms idle=371.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-16 18:00:45Z], 5] 22:55:19.146 [debug] QUERY OK source="media_items" db=92.2ms idle=372.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sleep Walker | S02E68\n00:03:24 | The Long Road | S02E34\n00:07:07 | Night of the Gastropods | S02E18\n00:10:52 | Thirsty | S02E29\n00:14:25 | Hop On! | S02E25\n00:18:02 | Zzz zzz | S02E44\n00:21:33 | Spider from the Depths | S02E31\n00:25:07 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Dream #Love #Snail #Sleep #snail #water #journey #hazard #Minuscule #nature #insects #ladybugs #animatedseries", "Sleep Walker | Minuscule 🍃 40' Compilation", "9e359851-e1e1-46ae-9279-5561150a7df5", "https://www.youtube.com/watch?v=nT-gIL_wrbs", "nT-gIL_wrbs", 1742, false, 45, "/downloads/Miniscule Season 2/2025-08-16 Sleep Walker | Minuscule 🍃 40' Compilation/Sleep Walker | Minuscule 🍃 40' Compilation [nT-gIL_wrbs].mp4", false, false, false, 5, [], 1, ~U[2025-08-16 18:00:45Z], ~U[2026-01-30 05:55:19Z], ~U[2026-01-30 05:55:19Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sleep Walker | S02E68\n00:03:24 | The Long Road | S02E34\n00:07:07 | Night of the Gastropods | S02E18\n00:10:52 | Thirsty | S02E29\n00:14:25 | Hop On! | S02E25\n00:18:02 | Zzz zzz | S02E44\n00:21:33 | Spider from the Depths | S02E31\n00:25:07 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Dream #Love #Snail #Sleep #snail #water #journey #hazard #Minuscule #nature #insects #ladybugs #animatedseries", "Sleep Walker | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=nT-gIL_wrbs", "nT-gIL_wrbs", 1742, false, "/downloads/Miniscule Season 2/2025-08-16 Sleep Walker | Minuscule 🍃 40' Compilation/Sleep Walker | Minuscule 🍃 40' Compilation [nT-gIL_wrbs].mp4", false, 5, ~U[2025-08-16 18:00:45Z]] 22:55:19.147 [debug] QUERY OK source="sources" db=0.3ms idle=465.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" = ?) [5] 22:55:19.148 [debug] QUERY OK source="media_profiles" db=0.2ms idle=96.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] 22:55:19.148 [debug] QUERY OK source="media_items" db=0.4ms idle=96.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 [95541] 22:55:19.149 [debug] Current batch of media processed. Will check again in 1000ms 22:55:20.150 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Hat Of The Medusa | S02E17\n00:03:45 | Summer Hat | S02E48\n00:07:27 | Labyrinth | S02E69\n00:11:12 | Spider from the Depths | S02E31\n00:14:47 | Brushing | S02E46\n00:18:19 | Honey Fly | S02E08\n00:22:09 | Thievish As A Magpie | S02E11\n00:25:55 | A Pathetic She'Nut'Igan | S02E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#hat #fly #spider #ocean #summer #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1819, "filename" => "/downloads/Miniscule Season 2/2025-08-09 The Hat Of The Medusa | Minuscule | 40' Compilation/The Hat Of The Medusa | Minuscule | 40' Compilation [cXt8BCh7-7A].mp4", "id" => "cXt8BCh7-7A", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=cXt8BCh7-7A", "playlist_index" => 46, "timestamp" => 1754762438, "title" => "The Hat Of The Medusa | Minuscule | 40' Compilation", "upload_date" => "20250809"} 22:55:20.151 [debug] QUERY OK source="sources" db=0.5ms idle=1003.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" IN (?)) [5] 22:55:20.152 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" = ?) [5] 22:55:20.153 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-09 18:00:38Z], 5] 22:55:20.156 [debug] QUERY OK source="media_items" db=2.1ms idle=510.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Hat Of The Medusa | S02E17\n00:03:45 | Summer Hat | S02E48\n00:07:27 | Labyrinth | S02E69\n00:11:12 | Spider from the Depths | S02E31\n00:14:47 | Brushing | S02E46\n00:18:19 | Honey Fly | S02E08\n00:22:09 | Thievish As A Magpie | S02E11\n00:25:55 | A Pathetic She'Nut'Igan | S02E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#hat #fly #spider #ocean #summer #Minuscule #nature #insects #ladybugs #animatedseries", "The Hat Of The Medusa | Minuscule | 40' Compilation", "bfacb514-fb0c-4cbb-89b9-42bd3595eb9e", "https://www.youtube.com/watch?v=cXt8BCh7-7A", "cXt8BCh7-7A", 1819, false, 46, "/downloads/Miniscule Season 2/2025-08-09 The Hat Of The Medusa | Minuscule | 40' Compilation/The Hat Of The Medusa | Minuscule | 40' Compilation [cXt8BCh7-7A].mp4", false, false, false, 5, [], 1, ~U[2025-08-09 18:00:38Z], ~U[2026-01-30 05:55:20Z], ~U[2026-01-30 05:55:20Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Hat Of The Medusa | S02E17\n00:03:45 | Summer Hat | S02E48\n00:07:27 | Labyrinth | S02E69\n00:11:12 | Spider from the Depths | S02E31\n00:14:47 | Brushing | S02E46\n00:18:19 | Honey Fly | S02E08\n00:22:09 | Thievish As A Magpie | S02E11\n00:25:55 | A Pathetic She'Nut'Igan | S02E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#hat #fly #spider #ocean #summer #Minuscule #nature #insects #ladybugs #animatedseries", "The Hat Of The Medusa | Minuscule | 40' Compilation", "https://www.youtube.com/watch?v=cXt8BCh7-7A", "cXt8BCh7-7A", 1819, false, "/downloads/Miniscule Season 2/2025-08-09 The Hat Of The Medusa | Minuscule | 40' Compilation/The Hat Of The Medusa | Minuscule | 40' Compilation [cXt8BCh7-7A].mp4", false, 5, ~U[2025-08-09 18:00:38Z]] 22:55:20.157 [debug] QUERY OK source="sources" db=0.5ms idle=506.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" = ?) [5] 22:55:20.157 [debug] QUERY OK source="media_profiles" db=0.4ms idle=5.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] 22:55:20.158 [debug] QUERY OK source="media_items" db=0.5ms idle=5.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 [95107] 22:55:20.158 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #8BwQeX9X4kA/youtube video #8BwQeX9X4kA [8BwQeX9X4kA].NA", "id" => "8BwQeX9X4kA", "original_url" => "https://www.youtube.com/watch?v=8BwQeX9X4kA", "playlist_index" => 47, "title" => "youtube video #8BwQeX9X4kA"} 22:55:20.159 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" IN (?)) [5] 22:55:20.159 [debug] Current batch of media processed. Will check again in 1000ms 22:55:21.161 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Snow Carrot | S02E59\n00:03:38 | Sand Castle | S02E49\n00:07:05 | Ants On The Train | S02E52\n00:10:36 | The Yule log | S02E35\n00:14:22 | Away all boarders! | S02E41\n00:18:04 | Snow Fly | S02E51\n00:21:29 | It's a tie! | S02E67\n00:25:09 | Sausage Predator | S02E06\n00:28:55 | The Chocolate Chase! | S02E19\n00:32:40 | Black Slope For Gastropod Skiers | S02E55\n00:36:26 | White As Snow | S02E63\n00:40:02 | Rascals! | S02E38\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Carrot #Ants #Ski #Chocolate #Beach #Castle #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2661, "filename" => "/downloads/Miniscule Season 2/2025-07-24 Snow Carrot | Minuscule 🍃 55' Compilation/Snow Carrot | Minuscule 🍃 55' Compilation [33Gq2gdWIFQ].mp4", "id" => "33Gq2gdWIFQ", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=33Gq2gdWIFQ", "playlist_index" => 48, "timestamp" => 1753351204, "title" => "Snow Carrot | Minuscule 🍃 55' Compilation", "upload_date" => "20250724"} 22:55:21.162 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=1004.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" IN (?)) [5] 22:55:21.163 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1004.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" = ?) [5] 22:55:21.165 [debug] QUERY OK source="media_items" db=1.2ms queue=0.1ms idle=1004.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-24 10:00:04Z], 5] 22:55:21.248 [debug] QUERY OK source="media_items" db=81.7ms idle=520.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Snow Carrot | S02E59\n00:03:38 | Sand Castle | S02E49\n00:07:05 | Ants On The Train | S02E52\n00:10:36 | The Yule log | S02E35\n00:14:22 | Away all boarders! | S02E41\n00:18:04 | Snow Fly | S02E51\n00:21:29 | It's a tie! | S02E67\n00:25:09 | Sausage Predator | S02E06\n00:28:55 | The Chocolate Chase! | S02E19\n00:32:40 | Black Slope For Gastropod Skiers | S02E55\n00:36:26 | White As Snow | S02E63\n00:40:02 | Rascals! | S02E38\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Carrot #Ants #Ski #Chocolate #Beach #Castle #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Carrot | Minuscule 🍃 55' Compilation", "bf13a7b5-b64f-42ef-b464-994e750903c0", "https://www.youtube.com/watch?v=33Gq2gdWIFQ", "33Gq2gdWIFQ", 2661, false, 48, "/downloads/Miniscule Season 2/2025-07-24 Snow Carrot | Minuscule 🍃 55' Compilation/Snow Carrot | Minuscule 🍃 55' Compilation [33Gq2gdWIFQ].mp4", false, false, false, 5, [], 1, ~U[2025-07-24 10:00:04Z], ~U[2026-01-30 05:55:21Z], ~U[2026-01-30 05:55:21Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Snow Carrot | S02E59\n00:03:38 | Sand Castle | S02E49\n00:07:05 | Ants On The Train | S02E52\n00:10:36 | The Yule log | S02E35\n00:14:22 | Away all boarders! | S02E41\n00:18:04 | Snow Fly | S02E51\n00:21:29 | It's a tie! | S02E67\n00:25:09 | Sausage Predator | S02E06\n00:28:55 | The Chocolate Chase! | S02E19\n00:32:40 | Black Slope For Gastropod Skiers | S02E55\n00:36:26 | White As Snow | S02E63\n00:40:02 | Rascals! | S02E38\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Carrot #Ants #Ski #Chocolate #Beach #Castle #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Carrot | Minuscule 🍃 55' Compilation", "https://www.youtube.com/watch?v=33Gq2gdWIFQ", "33Gq2gdWIFQ", 2661, false, "/downloads/Miniscule Season 2/2025-07-24 Snow Carrot | Minuscule 🍃 55' Compilation/Snow Carrot | Minuscule 🍃 55' Compilation [33Gq2gdWIFQ].mp4", false, 5, ~U[2025-07-24 10:00:04Z]] 22:55:21.248 [debug] QUERY OK source="sources" db=0.4ms idle=596.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" = ?) [5] 22:55:21.249 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=86.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] 22:55:21.250 [debug] QUERY OK source="media_items" db=0.6ms idle=86.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 [94224] 22:55:21.251 [debug] Current batch of media processed. Will check again in 1000ms 22:55:22.252 [debug] Current batch of media processed. Will check again in 1000ms 22:55:22.493 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/0f/ad/0fad67e3ac1be819815f53650b55dbd8df37a9c31482f9f1bb054a45e21be851.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 22:55:22.494 [debug] Running yt-dlp command for action: download 22:55:22.494 [debug] QUERY OK source="settings" db=0.4ms idle=846.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 [] 22:55:22.495 [debug] QUERY OK source="settings" db=0.3ms idle=839.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 [] 22:55:22.496 [debug] QUERY OK source="settings" db=0.2ms idle=194.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 [] 22:55:22.496 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/fe/e6/fee67a8063e3d8e9d14039c1eb5243613b9f8c9dde3c9c7b843387c54b77186f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:55:23.253 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Iron Monster | S02E33\n00:03:33 | The Monster Of The Haunted Swamp | S02E37\n00:07:04 | Ants On The Train | S02E52\n00:10:35 | Microzilla | S02E07\n00:14:21 | Trapped | S02E64\n00:18:03 | Sausage Predator | S02E06\n00:21:49 | Spider Driver | S02E36\n00:25:30 | Away all boarders! | S02E41\n00:29:13 | The Grocery Store Incident | S02E39\n00:32:43 | Night of the Gastropods | S02E18\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Iron #Monster #Insects #Panic #Swamp #Sounds #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2228, "filename" => "/downloads/Miniscule Season 2/2025-07-08 The Iron Monster | Minuscule 🍃 50' Compilation/The Iron Monster | Minuscule 🍃 50' Compilation [yk2iwHDT7Ds].mp4", "id" => "yk2iwHDT7Ds", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=yk2iwHDT7Ds", "playlist_index" => 49, "timestamp" => 1751954457, "title" => "The Iron Monster | Minuscule 🍃 50' Compilation", "upload_date" => "20250708"} 22:55:23.254 [debug] QUERY OK source="sources" db=0.5ms idle=759.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" IN (?)) [5] 22:55:23.255 [debug] QUERY OK source="sources" db=0.4ms idle=759.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" = ?) [5] 22:55:23.257 [debug] QUERY OK source="media_items" db=1.1ms idle=759.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-08 06:00:57Z], 5] 22:55:23.368 [debug] QUERY OK source="media_items" db=109.8ms idle=607.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Iron Monster | S02E33\n00:03:33 | The Monster Of The Haunted Swamp | S02E37\n00:07:04 | Ants On The Train | S02E52\n00:10:35 | Microzilla | S02E07\n00:14:21 | Trapped | S02E64\n00:18:03 | Sausage Predator | S02E06\n00:21:49 | Spider Driver | S02E36\n00:25:30 | Away all boarders! | S02E41\n00:29:13 | The Grocery Store Incident | S02E39\n00:32:43 | Night of the Gastropods | S02E18\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Iron #Monster #Insects #Panic #Swamp #Sounds #Minuscule #nature #insects #ladybugs #animatedseries", "The Iron Monster | Minuscule 🍃 50' Compilation", "3a9fa9a4-d873-4046-88c8-2ff9e20f9cea", "https://www.youtube.com/watch?v=yk2iwHDT7Ds", "yk2iwHDT7Ds", 2228, false, 49, "/downloads/Miniscule Season 2/2025-07-08 The Iron Monster | Minuscule 🍃 50' Compilation/The Iron Monster | Minuscule 🍃 50' Compilation [yk2iwHDT7Ds].mp4", false, false, false, 5, [], 1, ~U[2025-07-08 06:00:57Z], ~U[2026-01-30 05:55:23Z], ~U[2026-01-30 05:55:23Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Iron Monster | S02E33\n00:03:33 | The Monster Of The Haunted Swamp | S02E37\n00:07:04 | Ants On The Train | S02E52\n00:10:35 | Microzilla | S02E07\n00:14:21 | Trapped | S02E64\n00:18:03 | Sausage Predator | S02E06\n00:21:49 | Spider Driver | S02E36\n00:25:30 | Away all boarders! | S02E41\n00:29:13 | The Grocery Store Incident | S02E39\n00:32:43 | Night of the Gastropods | S02E18\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Iron #Monster #Insects #Panic #Swamp #Sounds #Minuscule #nature #insects #ladybugs #animatedseries", "The Iron Monster | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=yk2iwHDT7Ds", "yk2iwHDT7Ds", 2228, false, "/downloads/Miniscule Season 2/2025-07-08 The Iron Monster | Minuscule 🍃 50' Compilation/The Iron Monster | Minuscule 🍃 50' Compilation [yk2iwHDT7Ds].mp4", false, 5, ~U[2025-07-08 06:00:57Z]] 22:55:23.369 [debug] QUERY OK source="sources" db=0.5ms idle=711.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" = ?) [5] 22:55:23.369 [debug] QUERY OK source="media_profiles" db=0.4ms idle=114.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] 22:55:23.370 [debug] QUERY OK source="media_items" db=0.7ms idle=114.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 [93308] 22:55:23.371 [debug] Current batch of media processed. Will check again in 1000ms 22:55:24.372 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Love Apple | S02E45\n00:03:39 | Homeless | S02E02\n00:07:27 | Metamorphosis | S02E61\n00:10:57 | The Wing Case | S02E01\n00:14:43 | Hop On! | S02E25\n00:18:20 | Valentine's Day | S02E15\n00:22:05 | A Butterfly's Nightmare | S02E20\n00:25:22 | Trapped | S02E64\n00:29:05 | Away all boarders! | S02E41\n00:32:47 | If Only Lonely | S02E22\n00:36:33 | The Annoying Neighbor | S02E28\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #apple #caterpillars #separation #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2447, "filename" => "/downloads/Miniscule Season 2/2025-07-17 Love Apple | Minuscule 🍃 55' Compilation/Love Apple | Minuscule 🍃 55' Compilation [6qeIwbnhMqo].mp4", "id" => "6qeIwbnhMqo", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=6qeIwbnhMqo", "playlist_index" => 50, "timestamp" => 1752746421, "title" => "Love Apple | Minuscule 🍃 55' Compilation", "upload_date" => "20250717"} 22:55:24.373 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" IN (?)) [5] 22:55:24.374 [debug] QUERY OK source="sources" db=0.2ms idle=1003.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" = ?) [5] 22:55:24.375 [debug] QUERY OK source="media_items" db=1.0ms queue=0.1ms idle=1003.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-17 10:00:21Z], 5] 22:55:24.395 [debug] QUERY OK source="media_items" db=19.1ms idle=723.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Love Apple | S02E45\n00:03:39 | Homeless | S02E02\n00:07:27 | Metamorphosis | S02E61\n00:10:57 | The Wing Case | S02E01\n00:14:43 | Hop On! | S02E25\n00:18:20 | Valentine's Day | S02E15\n00:22:05 | A Butterfly's Nightmare | S02E20\n00:25:22 | Trapped | S02E64\n00:29:05 | Away all boarders! | S02E41\n00:32:47 | If Only Lonely | S02E22\n00:36:33 | The Annoying Neighbor | S02E28\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #apple #caterpillars #separation #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "Love Apple | Minuscule 🍃 55' Compilation", "f1ece771-517f-446b-8dda-b7df8272e47e", "https://www.youtube.com/watch?v=6qeIwbnhMqo", "6qeIwbnhMqo", 2447, false, 50, "/downloads/Miniscule Season 2/2025-07-17 Love Apple | Minuscule 🍃 55' Compilation/Love Apple | Minuscule 🍃 55' Compilation [6qeIwbnhMqo].mp4", false, false, false, 5, [], 1, ~U[2025-07-17 10:00:21Z], ~U[2026-01-30 05:55:24Z], ~U[2026-01-30 05:55:24Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Love Apple | S02E45\n00:03:39 | Homeless | S02E02\n00:07:27 | Metamorphosis | S02E61\n00:10:57 | The Wing Case | S02E01\n00:14:43 | Hop On! | S02E25\n00:18:20 | Valentine's Day | S02E15\n00:22:05 | A Butterfly's Nightmare | S02E20\n00:25:22 | Trapped | S02E64\n00:29:05 | Away all boarders! | S02E41\n00:32:47 | If Only Lonely | S02E22\n00:36:33 | The Annoying Neighbor | S02E28\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #apple #caterpillars #separation #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "Love Apple | Minuscule 🍃 55' Compilation", "https://www.youtube.com/watch?v=6qeIwbnhMqo", "6qeIwbnhMqo", 2447, false, "/downloads/Miniscule Season 2/2025-07-17 Love Apple | Minuscule 🍃 55' Compilation/Love Apple | Minuscule 🍃 55' Compilation [6qeIwbnhMqo].mp4", false, 5, ~U[2025-07-17 10:00:21Z]] 22:55:24.396 [debug] QUERY OK source="sources" db=0.4ms idle=737.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" = ?) [5] 22:55:24.397 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=23.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] 22:55:24.398 [debug] QUERY OK source="media_items" db=0.6ms idle=23.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 [93766] 22:55:24.398 [debug] Current batch of media processed. Will check again in 1000ms 22:55:25.399 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Long Road | S02E34\n00:03:42 | Thirsty | S02E29\n00:07:15 | Labyrinth | S02E69\n00:11:00 | The Annoying Neighbor | S02E28\n00:14:36 | Night of the Gastropods | S02E18\n00:18:22 | The Butterfly Effect | S02E23\n00:21:44 | Love Apple | S02E45\n00:25:24 | Honey Fly | S02E08\n00:29:14 | Zzz In The Metro | S02E53\n00:32:50 | A Butterfly's Nightmare | S02E20\n00:36:06 | White As Snow | S02E63\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#snail #water #journey #hazard #thirsty #heatwave #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2421, "filename" => "/downloads/Miniscule Season 2/2025-07-15 The Long Road | Minuscule 🍃 50' Compilation/The Long Road | Minuscule 🍃 50' Compilation [zzdfZs9qUn4].mp4", "id" => "zzdfZs9qUn4", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=zzdfZs9qUn4", "playlist_index" => 51, "timestamp" => 1752559258, "title" => "The Long Road | Minuscule 🍃 50' Compilation", "upload_date" => "20250715"} 22:55:25.400 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:55:25.401 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:55:25.402 [debug] QUERY OK source="media_items" db=1.2ms idle=1002.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-15 06:00:58Z], 5] 22:55:26.475 [debug] QUERY OK source="media_items" db=1071.6ms idle=748.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Long Road | S02E34\n00:03:42 | Thirsty | S02E29\n00:07:15 | Labyrinth | S02E69\n00:11:00 | The Annoying Neighbor | S02E28\n00:14:36 | Night of the Gastropods | S02E18\n00:18:22 | The Butterfly Effect | S02E23\n00:21:44 | Love Apple | S02E45\n00:25:24 | Honey Fly | S02E08\n00:29:14 | Zzz In The Metro | S02E53\n00:32:50 | A Butterfly's Nightmare | S02E20\n00:36:06 | White As Snow | S02E63\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#snail #water #journey #hazard #thirsty #heatwave #Minuscule #nature #insects #ladybugs #animatedseries", "The Long Road | Minuscule 🍃 50' Compilation", "ffed89c6-4efc-440f-b27c-5dffb0d0350e", "https://www.youtube.com/watch?v=zzdfZs9qUn4", "zzdfZs9qUn4", 2421, false, 51, "/downloads/Miniscule Season 2/2025-07-15 The Long Road | Minuscule 🍃 50' Compilation/The Long Road | Minuscule 🍃 50' Compilation [zzdfZs9qUn4].mp4", false, false, false, 5, [], 1, ~U[2025-07-15 06:00:58Z], ~U[2026-01-30 05:55:25Z], ~U[2026-01-30 05:55:25Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Long Road | S02E34\n00:03:42 | Thirsty | S02E29\n00:07:15 | Labyrinth | S02E69\n00:11:00 | The Annoying Neighbor | S02E28\n00:14:36 | Night of the Gastropods | S02E18\n00:18:22 | The Butterfly Effect | S02E23\n00:21:44 | Love Apple | S02E45\n00:25:24 | Honey Fly | S02E08\n00:29:14 | Zzz In The Metro | S02E53\n00:32:50 | A Butterfly's Nightmare | S02E20\n00:36:06 | White As Snow | S02E63\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#snail #water #journey #hazard #thirsty #heatwave #Minuscule #nature #insects #ladybugs #animatedseries", "The Long Road | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=zzdfZs9qUn4", "zzdfZs9qUn4", 2421, false, "/downloads/Miniscule Season 2/2025-07-15 The Long Road | Minuscule 🍃 50' Compilation/The Long Road | Minuscule 🍃 50' Compilation [zzdfZs9qUn4].mp4", false, 5, ~U[2025-07-15 06:00:58Z]] 22:55:26.476 [debug] QUERY OK source="sources" db=0.4ms idle=1074.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" = ?) [5] 22:55:26.476 [debug] QUERY OK source="media_profiles" db=0.5ms idle=1073.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] 22:55:26.477 [debug] QUERY OK source="media_items" db=0.6ms idle=433.5ms 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 [93767] 22:55:26.478 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Stubborn Spider | S02E04\n00:03:45 | A Pathetic She'Nut'Igan | S02E12\n00:07:30 | Labyrinth | S02E69\n00:11:16 | Zzz In The Metro | S02E53\n00:14:51 | Go Blue Go! | S02E54\n00:18:33 | Honey Fly | S02E08\n00:22:23 | Brushing | S02E46\n00:25:56 | Spider from the Depths | S02E31\n00:29:30 | The Hat Of The Medusa | S02E17\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#stubborn #spider #determination #house #Pathetic #Spider #Invent #Strategies #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2034, "filename" => "/downloads/Miniscule Season 2/2025-07-10 The Stubborn Spider | Minuscule 🍃 45' Compilation/The Stubborn Spider | Minuscule 🍃 45' Compilation [1TMeERmmHeE].mp4", "id" => "1TMeERmmHeE", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=1TMeERmmHeE", "playlist_index" => 52, "timestamp" => 1752141713, "title" => "The Stubborn Spider | Minuscule 🍃 45' Compilation", "upload_date" => "20250710"} 22:55:26.479 [debug] QUERY OK source="sources" db=0.4ms idle=428.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" IN (?)) [5] 22:55:26.479 [debug] QUERY OK source="sources" db=0.2ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:55:26.480 [debug] QUERY OK source="media_items" db=0.8ms idle=3.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-10 10:01:53Z], 5] 22:55:26.575 [debug] QUERY OK source="media_items" db=93.7ms idle=4.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Stubborn Spider | S02E04\n00:03:45 | A Pathetic She'Nut'Igan | S02E12\n00:07:30 | Labyrinth | S02E69\n00:11:16 | Zzz In The Metro | S02E53\n00:14:51 | Go Blue Go! | S02E54\n00:18:33 | Honey Fly | S02E08\n00:22:23 | Brushing | S02E46\n00:25:56 | Spider from the Depths | S02E31\n00:29:30 | The Hat Of The Medusa | S02E17\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#stubborn #spider #determination #house #Pathetic #Spider #Invent #Strategies #Minuscule #nature #insects #ladybugs #animatedseries", "The Stubborn Spider | Minuscule 🍃 45' Compilation", "ebd98594-bb95-4bb9-b0ef-ecfdfd0d4538", "https://www.youtube.com/watch?v=1TMeERmmHeE", "1TMeERmmHeE", 2034, false, 52, "/downloads/Miniscule Season 2/2025-07-10 The Stubborn Spider | Minuscule 🍃 45' Compilation/The Stubborn Spider | Minuscule 🍃 45' Compilation [1TMeERmmHeE].mp4", false, false, false, 5, [], 1, ~U[2025-07-10 10:01:53Z], ~U[2026-01-30 05:55:26Z], ~U[2026-01-30 05:55:26Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Stubborn Spider | S02E04\n00:03:45 | A Pathetic She'Nut'Igan | S02E12\n00:07:30 | Labyrinth | S02E69\n00:11:16 | Zzz In The Metro | S02E53\n00:14:51 | Go Blue Go! | S02E54\n00:18:33 | Honey Fly | S02E08\n00:22:23 | Brushing | S02E46\n00:25:56 | Spider from the Depths | S02E31\n00:29:30 | The Hat Of The Medusa | S02E17\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#stubborn #spider #determination #house #Pathetic #Spider #Invent #Strategies #Minuscule #nature #insects #ladybugs #animatedseries", "The Stubborn Spider | Minuscule 🍃 45' Compilation", "https://www.youtube.com/watch?v=1TMeERmmHeE", "1TMeERmmHeE", 2034, false, "/downloads/Miniscule Season 2/2025-07-10 The Stubborn Spider | Minuscule 🍃 45' Compilation/The Stubborn Spider | Minuscule 🍃 45' Compilation [1TMeERmmHeE].mp4", false, 5, ~U[2025-07-10 10:01:53Z]] 22:55:26.576 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=98.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" = ?) [5] 22:55:26.577 [debug] QUERY OK source="media_profiles" db=0.3ms idle=97.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] 22:55:26.578 [debug] QUERY OK source="media_items" db=0.6ms idle=98.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 [93309] 22:55:26.578 [debug] Current batch of media processed. Will check again in 1000ms 22:55:26.741 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/fe/e6/fee67a8063e3d8e9d14039c1eb5243613b9f8c9dde3c9c7b843387c54b77186f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 22:55:26.741 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 22:55:26.743 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8093399,"event":"job:exception","queue_time":958458,"attempt":3,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:55:27.580 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pollution | S02E60\n00:03:45 | The Annoying Neighbor | S02E28\n00:07:21 | Mission : BBQ | S02E09\n00:11:07 | Acrobatics | S02E16\n00:14:52 | The Mosquito Of The Caribbean | S02E57\n00:18:38 | Zzz zzz | S02E44\n00:22:08 | Sunburn | S02E40\n00:25:33 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pollution #Mosquito #City #Noise #caterpillar #noisy #neighbor #apple #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1782, "filename" => "/downloads/Miniscule Season 2/2025-06-26 Pollution | Minuscule 🍃 40' Compilation/Pollution | Minuscule 🍃 40' Compilation [5cSqpA_gNqs].mp4", "id" => "5cSqpA_gNqs", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=5cSqpA_gNqs", "playlist_index" => 53, "timestamp" => 1750932007, "title" => "Pollution | Minuscule 🍃 40' Compilation", "upload_date" => "20250626"} 22:55:27.581 [debug] QUERY OK source="sources" db=0.5ms idle=1002.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" IN (?)) [5] 22:55:27.582 [debug] QUERY OK source="sources" db=0.3ms idle=839.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" = ?) [5] 22:55:27.584 [debug] QUERY OK source="media_items" db=1.2ms idle=832.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-26 10:00:07Z], 5] 22:55:27.642 [debug] QUERY OK source="media_items" db=57.3ms idle=538.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pollution | S02E60\n00:03:45 | The Annoying Neighbor | S02E28\n00:07:21 | Mission : BBQ | S02E09\n00:11:07 | Acrobatics | S02E16\n00:14:52 | The Mosquito Of The Caribbean | S02E57\n00:18:38 | Zzz zzz | S02E44\n00:22:08 | Sunburn | S02E40\n00:25:33 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pollution #Mosquito #City #Noise #caterpillar #noisy #neighbor #apple #Minuscule #nature #insects #ladybugs #animatedseries", "Pollution | Minuscule 🍃 40' Compilation", "63b5f863-c4e5-4bc1-b04d-6a49aa980232", "https://www.youtube.com/watch?v=5cSqpA_gNqs", "5cSqpA_gNqs", 1782, false, 53, "/downloads/Miniscule Season 2/2025-06-26 Pollution | Minuscule 🍃 40' Compilation/Pollution | Minuscule 🍃 40' Compilation [5cSqpA_gNqs].mp4", false, false, false, 5, [], 1, ~U[2025-06-26 10:00:07Z], ~U[2026-01-30 05:55:27Z], ~U[2026-01-30 05:55:27Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pollution | S02E60\n00:03:45 | The Annoying Neighbor | S02E28\n00:07:21 | Mission : BBQ | S02E09\n00:11:07 | Acrobatics | S02E16\n00:14:52 | The Mosquito Of The Caribbean | S02E57\n00:18:38 | Zzz zzz | S02E44\n00:22:08 | Sunburn | S02E40\n00:25:33 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pollution #Mosquito #City #Noise #caterpillar #noisy #neighbor #apple #Minuscule #nature #insects #ladybugs #animatedseries", "Pollution | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=5cSqpA_gNqs", "5cSqpA_gNqs", 1782, false, "/downloads/Miniscule Season 2/2025-06-26 Pollution | Minuscule 🍃 40' Compilation/Pollution | Minuscule 🍃 40' Compilation [5cSqpA_gNqs].mp4", false, 5, ~U[2025-06-26 10:00:07Z]] 22:55:27.643 [debug] QUERY OK source="sources" db=0.5ms idle=590.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" = ?) [5] 22:55:27.644 [debug] QUERY OK source="media_profiles" db=0.3ms idle=62.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] 22:55:27.645 [debug] QUERY OK source="media_items" db=0.7ms idle=62.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 [91154] 22:55:27.645 [debug] Current batch of media processed. Will check again in 1000ms 22:55:28.646 [debug] Current batch of media processed. Will check again in 1000ms 22:55:29.647 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Broom's Sweep | S03E21\n00:01:29 | The Sled and the Ant | S03E25\n00:02:58 | The Wicked Web | S03E07\n00:04:27 | Sow The Wind And Reap The Storm | S03E11\n00:06:05 | Like A Cannon Ball | S03E03\n00:07:34 | A Pea In The Hand Is Worth... | S03E05\n00:09:06 | The Cruel Cow in The Meadow | S03E09\n00:10:36 | The Doughnut | S03E16\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#broom #carrot #wasps #centipede #spider #pine #transportation #snowy #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 747, "filename" => "/downloads/Miniscule Season 2/2025-06-28 Broom's Sweep | Minuscule 🍃 15' Compilation/Broom's Sweep | Minuscule 🍃 15' Compilation [wiTbTtZA7us].mp4", "id" => "wiTbTtZA7us", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=wiTbTtZA7us", "playlist_index" => 54, "timestamp" => 1751133650, "title" => "Broom's Sweep | Minuscule 🍃 15' Compilation", "upload_date" => "20250628"} 22:55:29.648 [debug] QUERY OK source="sources" db=0.3ms idle=598.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" IN (?)) [5] 22:55:29.648 [debug] QUERY OK source="sources" db=0.2ms idle=591.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" = ?) [5] 22:55:29.649 [debug] QUERY OK source="media_items" db=0.8ms idle=174.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-28 18:00:50Z], 5] 22:55:29.669 [debug] QUERY OK source="media_items" db=19.0ms idle=175.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Broom's Sweep | S03E21\n00:01:29 | The Sled and the Ant | S03E25\n00:02:58 | The Wicked Web | S03E07\n00:04:27 | Sow The Wind And Reap The Storm | S03E11\n00:06:05 | Like A Cannon Ball | S03E03\n00:07:34 | A Pea In The Hand Is Worth... | S03E05\n00:09:06 | The Cruel Cow in The Meadow | S03E09\n00:10:36 | The Doughnut | S03E16\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#broom #carrot #wasps #centipede #spider #pine #transportation #snowy #Minuscule #nature #insects #ladybugs #animatedseries", "Broom's Sweep | Minuscule 🍃 15' Compilation", "7a23c46d-0e8f-47df-b740-577e62d731b2", "https://www.youtube.com/watch?v=wiTbTtZA7us", "wiTbTtZA7us", 747, false, 54, "/downloads/Miniscule Season 2/2025-06-28 Broom's Sweep | Minuscule 🍃 15' Compilation/Broom's Sweep | Minuscule 🍃 15' Compilation [wiTbTtZA7us].mp4", false, false, false, 5, [], 1, ~U[2025-06-28 18:00:50Z], ~U[2026-01-30 05:55:29Z], ~U[2026-01-30 05:55:29Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Broom's Sweep | S03E21\n00:01:29 | The Sled and the Ant | S03E25\n00:02:58 | The Wicked Web | S03E07\n00:04:27 | Sow The Wind And Reap The Storm | S03E11\n00:06:05 | Like A Cannon Ball | S03E03\n00:07:34 | A Pea In The Hand Is Worth... | S03E05\n00:09:06 | The Cruel Cow in The Meadow | S03E09\n00:10:36 | The Doughnut | S03E16\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#broom #carrot #wasps #centipede #spider #pine #transportation #snowy #Minuscule #nature #insects #ladybugs #animatedseries", "Broom's Sweep | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=wiTbTtZA7us", "wiTbTtZA7us", 747, false, "/downloads/Miniscule Season 2/2025-06-28 Broom's Sweep | Minuscule 🍃 15' Compilation/Broom's Sweep | Minuscule 🍃 15' Compilation [wiTbTtZA7us].mp4", false, 5, ~U[2025-06-28 18:00:50Z]] 22:55:29.670 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=195.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" = ?) [5] 22:55:29.671 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=22.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] 22:55:29.671 [debug] QUERY OK source="media_items" db=0.4ms idle=22.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 [91156] 22:55:29.672 [debug] Current batch of media processed. Will check again in 1000ms 22:55:30.673 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Down The Chimney | S02E42\n00:03:45 | Umbrella And Coconut Trees | S02E71\n00:07:19 | The Yule log | S02E35\n00:11:04 | Away all boarders! | S02E41\n00:14:47 | The Housing Plant Project | S02E26\n00:18:23 | Ladybugland | S02E62\n00:21:51 | If Only Lonely | S02E22\n00:25:36 | Snow Fly | S02E51\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybugs #chimney #Christmas #winter #umbrella #coconut #ladybug #Minuscule #nature #insects #animatedseries", "duration" => 1779, "filename" => "/downloads/Miniscule Season 2/2025-07-01 Down The Chimney | Minuscule 🍃 40' Compilation/Down The Chimney | Minuscule 🍃 40' Compilation [TyXg5k2lZA4].mp4", "id" => "TyXg5k2lZA4", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=TyXg5k2lZA4", "playlist_index" => 55, "timestamp" => 1751349621, "title" => "Down The Chimney | Minuscule 🍃 40' Compilation", "upload_date" => "20250701"} 22:55:30.674 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:55:30.675 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:55:30.676 [debug] QUERY OK source="media_items" db=1.0ms idle=1003.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-01 06:00:21Z], 5] 22:55:30.699 [debug] QUERY OK source="media_items" db=22.3ms idle=625.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Down The Chimney | S02E42\n00:03:45 | Umbrella And Coconut Trees | S02E71\n00:07:19 | The Yule log | S02E35\n00:11:04 | Away all boarders! | S02E41\n00:14:47 | The Housing Plant Project | S02E26\n00:18:23 | Ladybugland | S02E62\n00:21:51 | If Only Lonely | S02E22\n00:25:36 | Snow Fly | S02E51\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybugs #chimney #Christmas #winter #umbrella #coconut #ladybug #Minuscule #nature #insects #animatedseries", "Down The Chimney | Minuscule 🍃 40' Compilation", "374568b3-338c-4a0f-96c3-52d3a3077675", "https://www.youtube.com/watch?v=TyXg5k2lZA4", "TyXg5k2lZA4", 1779, false, 55, "/downloads/Miniscule Season 2/2025-07-01 Down The Chimney | Minuscule 🍃 40' Compilation/Down The Chimney | Minuscule 🍃 40' Compilation [TyXg5k2lZA4].mp4", false, false, false, 5, [], 1, ~U[2025-07-01 06:00:21Z], ~U[2026-01-30 05:55:30Z], ~U[2026-01-30 05:55:30Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Down The Chimney | S02E42\n00:03:45 | Umbrella And Coconut Trees | S02E71\n00:07:19 | The Yule log | S02E35\n00:11:04 | Away all boarders! | S02E41\n00:14:47 | The Housing Plant Project | S02E26\n00:18:23 | Ladybugland | S02E62\n00:21:51 | If Only Lonely | S02E22\n00:25:36 | Snow Fly | S02E51\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybugs #chimney #Christmas #winter #umbrella #coconut #ladybug #Minuscule #nature #insects #animatedseries", "Down The Chimney | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=TyXg5k2lZA4", "TyXg5k2lZA4", 1779, false, "/downloads/Miniscule Season 2/2025-07-01 Down The Chimney | Minuscule 🍃 40' Compilation/Down The Chimney | Minuscule 🍃 40' Compilation [TyXg5k2lZA4].mp4", false, 5, ~U[2025-07-01 06:00:21Z]] 22:55:30.700 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=641.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" = ?) [5] 22:55:30.701 [debug] QUERY OK source="media_profiles" db=0.2ms idle=26.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] 22:55:30.702 [debug] QUERY OK source="media_items" db=0.4ms idle=26.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 [91645] 22:55:30.702 [debug] Current batch of media processed. Will check again in 1000ms 22:55:31.703 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | It's a tie! | S02E67\n00:03:40 | At Full Speed | S02E27\n00:07:24 | The Housing Plant Project | S02E26\n00:11:00 | White As Snow | S02E63\n00:14:37 | Chewing gum rodeo | S02E14\n00:18:22 | An Acorn Season | S02E05\n00:22:08 | Ants On The Train | S02E52\n00:25:39 | Snow Fly | S02E51\n00:29:04 | Bzzaping | S02E03\n00:32:51 | Go Blue Go! | S02E54\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#insects #games #competition #referee #race #country #wacky #Minuscule #nature #ladybugs #animatedseries", "duration" => 2231, "filename" => "/downloads/Miniscule Season 2/2025-06-21 It's a tie! | Minuscule 🍃 50' Compilation/It's a tie! | Minuscule 🍃 50' Compilation [uxyo_7irQn8].mp4", "id" => "uxyo_7irQn8", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=uxyo_7irQn8", "playlist_index" => 56, "timestamp" => 1750528861, "title" => "It's a tie! | Minuscule 🍃 50' Compilation", "upload_date" => "20250621"} 22:55:31.704 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:55:31.705 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:55:31.706 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-21 18:01:01Z], 5] 22:55:31.709 [debug] QUERY OK source="media_items" db=2.3ms idle=653.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | It's a tie! | S02E67\n00:03:40 | At Full Speed | S02E27\n00:07:24 | The Housing Plant Project | S02E26\n00:11:00 | White As Snow | S02E63\n00:14:37 | Chewing gum rodeo | S02E14\n00:18:22 | An Acorn Season | S02E05\n00:22:08 | Ants On The Train | S02E52\n00:25:39 | Snow Fly | S02E51\n00:29:04 | Bzzaping | S02E03\n00:32:51 | Go Blue Go! | S02E54\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#insects #games #competition #referee #race #country #wacky #Minuscule #nature #ladybugs #animatedseries", "It's a tie! | Minuscule 🍃 50' Compilation", "d228f11e-bdb5-4d99-a970-6cc7c8ecd822", "https://www.youtube.com/watch?v=uxyo_7irQn8", "uxyo_7irQn8", 2231, false, 56, "/downloads/Miniscule Season 2/2025-06-21 It's a tie! | Minuscule 🍃 50' Compilation/It's a tie! | Minuscule 🍃 50' Compilation [uxyo_7irQn8].mp4", false, false, false, 5, [], 1, ~U[2025-06-21 18:01:01Z], ~U[2026-01-30 05:55:31Z], ~U[2026-01-30 05:55:31Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | It's a tie! | S02E67\n00:03:40 | At Full Speed | S02E27\n00:07:24 | The Housing Plant Project | S02E26\n00:11:00 | White As Snow | S02E63\n00:14:37 | Chewing gum rodeo | S02E14\n00:18:22 | An Acorn Season | S02E05\n00:22:08 | Ants On The Train | S02E52\n00:25:39 | Snow Fly | S02E51\n00:29:04 | Bzzaping | S02E03\n00:32:51 | Go Blue Go! | S02E54\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#insects #games #competition #referee #race #country #wacky #Minuscule #nature #ladybugs #animatedseries", "It's a tie! | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=uxyo_7irQn8", "uxyo_7irQn8", 2231, false, "/downloads/Miniscule Season 2/2025-06-21 It's a tie! | Minuscule 🍃 50' Compilation/It's a tie! | Minuscule 🍃 50' Compilation [uxyo_7irQn8].mp4", false, 5, ~U[2025-06-21 18:01:01Z]] 22:55:31.710 [debug] QUERY OK source="sources" db=0.3ms idle=649.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" = ?) [5] 22:55:31.711 [debug] QUERY OK source="media_profiles" db=0.3ms idle=6.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] 22:55:31.712 [debug] QUERY OK source="media_items" db=0.5ms idle=6.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 [91158] 22:55:31.712 [debug] Current batch of media processed. Will check again in 1000ms 22:55:32.713 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Away all boarders! | S02E41\n00:03:42 | Twelve Angry Snails | S02E66\n00:07:15 | Top Tabasco | S02E70\n00:10:52 | Turbo speed | S02E58\n00:14:17 | Sand Castle | S02E49\n00:17:43 | White As Snow | S02E63\n00:21:20 | Metamorphosis | S02E61\n00:24:50 | Ants On The Train | S02E52\n00:28:22 | The Monster Of The Haunted Swamp | S02E37\n00:31:52 | Patatas Fritas | S02E21\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#battle #ants #cottage #pistachios #snails #escape #gourmet #restaurant #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2177, "filename" => "/downloads/Miniscule Season 2/2025-06-19 Away all boarders! | Minuscule 🍃 45' Compilation/Away all boarders! | Minuscule 🍃 45' Compilation [G4SP8ouB0Yk].mp4", "id" => "G4SP8ouB0Yk", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=G4SP8ouB0Yk", "playlist_index" => 57, "timestamp" => 1750327304, "title" => "Away all boarders! | Minuscule 🍃 45' Compilation", "upload_date" => "20250619"} 22:55:32.714 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:55:32.715 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:55:32.716 [debug] QUERY OK source="media_items" db=1.0ms idle=1003.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-19 10:01:44Z], 5] 22:55:32.734 [debug] QUERY OK source="media_items" db=16.2ms idle=661.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Away all boarders! | S02E41\n00:03:42 | Twelve Angry Snails | S02E66\n00:07:15 | Top Tabasco | S02E70\n00:10:52 | Turbo speed | S02E58\n00:14:17 | Sand Castle | S02E49\n00:17:43 | White As Snow | S02E63\n00:21:20 | Metamorphosis | S02E61\n00:24:50 | Ants On The Train | S02E52\n00:28:22 | The Monster Of The Haunted Swamp | S02E37\n00:31:52 | Patatas Fritas | S02E21\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#battle #ants #cottage #pistachios #snails #escape #gourmet #restaurant #Minuscule #nature #insects #ladybugs #animatedseries", "Away all boarders! | Minuscule 🍃 45' Compilation", "76a2ec25-e84c-4dcc-8dd4-06456c741de8", "https://www.youtube.com/watch?v=G4SP8ouB0Yk", "G4SP8ouB0Yk", 2177, false, 57, "/downloads/Miniscule Season 2/2025-06-19 Away all boarders! | Minuscule 🍃 45' Compilation/Away all boarders! | Minuscule 🍃 45' Compilation [G4SP8ouB0Yk].mp4", false, false, false, 5, [], 1, ~U[2025-06-19 10:01:44Z], ~U[2026-01-30 05:55:32Z], ~U[2026-01-30 05:55:32Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Away all boarders! | S02E41\n00:03:42 | Twelve Angry Snails | S02E66\n00:07:15 | Top Tabasco | S02E70\n00:10:52 | Turbo speed | S02E58\n00:14:17 | Sand Castle | S02E49\n00:17:43 | White As Snow | S02E63\n00:21:20 | Metamorphosis | S02E61\n00:24:50 | Ants On The Train | S02E52\n00:28:22 | The Monster Of The Haunted Swamp | S02E37\n00:31:52 | Patatas Fritas | S02E21\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#battle #ants #cottage #pistachios #snails #escape #gourmet #restaurant #Minuscule #nature #insects #ladybugs #animatedseries", "Away all boarders! | Minuscule 🍃 45' Compilation", "https://www.youtube.com/watch?v=G4SP8ouB0Yk", "G4SP8ouB0Yk", 2177, false, "/downloads/Miniscule Season 2/2025-06-19 Away all boarders! | Minuscule 🍃 45' Compilation/Away all boarders! | Minuscule 🍃 45' Compilation [G4SP8ouB0Yk].mp4", false, 5, ~U[2025-06-19 10:01:44Z]] 22:55:32.735 [debug] QUERY OK source="sources" db=0.9ms queue=0.1ms idle=672.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" = ?) [5] 22:55:32.736 [debug] QUERY OK source="media_profiles" db=0.3ms idle=21.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] 22:55:32.737 [debug] QUERY OK source="media_items" db=0.6ms idle=21.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 [91161] 22:55:32.737 [debug] Current batch of media processed. Will check again in 1000ms 22:55:33.738 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #JOl_P-vg2kk/youtube video #JOl_P-vg2kk [JOl_P-vg2kk].NA", "id" => "JOl_P-vg2kk", "original_url" => "https://www.youtube.com/watch?v=JOl_P-vg2kk", "playlist_index" => 58, "title" => "youtube video #JOl_P-vg2kk"} 22:55:33.739 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:55:33.739 [debug] Current batch of media processed. Will check again in 1000ms 22:55:34.740 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Spider Driver | S02E36\n00:03:41 | Fly Hunting | S02E24\n00:07:15 | The Grocery Store Incident | S02E39\n00:10:45 | Brushing | S02E46\n00:14:18 | Ladybugland | S02E62\n00:17:45 | Labyrinth | S02E69\n00:21:31 | Refrigerated | S02E65\n00:25:05 | Spider from the Depths | S02E31\n00:28:40 | A Pathetic She'Nut'Igan | S02E12\n00:32:25 | The Stubborn Spider | S02E04\n00:36:11 | Bzzaping | S02E03\n00:39:58 | The Hat Of The Medusa | S02E17\n00:43:43 | The Butterfly Effect | S02E23\n00:47:06 | Summer Hat | S02E48\n00:50:47 | The Grocery Store Racketeer | S02E50\n00:54:23 | High voltage | S02E30\n00:57:57 | Microzilla | S02E07\n01:01:42 | Away all boarders! | S02E41\n01:05:25 | Zzz zzz | S02E44\n01:08:55 | Trapped | S02E64\n01:12:38 | The Vegetable Garden | S02E10\n01:16:23 | Rascals! | S02E38\n01:20:02 | The Monster Of The Haunted Swamp | S02E37\n01:23:33 | At Full Speed | S02E27\n01:27:16 | The Mosquito Of The Caribbean | S02E57\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #fly #hunting #pursuit #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 5501, "filename" => "/downloads/Miniscule Season 2/2025-05-24 Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation/Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation [Hdt7fIPDP0Q].mp4", "id" => "Hdt7fIPDP0Q", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Hdt7fIPDP0Q", "playlist_index" => 59, "timestamp" => 1748109663, "title" => "Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation", "upload_date" => "20250524"} 22:55:34.741 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1001.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" IN (?)) [5] 22:55:34.742 [debug] QUERY OK source="sources" db=0.4ms idle=682.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" = ?) [5] 22:55:34.744 [debug] QUERY OK source="media_items" db=1.2ms idle=676.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-24 18:01:03Z], 5] 22:55:34.765 [debug] QUERY OK source="media_items" db=20.3ms idle=270.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Spider Driver | S02E36\n00:03:41 | Fly Hunting | S02E24\n00:07:15 | The Grocery Store Incident | S02E39\n00:10:45 | Brushing | S02E46\n00:14:18 | Ladybugland | S02E62\n00:17:45 | Labyrinth | S02E69\n00:21:31 | Refrigerated | S02E65\n00:25:05 | Spider from the Depths | S02E31\n00:28:40 | A Pathetic She'Nut'Igan | S02E12\n00:32:25 | The Stubborn Spider | S02E04\n00:36:11 | Bzzaping | S02E03\n00:39:58 | The Hat Of The Medusa | S02E17\n00:43:43 | The Butterfly Effect | S02E23\n00:47:06 | Summer Hat | S02E48\n00:50:47 | The Grocery Store Racketeer | S02E50\n00:54:23 | High voltage | S02E30\n00:57:57 | Microzilla | S02E07\n01:01:42 | Away all boarders! | S02E41\n01:05:25 | Zzz zzz | S02E44\n01:08:55 | Trapped | S02E64\n01:12:38 | The Vegetable Garden | S02E10\n01:16:23 | Rascals! | S02E38\n01:20:02 | The Monster Of The Haunted Swamp | S02E37\n01:23:33 | At Full Speed | S02E27\n01:27:16 | The Mosquito Of The Caribbean | S02E57\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #fly #hunting #pursuit #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation", "4fbae39d-347c-4539-b063-bc371d1db33c", "https://www.youtube.com/watch?v=Hdt7fIPDP0Q", "Hdt7fIPDP0Q", 5501, false, 59, "/downloads/Miniscule Season 2/2025-05-24 Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation/Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation [Hdt7fIPDP0Q].mp4", false, false, false, 5, [], 1, ~U[2025-05-24 18:01:03Z], ~U[2026-01-30 05:55:34Z], ~U[2026-01-30 05:55:34Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Spider Driver | S02E36\n00:03:41 | Fly Hunting | S02E24\n00:07:15 | The Grocery Store Incident | S02E39\n00:10:45 | Brushing | S02E46\n00:14:18 | Ladybugland | S02E62\n00:17:45 | Labyrinth | S02E69\n00:21:31 | Refrigerated | S02E65\n00:25:05 | Spider from the Depths | S02E31\n00:28:40 | A Pathetic She'Nut'Igan | S02E12\n00:32:25 | The Stubborn Spider | S02E04\n00:36:11 | Bzzaping | S02E03\n00:39:58 | The Hat Of The Medusa | S02E17\n00:43:43 | The Butterfly Effect | S02E23\n00:47:06 | Summer Hat | S02E48\n00:50:47 | The Grocery Store Racketeer | S02E50\n00:54:23 | High voltage | S02E30\n00:57:57 | Microzilla | S02E07\n01:01:42 | Away all boarders! | S02E41\n01:05:25 | Zzz zzz | S02E44\n01:08:55 | Trapped | S02E64\n01:12:38 | The Vegetable Garden | S02E10\n01:16:23 | Rascals! | S02E38\n01:20:02 | The Monster Of The Haunted Swamp | S02E37\n01:23:33 | At Full Speed | S02E27\n01:27:16 | The Mosquito Of The Caribbean | S02E57\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #fly #hunting #pursuit #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation", "https://www.youtube.com/watch?v=Hdt7fIPDP0Q", "Hdt7fIPDP0Q", 5501, false, "/downloads/Miniscule Season 2/2025-05-24 Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation/Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation [Hdt7fIPDP0Q].mp4", false, 5, ~U[2025-05-24 18:01:03Z]] 22:55:34.766 [debug] QUERY OK source="sources" db=0.5ms idle=291.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" = ?) [5] 22:55:34.767 [debug] QUERY OK source="media_profiles" db=0.3ms idle=25.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] 22:55:34.768 [debug] QUERY OK source="media_items" db=0.6ms idle=25.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 [91165] 22:55:34.768 [debug] Current batch of media processed. Will check again in 1000ms 22:55:35.770 [debug] Current batch of media processed. Will check again in 1000ms 22:55:36.771 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Dream Of Speed | S03E24\n00:01:29 | A Candlelight Christmas | S03E20\n00:02:58 | Telecanetic | S03E19\n00:04:27 | Glue | S03E06\n00:06:04 | Like A Cannon Ball | S03E03\n00:07:33 | Webrizon | S03E02\n00:09:02 | At Full Speed | S03E22\n00:10:23 | Blunder | S03E26\n00:12:04 | Fly Swatter | S03E13\n00:13:33 | Broom's Sweep | S03E21\n00:15:02 | Ant On The Rocks | S03E17\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#dream #speed #snail #awakening #candlelight #Christmas #mosquito #sting #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1012, "filename" => "/downloads/Miniscule Season 2/2025-06-03 A Dream Of Speed | Minuscule 🍃 20' Compilation/A Dream Of Speed | Minuscule 🍃 20' Compilation [DvJa--G8oTo].mp4", "id" => "DvJa--G8oTo", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=DvJa--G8oTo", "playlist_index" => 60, "timestamp" => 1748930448, "title" => "A Dream Of Speed | Minuscule 🍃 20' Compilation", "upload_date" => "20250603"} 22:55:36.772 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=707.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" IN (?)) [5] 22:55:36.773 [debug] QUERY OK source="sources" db=0.5ms idle=702.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" = ?) [5] 22:55:36.775 [debug] QUERY OK source="media_items" db=1.2ms idle=300.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-03 06:00:48Z], 5] 22:55:36.779 [debug] QUERY OK source="media_items" db=2.5ms idle=301.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Dream Of Speed | S03E24\n00:01:29 | A Candlelight Christmas | S03E20\n00:02:58 | Telecanetic | S03E19\n00:04:27 | Glue | S03E06\n00:06:04 | Like A Cannon Ball | S03E03\n00:07:33 | Webrizon | S03E02\n00:09:02 | At Full Speed | S03E22\n00:10:23 | Blunder | S03E26\n00:12:04 | Fly Swatter | S03E13\n00:13:33 | Broom's Sweep | S03E21\n00:15:02 | Ant On The Rocks | S03E17\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#dream #speed #snail #awakening #candlelight #Christmas #mosquito #sting #Minuscule #nature #insects #ladybugs #animatedseries", "A Dream Of Speed | Minuscule 🍃 20' Compilation", "6cb8f469-77fb-447a-9196-22dc80c36170", "https://www.youtube.com/watch?v=DvJa--G8oTo", "DvJa--G8oTo", 1012, false, 60, "/downloads/Miniscule Season 2/2025-06-03 A Dream Of Speed | Minuscule 🍃 20' Compilation/A Dream Of Speed | Minuscule 🍃 20' Compilation [DvJa--G8oTo].mp4", false, false, false, 5, [], 1, ~U[2025-06-03 06:00:48Z], ~U[2026-01-30 05:55:36Z], ~U[2026-01-30 05:55:36Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Dream Of Speed | S03E24\n00:01:29 | A Candlelight Christmas | S03E20\n00:02:58 | Telecanetic | S03E19\n00:04:27 | Glue | S03E06\n00:06:04 | Like A Cannon Ball | S03E03\n00:07:33 | Webrizon | S03E02\n00:09:02 | At Full Speed | S03E22\n00:10:23 | Blunder | S03E26\n00:12:04 | Fly Swatter | S03E13\n00:13:33 | Broom's Sweep | S03E21\n00:15:02 | Ant On The Rocks | S03E17\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#dream #speed #snail #awakening #candlelight #Christmas #mosquito #sting #Minuscule #nature #insects #ladybugs #animatedseries", "A Dream Of Speed | Minuscule 🍃 20' Compilation", "https://www.youtube.com/watch?v=DvJa--G8oTo", "DvJa--G8oTo", 1012, false, "/downloads/Miniscule Season 2/2025-06-03 A Dream Of Speed | Minuscule 🍃 20' Compilation/A Dream Of Speed | Minuscule 🍃 20' Compilation [DvJa--G8oTo].mp4", false, 5, ~U[2025-06-03 06:00:48Z]] 22:55:36.780 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=305.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" = ?) [5] 22:55:36.781 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=7.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] 22:55:36.782 [debug] QUERY OK source="media_items" db=0.6ms idle=7.5ms 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 [91167] 22:55:36.782 [debug] Current batch of media processed. Will check again in 1000ms 22:55:37.783 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Chocolate Chase! | S02E19\n00:03:45 | Gather More to Pollinate More | S02E32\n00:07:31 | Trapped | S02E64\n00:11:13 | Top Tabasco | S02E70\n00:14:51 | Beehive On A Troll | S02E56\n00:18:21 | The Grocery Store Incident | S02E39\n00:21:52 | The Long Road | S02E34\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#chocolate #centipede #bees #wasps #gather #pollinate #productivity #competition #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1573, "filename" => "/downloads/Miniscule Season 2/2025-05-13 The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation/The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation [qwA42qr00U4].mp4", "id" => "qwA42qr00U4", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=qwA42qr00U4", "playlist_index" => 61, "timestamp" => 1747116049, "title" => "The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation", "upload_date" => "20250513"} 22:55:37.784 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=1004.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 (?)) [5] 22:55:37.785 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" = ?) [5] 22:55:37.787 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-13 06:00:49Z], 5] 22:55:37.790 [debug] QUERY OK source="media_items" db=2.4ms idle=720.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Chocolate Chase! | S02E19\n00:03:45 | Gather More to Pollinate More | S02E32\n00:07:31 | Trapped | S02E64\n00:11:13 | Top Tabasco | S02E70\n00:14:51 | Beehive On A Troll | S02E56\n00:18:21 | The Grocery Store Incident | S02E39\n00:21:52 | The Long Road | S02E34\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#chocolate #centipede #bees #wasps #gather #pollinate #productivity #competition #Minuscule #nature #insects #ladybugs #animatedseries", "The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation", "889cf295-fd8d-4525-823a-a3197de7ad2a", "https://www.youtube.com/watch?v=qwA42qr00U4", "qwA42qr00U4", 1573, false, 61, "/downloads/Miniscule Season 2/2025-05-13 The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation/The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation [qwA42qr00U4].mp4", false, false, false, 5, [], 1, ~U[2025-05-13 06:00:49Z], ~U[2026-01-30 05:55:37Z], ~U[2026-01-30 05:55:37Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Chocolate Chase! | S02E19\n00:03:45 | Gather More to Pollinate More | S02E32\n00:07:31 | Trapped | S02E64\n00:11:13 | Top Tabasco | S02E70\n00:14:51 | Beehive On A Troll | S02E56\n00:18:21 | The Grocery Store Incident | S02E39\n00:21:52 | The Long Road | S02E34\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#chocolate #centipede #bees #wasps #gather #pollinate #productivity #competition #Minuscule #nature #insects #ladybugs #animatedseries", "The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation", "https://www.youtube.com/watch?v=qwA42qr00U4", "qwA42qr00U4", 1573, false, "/downloads/Miniscule Season 2/2025-05-13 The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation/The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation [qwA42qr00U4].mp4", false, 5, ~U[2025-05-13 06:00:49Z]] 22:55:37.791 [debug] QUERY OK source="sources" db=0.5ms idle=716.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" = ?) [5] 22:55:37.792 [debug] QUERY OK source="media_profiles" db=0.4ms idle=7.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] 22:55:37.793 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [90657] 22:55:37.793 [debug] Current batch of media processed. Will check again in 1000ms 22:55:38.795 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Wing Case | S02E01\n00:03:45 | Homeless | S02E02\n00:07:33 | Bzzaping | S02E03\n00:11:20 | The Stubborn Spider | S02E04\n00:15:05 | An Acorn Season | S02E05\n00:18:51 | Sausage Predator | S02E06\n00:22:36 | Microzilla | S02E07\n00:26:22 | Honey Fly | S02E08\n00:30:12 | Mission : BBQ | S02E09\n00:33:57 | The Vegetable Garden | S02E10\n00:37:42 | Thievish As A Magpie | S02E11\n00:41:27 | A Pathetic She'Nut'Igan | S02E12\n00:45:13 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:48:58 | Chewing gum rodeo | S02E14\n00:52:44 | Valentine's Day | S02E15\n00:56:29 | Acrobatics | S02E16\n01:00:15 | The Hat Of The Medusa | S02E17\n01:04:00 | Night of the Gastropods | S02E18\n01:07:46 | The Chocolate Chase! | S02E19\n01:11:31 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #egg #caterpillar #adoption #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 4527, "filename" => "/downloads/Miniscule Season 2/2025-05-29 The Wing Case | Minuscule 🍃 100' Compilation/The Wing Case | Minuscule 🍃 100' Compilation [OEih9-JDEP8].mp4", "id" => "OEih9-JDEP8", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=OEih9-JDEP8", "playlist_index" => 62, "timestamp" => 1748512908, "title" => "The Wing Case | Minuscule 🍃 100' Compilation", "upload_date" => "20250529"} 22:55:38.796 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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 (?)) [5] 22:55:38.797 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" = ?) [5] 22:55:38.799 [debug] QUERY OK source="media_items" db=1.1ms idle=1004.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-29 10:01:48Z], 5] 22:55:38.839 [debug] QUERY OK source="media_items" db=38.8ms idle=730.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Wing Case | S02E01\n00:03:45 | Homeless | S02E02\n00:07:33 | Bzzaping | S02E03\n00:11:20 | The Stubborn Spider | S02E04\n00:15:05 | An Acorn Season | S02E05\n00:18:51 | Sausage Predator | S02E06\n00:22:36 | Microzilla | S02E07\n00:26:22 | Honey Fly | S02E08\n00:30:12 | Mission : BBQ | S02E09\n00:33:57 | The Vegetable Garden | S02E10\n00:37:42 | Thievish As A Magpie | S02E11\n00:41:27 | A Pathetic She'Nut'Igan | S02E12\n00:45:13 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:48:58 | Chewing gum rodeo | S02E14\n00:52:44 | Valentine's Day | S02E15\n00:56:29 | Acrobatics | S02E16\n01:00:15 | The Hat Of The Medusa | S02E17\n01:04:00 | Night of the Gastropods | S02E18\n01:07:46 | The Chocolate Chase! | S02E19\n01:11:31 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #egg #caterpillar #adoption #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "The Wing Case | Minuscule 🍃 100' Compilation", "686020d2-6f54-4576-97b4-7f9eb853edce", "https://www.youtube.com/watch?v=OEih9-JDEP8", "OEih9-JDEP8", 4527, false, 62, "/downloads/Miniscule Season 2/2025-05-29 The Wing Case | Minuscule 🍃 100' Compilation/The Wing Case | Minuscule 🍃 100' Compilation [OEih9-JDEP8].mp4", false, false, false, 5, [], 1, ~U[2025-05-29 10:01:48Z], ~U[2026-01-30 05:55:38Z], ~U[2026-01-30 05:55:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Wing Case | S02E01\n00:03:45 | Homeless | S02E02\n00:07:33 | Bzzaping | S02E03\n00:11:20 | The Stubborn Spider | S02E04\n00:15:05 | An Acorn Season | S02E05\n00:18:51 | Sausage Predator | S02E06\n00:22:36 | Microzilla | S02E07\n00:26:22 | Honey Fly | S02E08\n00:30:12 | Mission : BBQ | S02E09\n00:33:57 | The Vegetable Garden | S02E10\n00:37:42 | Thievish As A Magpie | S02E11\n00:41:27 | A Pathetic She'Nut'Igan | S02E12\n00:45:13 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:48:58 | Chewing gum rodeo | S02E14\n00:52:44 | Valentine's Day | S02E15\n00:56:29 | Acrobatics | S02E16\n01:00:15 | The Hat Of The Medusa | S02E17\n01:04:00 | Night of the Gastropods | S02E18\n01:07:46 | The Chocolate Chase! | S02E19\n01:11:31 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #egg #caterpillar #adoption #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "The Wing Case | Minuscule 🍃 100' Compilation", "https://www.youtube.com/watch?v=OEih9-JDEP8", "OEih9-JDEP8", 4527, false, "/downloads/Miniscule Season 2/2025-05-29 The Wing Case | Minuscule 🍃 100' Compilation/The Wing Case | Minuscule 🍃 100' Compilation [OEih9-JDEP8].mp4", false, 5, ~U[2025-05-29 10:01:48Z]] 22:55:38.840 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=763.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" = ?) [5] 22:55:38.840 [debug] QUERY OK source="media_profiles" db=0.5ms idle=43.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] 22:55:38.842 [debug] QUERY OK source="media_items" db=0.6ms idle=43.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 [91171] 22:55:38.842 [debug] Current batch of media processed. Will check again in 1000ms 22:55:39.843 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Woopsy Daysies! | S02E47\n00:03:34 | Summer Hat | S02E48\n00:07:15 | Sand Castle | S02E49\n00:10:42 | The Grocery Store Racketeer | S02E50\n00:14:17 | Snow Fly | S02E51\n00:17:42 | Ants On The Train | S02E52\n00:21:13 | Zzz In The Metro | S02E53\n00:24:49 | Go Blue Go! | S02E54\n00:28:30 | Black Slope For Gastropod Skiers | S02E55\n00:32:16 | Beehive On A Troll | S02E56\n00:35:46 | The Mosquito Of The Caribbean | S02E57\n00:39:32 | Turbo speed | S02E58\n00:42:56 | Snow Carrot | S02E59\n00:46:35 | Pollution | S02E60\n00:50:21 | Metamorphosis | S02E61\n00:53:51 | Ladybugland | S02E62\n00:57:19 | White As Snow | S02E63\n01:00:55 | Trapped | S02E64\n01:04:38 | Refrigerated | S02E65\n01:08:12 | Twelve Angry Snails | S02E66\n01:11:45 | It's a tie! | S02E67\n01:15:25 | Sleep Walker | S02E68\n01:18:50 | Labyrinth | S02E69\n01:22:35 | Top Tabasco | S02E70\n01:26:13 | Umbrella And Coconut Trees | S02E71\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #leaps #calculation #house #summer #hat #fly #spider #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 5425, "filename" => "/downloads/Miniscule Season 2/2025-06-07 Woopsy Daysies! | Minuscule 🍃 120' Compilation/Woopsy Daysies! | Minuscule 🍃 120' Compilation [45oxcbI-NZ8].mp4", "id" => "45oxcbI-NZ8", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=45oxcbI-NZ8", "playlist_index" => 63, "timestamp" => 1749319258, "title" => "Woopsy Daysies! | Minuscule 🍃 120' Compilation", "upload_date" => "20250607"} 22:55:39.844 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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 (?)) [5] 22:55:39.845 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:55:39.847 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-07 18:00:58Z], 5] 22:55:39.851 [debug] QUERY OK source="media_items" db=2.8ms idle=775.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Woopsy Daysies! | S02E47\n00:03:34 | Summer Hat | S02E48\n00:07:15 | Sand Castle | S02E49\n00:10:42 | The Grocery Store Racketeer | S02E50\n00:14:17 | Snow Fly | S02E51\n00:17:42 | Ants On The Train | S02E52\n00:21:13 | Zzz In The Metro | S02E53\n00:24:49 | Go Blue Go! | S02E54\n00:28:30 | Black Slope For Gastropod Skiers | S02E55\n00:32:16 | Beehive On A Troll | S02E56\n00:35:46 | The Mosquito Of The Caribbean | S02E57\n00:39:32 | Turbo speed | S02E58\n00:42:56 | Snow Carrot | S02E59\n00:46:35 | Pollution | S02E60\n00:50:21 | Metamorphosis | S02E61\n00:53:51 | Ladybugland | S02E62\n00:57:19 | White As Snow | S02E63\n01:00:55 | Trapped | S02E64\n01:04:38 | Refrigerated | S02E65\n01:08:12 | Twelve Angry Snails | S02E66\n01:11:45 | It's a tie! | S02E67\n01:15:25 | Sleep Walker | S02E68\n01:18:50 | Labyrinth | S02E69\n01:22:35 | Top Tabasco | S02E70\n01:26:13 | Umbrella And Coconut Trees | S02E71\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #leaps #calculation #house #summer #hat #fly #spider #Minuscule #nature #insects #ladybugs #animatedseries", "Woopsy Daysies! | Minuscule 🍃 120' Compilation", "cdfe76a3-36a3-4c01-bb13-edb8025d6a85", "https://www.youtube.com/watch?v=45oxcbI-NZ8", "45oxcbI-NZ8", 5425, false, 63, "/downloads/Miniscule Season 2/2025-06-07 Woopsy Daysies! | Minuscule 🍃 120' Compilation/Woopsy Daysies! | Minuscule 🍃 120' Compilation [45oxcbI-NZ8].mp4", false, false, false, 5, [], 1, ~U[2025-06-07 18:00:58Z], ~U[2026-01-30 05:55:39Z], ~U[2026-01-30 05:55:39Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Woopsy Daysies! | S02E47\n00:03:34 | Summer Hat | S02E48\n00:07:15 | Sand Castle | S02E49\n00:10:42 | The Grocery Store Racketeer | S02E50\n00:14:17 | Snow Fly | S02E51\n00:17:42 | Ants On The Train | S02E52\n00:21:13 | Zzz In The Metro | S02E53\n00:24:49 | Go Blue Go! | S02E54\n00:28:30 | Black Slope For Gastropod Skiers | S02E55\n00:32:16 | Beehive On A Troll | S02E56\n00:35:46 | The Mosquito Of The Caribbean | S02E57\n00:39:32 | Turbo speed | S02E58\n00:42:56 | Snow Carrot | S02E59\n00:46:35 | Pollution | S02E60\n00:50:21 | Metamorphosis | S02E61\n00:53:51 | Ladybugland | S02E62\n00:57:19 | White As Snow | S02E63\n01:00:55 | Trapped | S02E64\n01:04:38 | Refrigerated | S02E65\n01:08:12 | Twelve Angry Snails | S02E66\n01:11:45 | It's a tie! | S02E67\n01:15:25 | Sleep Walker | S02E68\n01:18:50 | Labyrinth | S02E69\n01:22:35 | Top Tabasco | S02E70\n01:26:13 | Umbrella And Coconut Trees | S02E71\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #leaps #calculation #house #summer #hat #fly #spider #Minuscule #nature #insects #ladybugs #animatedseries", "Woopsy Daysies! | Minuscule 🍃 120' Compilation", "https://www.youtube.com/watch?v=45oxcbI-NZ8", "45oxcbI-NZ8", 5425, false, "/downloads/Miniscule Season 2/2025-06-07 Woopsy Daysies! | Minuscule 🍃 120' Compilation/Woopsy Daysies! | Minuscule 🍃 120' Compilation [45oxcbI-NZ8].mp4", false, 5, ~U[2025-06-07 18:00:58Z]] 22:55:39.851 [debug] QUERY OK source="sources" db=0.4ms idle=773.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" = ?) [5] 22:55:39.852 [debug] QUERY OK source="media_profiles" db=0.3ms idle=7.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] 22:55:39.853 [debug] QUERY OK source="media_items" db=0.6ms idle=7.4ms 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 [91173] 22:55:39.853 [debug] Current batch of media processed. Will check again in 1000ms 22:55:40.855 [debug] Current batch of media processed. Will check again in 1000ms 22:55:41.856 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | High voltage | S02E30\n00:03:34 | Summer Hat | S02E48\n00:07:15 | Ladybugland | S02E62\n00:10:43 | Refrigerated | S02E65\n00:14:17 | Spider from the Depths | S02E31\n00:17:52 | Snow Fly | S02E51\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#electricity #spider #fly #danger #summer #hat #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1315, "filename" => "/downloads/Miniscule Season 2/2025-05-10 High voltage⚡️Minuscule 🍃 30' Compilation/High voltage⚡️Minuscule 🍃 30' Compilation [gwZ-ik4BqbY].mp4", "id" => "gwZ-ik4BqbY", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=gwZ-ik4BqbY", "playlist_index" => 64, "timestamp" => 1746900047, "title" => "High voltage⚡️Minuscule 🍃 30' Compilation", "upload_date" => "20250510"} 22:55:41.857 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=781.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" IN (?)) [5] 22:55:41.858 [debug] QUERY OK source="sources" db=0.3ms idle=775.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" = ?) [5] 22:55:41.860 [debug] QUERY OK source="media_items" db=1.2ms idle=384.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-10 18:00:47Z], 5] 22:55:41.877 [debug] QUERY OK source="media_items" db=16.1ms idle=386.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | High voltage | S02E30\n00:03:34 | Summer Hat | S02E48\n00:07:15 | Ladybugland | S02E62\n00:10:43 | Refrigerated | S02E65\n00:14:17 | Spider from the Depths | S02E31\n00:17:52 | Snow Fly | S02E51\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#electricity #spider #fly #danger #summer #hat #Minuscule #nature #insects #ladybugs #animatedseries", "High voltage⚡️Minuscule 🍃 30' Compilation", "957754f4-bdb8-44ac-a887-da22d15f9978", "https://www.youtube.com/watch?v=gwZ-ik4BqbY", "gwZ-ik4BqbY", 1315, false, 64, "/downloads/Miniscule Season 2/2025-05-10 High voltage⚡️Minuscule 🍃 30' Compilation/High voltage⚡️Minuscule 🍃 30' Compilation [gwZ-ik4BqbY].mp4", false, false, false, 5, [], 1, ~U[2025-05-10 18:00:47Z], ~U[2026-01-30 05:55:41Z], ~U[2026-01-30 05:55:41Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | High voltage | S02E30\n00:03:34 | Summer Hat | S02E48\n00:07:15 | Ladybugland | S02E62\n00:10:43 | Refrigerated | S02E65\n00:14:17 | Spider from the Depths | S02E31\n00:17:52 | Snow Fly | S02E51\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#electricity #spider #fly #danger #summer #hat #Minuscule #nature #insects #ladybugs #animatedseries", "High voltage⚡️Minuscule 🍃 30' Compilation", "https://www.youtube.com/watch?v=gwZ-ik4BqbY", "gwZ-ik4BqbY", 1315, false, "/downloads/Miniscule Season 2/2025-05-10 High voltage⚡️Minuscule 🍃 30' Compilation/High voltage⚡️Minuscule 🍃 30' Compilation [gwZ-ik4BqbY].mp4", false, 5, ~U[2025-05-10 18:00:47Z]] 22:55:41.877 [debug] QUERY OK source="sources" db=0.4ms idle=403.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" = ?) [5] 22:55:41.878 [debug] QUERY OK source="media_profiles" db=0.4ms idle=20.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] 22:55:41.879 [debug] QUERY OK source="media_items" db=0.6ms idle=20.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 [90116] 22:55:41.880 [debug] Current batch of media processed. Will check again in 1000ms 22:55:42.881 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Pea In The Hand Is Worth... | S03E05\n00:01:32 | Sow The Wind And Reap The Storm | S03E11\n00:03:10 | The Doughnut | S03E16\n00:04:42 | Pea supper | S03E01\n00:06:11 | The Magic Fly | S03E15\n00:07:40 | The Sled and the Ant | S03E25\n00:09:09 | He Who Laughs Last, laughs Longest | S03E12\n00:10:38 | Chocolate Fly | S03E23\n00:12:07 | A Christmas Apple | S03E04\n00:13:37 | The Wicked Web | S03E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#pea #ant #fly #ladybird #sow #wind #grasshopper #ladybirds #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 925, "filename" => "/downloads/Miniscule Season 2/2025-05-06 A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation/A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation [7uKsDZC7uCc].mp4", "id" => "7uKsDZC7uCc", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=7uKsDZC7uCc", "playlist_index" => 65, "timestamp" => 1746511259, "title" => "A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation", "upload_date" => "20250506"} 22:55:42.882 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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 (?)) [5] 22:55:42.883 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" = ?) [5] 22:55:42.885 [debug] QUERY OK source="media_items" db=1.2ms idle=1003.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-06 06:00:59Z], 5] 22:55:42.909 [debug] QUERY OK source="media_items" db=23.3ms idle=808.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Pea In The Hand Is Worth... | S03E05\n00:01:32 | Sow The Wind And Reap The Storm | S03E11\n00:03:10 | The Doughnut | S03E16\n00:04:42 | Pea supper | S03E01\n00:06:11 | The Magic Fly | S03E15\n00:07:40 | The Sled and the Ant | S03E25\n00:09:09 | He Who Laughs Last, laughs Longest | S03E12\n00:10:38 | Chocolate Fly | S03E23\n00:12:07 | A Christmas Apple | S03E04\n00:13:37 | The Wicked Web | S03E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#pea #ant #fly #ladybird #sow #wind #grasshopper #ladybirds #Minuscule #nature #insects #ladybugs #animatedseries", "A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation", "8eb28de4-b3b2-484a-b951-b3a307985c0c", "https://www.youtube.com/watch?v=7uKsDZC7uCc", "7uKsDZC7uCc", 925, false, 65, "/downloads/Miniscule Season 2/2025-05-06 A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation/A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation [7uKsDZC7uCc].mp4", false, false, false, 5, [], 1, ~U[2025-05-06 06:00:59Z], ~U[2026-01-30 05:55:42Z], ~U[2026-01-30 05:55:42Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Pea In The Hand Is Worth... | S03E05\n00:01:32 | Sow The Wind And Reap The Storm | S03E11\n00:03:10 | The Doughnut | S03E16\n00:04:42 | Pea supper | S03E01\n00:06:11 | The Magic Fly | S03E15\n00:07:40 | The Sled and the Ant | S03E25\n00:09:09 | He Who Laughs Last, laughs Longest | S03E12\n00:10:38 | Chocolate Fly | S03E23\n00:12:07 | A Christmas Apple | S03E04\n00:13:37 | The Wicked Web | S03E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#pea #ant #fly #ladybird #sow #wind #grasshopper #ladybirds #Minuscule #nature #insects #ladybugs #animatedseries", "A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation", "https://www.youtube.com/watch?v=7uKsDZC7uCc", "7uKsDZC7uCc", 925, false, "/downloads/Miniscule Season 2/2025-05-06 A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation/A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation [7uKsDZC7uCc].mp4", false, 5, ~U[2025-05-06 06:00:59Z]] 22:55:42.910 [debug] QUERY OK source="sources" db=0.4ms idle=825.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" = ?) [5] 22:55:42.911 [debug] QUERY OK source="media_profiles" db=0.3ms idle=28.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] 22:55:42.912 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=28.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 [90118] 22:55:42.912 [debug] Current batch of media processed. Will check again in 1000ms 22:55:43.914 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Patatas Fritas | S02E21\n00:03:45 | If Only Lonely | S02E22\n00:07:31 | The Butterfly Effect | S02E23\n00:10:53 | Fly Hunting | S02E24\n00:14:27 | Hop On! | S02E25\n00:18:04 | The Housing Plant Project | S02E26\n00:21:41 | At Full Speed | S02E27\n00:25:24 | The Annoying Neighbor | S02E28\n00:29:00 | Thirsty | S02E29\n00:32:33 | High voltage | S02E30\n00:36:07 | Spider from the Depths | S02E31\n00:39:42 | Gather More to Pollinate More | S02E32\n00:43:27 | The Iron Monster | S02E33\n00:47:01 | The Long Road | S02E34\n00:50:43 | The Yule log | S02E35\n00:54:29 | Spider Driver | S02E36\n00:58:10 | The Monster Of The Haunted Swamp | S02E37\n01:01:41 | Rascals! | S02E38\n01:05:20 | The Grocery Store Incident | S02E39\n01:08:51 | Sunburn | S02E40\n01:12:15 | Away all boarders! | S02E41\n01:15:58 | Down The Chimney | S02E42\n01:19:43 | To The Port Now! | S02E43\n01:23:11 | Zzz zzz | S02E44\n01:26:41 | Love Apple | S02E45\n01:30:21 | Brushing | S02E46\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Patatas #Fritas #wasps #universe #ladybug #sibling #anxiety #ants #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 5672, "filename" => "/downloads/Miniscule Season 2/2025-05-31 Patatas Fritas 🍟 Minuscule 🍃 125' Compilation/Patatas Fritas 🍟 Minuscule 🍃 125' Compilation [cFMH5uWhQhg].mp4", "id" => "cFMH5uWhQhg", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=cFMH5uWhQhg", "playlist_index" => 66, "timestamp" => 1748714453, "title" => "Patatas Fritas 🍟 Minuscule 🍃 125' Compilation", "upload_date" => "20250531"} 22:55:43.915 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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" IN (?)) [5] 22:55:43.916 [debug] QUERY OK source="sources" db=0.4ms idle=1005.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" = ?) [5] 22:55:43.918 [debug] QUERY OK source="media_items" db=1.2ms idle=1004.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-31 18:00:53Z], 5] 22:55:43.922 [debug] QUERY OK source="media_items" db=2.8ms idle=839.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Patatas Fritas | S02E21\n00:03:45 | If Only Lonely | S02E22\n00:07:31 | The Butterfly Effect | S02E23\n00:10:53 | Fly Hunting | S02E24\n00:14:27 | Hop On! | S02E25\n00:18:04 | The Housing Plant Project | S02E26\n00:21:41 | At Full Speed | S02E27\n00:25:24 | The Annoying Neighbor | S02E28\n00:29:00 | Thirsty | S02E29\n00:32:33 | High voltage | S02E30\n00:36:07 | Spider from the Depths | S02E31\n00:39:42 | Gather More to Pollinate More | S02E32\n00:43:27 | The Iron Monster | S02E33\n00:47:01 | The Long Road | S02E34\n00:50:43 | The Yule log | S02E35\n00:54:29 | Spider Driver | S02E36\n00:58:10 | The Monster Of The Haunted Swamp | S02E37\n01:01:41 | Rascals! | S02E38\n01:05:20 | The Grocery Store Incident | S02E39\n01:08:51 | Sunburn | S02E40\n01:12:15 | Away all boarders! | S02E41\n01:15:58 | Down The Chimney | S02E42\n01:19:43 | To The Port Now! | S02E43\n01:23:11 | Zzz zzz | S02E44\n01:26:41 | Love Apple | S02E45\n01:30:21 | Brushing | S02E46\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Patatas #Fritas #wasps #universe #ladybug #sibling #anxiety #ants #Minuscule #nature #insects #ladybugs #animatedseries", "Patatas Fritas 🍟 Minuscule 🍃 125' Compilation", "7b5f5318-82ed-43f3-9dba-6cf24971069d", "https://www.youtube.com/watch?v=cFMH5uWhQhg", "cFMH5uWhQhg", 5672, false, 66, "/downloads/Miniscule Season 2/2025-05-31 Patatas Fritas 🍟 Minuscule 🍃 125' Compilation/Patatas Fritas 🍟 Minuscule 🍃 125' Compilation [cFMH5uWhQhg].mp4", false, false, false, 5, [], 1, ~U[2025-05-31 18:00:53Z], ~U[2026-01-30 05:55:43Z], ~U[2026-01-30 05:55:43Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Patatas Fritas | S02E21\n00:03:45 | If Only Lonely | S02E22\n00:07:31 | The Butterfly Effect | S02E23\n00:10:53 | Fly Hunting | S02E24\n00:14:27 | Hop On! | S02E25\n00:18:04 | The Housing Plant Project | S02E26\n00:21:41 | At Full Speed | S02E27\n00:25:24 | The Annoying Neighbor | S02E28\n00:29:00 | Thirsty | S02E29\n00:32:33 | High voltage | S02E30\n00:36:07 | Spider from the Depths | S02E31\n00:39:42 | Gather More to Pollinate More | S02E32\n00:43:27 | The Iron Monster | S02E33\n00:47:01 | The Long Road | S02E34\n00:50:43 | The Yule log | S02E35\n00:54:29 | Spider Driver | S02E36\n00:58:10 | The Monster Of The Haunted Swamp | S02E37\n01:01:41 | Rascals! | S02E38\n01:05:20 | The Grocery Store Incident | S02E39\n01:08:51 | Sunburn | S02E40\n01:12:15 | Away all boarders! | S02E41\n01:15:58 | Down The Chimney | S02E42\n01:19:43 | To The Port Now! | S02E43\n01:23:11 | Zzz zzz | S02E44\n01:26:41 | Love Apple | S02E45\n01:30:21 | Brushing | S02E46\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Patatas #Fritas #wasps #universe #ladybug #sibling #anxiety #ants #Minuscule #nature #insects #ladybugs #animatedseries", "Patatas Fritas 🍟 Minuscule 🍃 125' Compilation", "https://www.youtube.com/watch?v=cFMH5uWhQhg", "cFMH5uWhQhg", 5672, false, "/downloads/Miniscule Season 2/2025-05-31 Patatas Fritas 🍟 Minuscule 🍃 125' Compilation/Patatas Fritas 🍟 Minuscule 🍃 125' Compilation [cFMH5uWhQhg].mp4", false, 5, ~U[2025-05-31 18:00:53Z]] 22:55:43.923 [debug] QUERY OK source="sources" db=0.4ms idle=836.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" = ?) [5] 22:55:43.924 [debug] QUERY OK source="media_profiles" db=0.4ms idle=7.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] 22:55:43.925 [debug] QUERY OK source="media_items" db=0.6ms idle=8.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 [91179] 22:55:43.925 [debug] Current batch of media processed. Will check again in 1000ms 22:55:44.927 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | An Acorn Season | S02E05\n00:03:45 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:07:31 | Chewing gum rodeo | S02E14\n00:11:16 | The Vegetable Garden | S02E10\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acorn #Grasshopper #Insects #Justice #grasshopper #babies #leap #outcast #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 939, "filename" => "/downloads/Miniscule Season 2/2025-05-01 An Acorn Season | Minuscule 🍃 20' Compilation/An Acorn Season | Minuscule 🍃 20' Compilation [bpMUUv-x_VM].mp4", "id" => "bpMUUv-x_VM", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=bpMUUv-x_VM", "playlist_index" => 67, "timestamp" => 1746093692, "title" => "An Acorn Season | Minuscule 🍃 20' Compilation", "upload_date" => "20250501"} 22:55:44.928 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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 (?)) [5] 22:55:44.929 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" = ?) [5] 22:55:44.931 [debug] QUERY OK source="media_items" db=1.1ms idle=1004.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-01 10:01:32Z], 5] 22:55:44.934 [debug] QUERY OK source="media_items" db=2.5ms idle=850.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | An Acorn Season | S02E05\n00:03:45 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:07:31 | Chewing gum rodeo | S02E14\n00:11:16 | The Vegetable Garden | S02E10\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acorn #Grasshopper #Insects #Justice #grasshopper #babies #leap #outcast #Minuscule #nature #insects #ladybugs #animatedseries", "An Acorn Season | Minuscule 🍃 20' Compilation", "339627e5-ca94-4c4d-97d3-b322c192bce2", "https://www.youtube.com/watch?v=bpMUUv-x_VM", "bpMUUv-x_VM", 939, false, 67, "/downloads/Miniscule Season 2/2025-05-01 An Acorn Season | Minuscule 🍃 20' Compilation/An Acorn Season | Minuscule 🍃 20' Compilation [bpMUUv-x_VM].mp4", false, false, false, 5, [], 1, ~U[2025-05-01 10:01:32Z], ~U[2026-01-30 05:55:44Z], ~U[2026-01-30 05:55:44Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | An Acorn Season | S02E05\n00:03:45 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:07:31 | Chewing gum rodeo | S02E14\n00:11:16 | The Vegetable Garden | S02E10\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acorn #Grasshopper #Insects #Justice #grasshopper #babies #leap #outcast #Minuscule #nature #insects #ladybugs #animatedseries", "An Acorn Season | Minuscule 🍃 20' Compilation", "https://www.youtube.com/watch?v=bpMUUv-x_VM", "bpMUUv-x_VM", 939, false, "/downloads/Miniscule Season 2/2025-05-01 An Acorn Season | Minuscule 🍃 20' Compilation/An Acorn Season | Minuscule 🍃 20' Compilation [bpMUUv-x_VM].mp4", false, 5, ~U[2025-05-01 10:01:32Z]] 22:55:44.935 [debug] QUERY OK source="sources" db=0.4ms idle=846.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" = ?) [5] 22:55:44.936 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=7.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] 22:55:44.937 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=7.4ms 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 [89574] 22:55:44.938 [debug] Current batch of media processed. Will check again in 1000ms 22:55:45.861 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:45.939 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #uXzw2XDUqEc/youtube video #uXzw2XDUqEc [uXzw2XDUqEc].NA", "id" => "uXzw2XDUqEc", "original_url" => "https://www.youtube.com/watch?v=uXzw2XDUqEc", "playlist_index" => 68, "title" => "youtube video #uXzw2XDUqEc"} 22:55:45.940 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" IN (?)) [5] 22:55:45.940 [debug] Current batch of media processed. Will check again in 1000ms 22:55:46.941 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Bzzaping | S02E03\n00:03:47 | The Stubborn Spider | S02E04\n00:07:32 | Microzilla | S02E07\n00:11:18 | Brushing | S02E46\n00:14:50 | High voltage | S02E30\n00:18:24 | Fly Hunting | S02E24\n00:21:58 | The Hat Of The Medusa | S02E17\n00:25:43 | The Monster Of The Haunted Swamp | S02E37\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Bzzaping #fly #spider #television #stubborn #determination #house #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1793, "filename" => "/downloads/Miniscule Season 2/2025-04-17 Bzzaping | Minuscule 🍃 40' Compilation/Bzzaping | Minuscule 🍃 40' Compilation [YSP79Cg0w6Q].mp4", "id" => "YSP79Cg0w6Q", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=YSP79Cg0w6Q", "playlist_index" => 69, "timestamp" => 1744884096, "title" => "Bzzaping | Minuscule 🍃 40' Compilation", "upload_date" => "20250417"} 22:55:46.942 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1080.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" IN (?)) [5] 22:55:46.943 [debug] QUERY OK source="sources" db=0.3ms idle=1002.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" = ?) [5] 22:55:46.944 [debug] QUERY OK source="media_items" db=0.9ms idle=857.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-17 10:01:36Z], 5] 22:55:46.979 [debug] QUERY OK source="media_items" db=33.6ms idle=852.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Bzzaping | S02E03\n00:03:47 | The Stubborn Spider | S02E04\n00:07:32 | Microzilla | S02E07\n00:11:18 | Brushing | S02E46\n00:14:50 | High voltage | S02E30\n00:18:24 | Fly Hunting | S02E24\n00:21:58 | The Hat Of The Medusa | S02E17\n00:25:43 | The Monster Of The Haunted Swamp | S02E37\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Bzzaping #fly #spider #television #stubborn #determination #house #Minuscule #nature #insects #ladybugs #animatedseries", "Bzzaping | Minuscule 🍃 40' Compilation", "ed504dbf-8550-4567-9e6c-9161b83c44d6", "https://www.youtube.com/watch?v=YSP79Cg0w6Q", "YSP79Cg0w6Q", 1793, false, 69, "/downloads/Miniscule Season 2/2025-04-17 Bzzaping | Minuscule 🍃 40' Compilation/Bzzaping | Minuscule 🍃 40' Compilation [YSP79Cg0w6Q].mp4", false, false, false, 5, [], 1, ~U[2025-04-17 10:01:36Z], ~U[2026-01-30 05:55:46Z], ~U[2026-01-30 05:55:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Bzzaping | S02E03\n00:03:47 | The Stubborn Spider | S02E04\n00:07:32 | Microzilla | S02E07\n00:11:18 | Brushing | S02E46\n00:14:50 | High voltage | S02E30\n00:18:24 | Fly Hunting | S02E24\n00:21:58 | The Hat Of The Medusa | S02E17\n00:25:43 | The Monster Of The Haunted Swamp | S02E37\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Bzzaping #fly #spider #television #stubborn #determination #house #Minuscule #nature #insects #ladybugs #animatedseries", "Bzzaping | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=YSP79Cg0w6Q", "YSP79Cg0w6Q", 1793, false, "/downloads/Miniscule Season 2/2025-04-17 Bzzaping | Minuscule 🍃 40' Compilation/Bzzaping | Minuscule 🍃 40' Compilation [YSP79Cg0w6Q].mp4", false, 5, ~U[2025-04-17 10:01:36Z]] 22:55:46.979 [debug] QUERY OK source="sources" db=0.4ms idle=505.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" = ?) [5] 22:55:46.980 [debug] QUERY OK source="media_profiles" db=0.2ms idle=37.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] 22:55:46.981 [debug] QUERY OK source="media_items" db=0.4ms idle=37.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 [89019] 22:55:46.981 [debug] Current batch of media processed. Will check again in 1000ms 22:55:47.982 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #mPLHY-R36qA/youtube video #mPLHY-R36qA [mPLHY-R36qA].NA", "id" => "mPLHY-R36qA", "original_url" => "https://www.youtube.com/watch?v=mPLHY-R36qA", "playlist_index" => 70, "title" => "youtube video #mPLHY-R36qA"} 22:55:47.983 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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 (?)) [5] 22:55:47.984 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Wing Case | S02E01\n00:04:16 | Homeless | S02E02\n00:08:03 | Bzzaping | S02E03\n00:11:50 | The Stubborn Spider | S02E04\n00:15:36 | An Acorn Season | S02E05\n00:19:21 | Sausage Predator | S02E06\n00:23:07 | Microzilla | S02E07\n00:26:52 | Honey Fly | S02E08\n00:30:42 | Mission : BBQ | S02E09\n00:34:28 | The Vegetable Garden | S02E10\n00:38:12 | Thievish As A Magpie | S02E11\n00:41:58 | A Pathetic She'Nut'Igan | S02E12\n00:45:43 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:49:29 | Chewing gum rodeo | S02E14\n00:53:14 | Valentine's Day | S02E15\n00:57:00 | Acrobatics | S02E16\n01:00:45 | The Hat Of The Medusa | S02E17\n01:04:31 | Night of the Gastropods | S02E18\n01:08:16 | The Chocolate Chase! | S02E19\n01:12:02 | A Butterfly's Nightmare | S02E20\n01:15:18 | Patatas Fritas | S02E21\n01:19:04 | If Only Lonely | S02E22\n01:22:50 | The Butterfly Effect | S02E23\n01:26:12 | Fly Hunting | S02E24\n01:29:46 | Hop On! | S02E25\n01:33:23 | The Housing Plant Project | S02E26\n01:37:00 | At Full Speed | S02E27\n01:40:43 | The Annoying Neighbor | S02E28\n01:44:19 | Thirsty | S02E29\n01:47:52 | High voltage | S02E30\n01:51:26 | Spider from the Depths | S02E31\n01:55:00 | Gather More to Pollinate More | S02E32\n01:58:46 | The Iron Monster | S02E33\n02:02:19 | The Long Road | S02E34\n02:06:02 | The Yule log | S02E35\n02:09:48 | Spider Driver | S02E36\n02:13:29 | The Monster Of The Haunted Swamp | S02E37\n02:17:00 | Rascals! | S02E38\n02:20:39 | The Grocery Store Incident | S02E39\n02:24:10 | Sunburn | S02E40\n02:27:34 | Away all boarders! | S02E41\n02:31:17 | Down The Chimney | S02E42\n02:35:02 | To The Port Now! | S02E43\n02:38:30 | Zzz zzz | S02E44\n02:42:00 | Love Apple | S02E45\n02:45:40 | Brushing | S02E46\n02:49:12 | Woopsy Daysies! | S02E47\n02:52:46 | Summer Hat | S02E48\n02:56:28 | Sand Castle | S02E49\n02:59:54 | The Grocery Store Racketeer | S02E50\n03:03:30 | Snow Fly | S02E51\n03:06:55 | Ants On The Train | S02E52\n03:10:26 | Zzz In The Metro | S02E53\n03:14:02 | Go Blue Go! | S02E54\n03:17:43 | Black Slope For Gastropod Skiers | S02E55\n03:21:29 | Beehive On A Troll | S02E56\n03:24:59 | The Mosquito Of The Caribbean | S02E57\n03:28:45 | Turbo speed | S02E58\n03:32:09 | Snow Carrot | S02E59\n03:35:48 | Pollution | S02E60\n03:39:33 | Metamorphosis | S02E61\n03:43:04 | Ladybugland | S02E62\n03:46:31 | White As Snow | S02E63\n03:50:08 | Trapped | S02E64\n03:53:50 | Refrigerated | S02E65\n03:57:25 | Twelve Angry Snails | S02E66\n04:00:57 | It's a tie! | S02E67\n04:04:38 | Sleep Walker | S02E68\n04:08:03 | Labyrinth | S02E69\n04:11:48 | Top Tabasco | S02E70\n04:15:26 | Umbrella And Coconut Trees | S02E71\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #egg #caterpillar #adoption #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 327186, "filename" => "/downloads/Miniscule Season 2/2025-04-07 🔴 Live 🔴 Minuscule 🍃 Season 2/🔴 Live 🔴 Minuscule 🍃 Season 2 [nu-0hFsz_PM].NA", "id" => "nu-0hFsz_PM", "live_status" => "was_live", "original_url" => "https://www.youtube.com/watch?v=nu-0hFsz_PM", "playlist_index" => 71, "timestamp" => 1744021871, "title" => "🔴 Live 🔴 Minuscule 🍃 Season 2", "upload_date" => "20250407"} 22:55:47.985 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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 (?)) [5] 22:55:47.985 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:55:47.987 [debug] QUERY OK source="media_items" db=1.1ms idle=898.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-07 10:31:11Z], 5] 22:55:48.025 [debug] QUERY OK source="media_items" db=36.5ms idle=893.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Wing Case | S02E01\n00:04:16 | Homeless | S02E02\n00:08:03 | Bzzaping | S02E03\n00:11:50 | The Stubborn Spider | S02E04\n00:15:36 | An Acorn Season | S02E05\n00:19:21 | Sausage Predator | S02E06\n00:23:07 | Microzilla | S02E07\n00:26:52 | Honey Fly | S02E08\n00:30:42 | Mission : BBQ | S02E09\n00:34:28 | The Vegetable Garden | S02E10\n00:38:12 | Thievish As A Magpie | S02E11\n00:41:58 | A Pathetic She'Nut'Igan | S02E12\n00:45:43 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:49:29 | Chewing gum rodeo | S02E14\n00:53:14 | Valentine's Day | S02E15\n00:57:00 | Acrobatics | S02E16\n01:00:45 | The Hat Of The Medusa | S02E17\n01:04:31 | Night of the Gastropods | S02E18\n01:08:16 | The Chocolate Chase! | S02E19\n01:12:02 | A Butterfly's Nightmare | S02E20\n01:15:18 | Patatas Fritas | S02E21\n01:19:04 | If Only Lonely | S02E22\n01:22:50 | The Butterfly Effect | S02E23\n01:26:12 | Fly Hunting | S02E24\n01:29:46 | Hop On! | S02E25\n01:33:23 | The Housing Plant Project | S02E26\n01:37:00 | At Full Speed | S02E27\n01:40:43 | The Annoying Neighbor | S02E28\n01:44:19 | Thirsty | S02E29\n01:47:52 | High voltage | S02E30\n01:51:26 | Spider from the Depths | S02E31\n01:55:00 | Gather More to Pollinate More | S02E32\n01:58:46 | The Iron Monster | S02E33\n02:02:19 | The Long Road | S02E34\n02:06:02 | The Yule log | S02E35\n02:09:48 | Spider Driver | S02E36\n02:13:29 | The Monster Of The Haunted Swamp | S02E37\n02:17:00 | Rascals! | S02E38\n02:20:39 | The Grocery Store Incident | S02E39\n02:24:10 | Sunburn | S02E40\n02:27:34 | Away all boarders! | S02E41\n02:31:17 | Down The Chimney | S02E42\n02:35:02 | To The Port Now! | S02E43\n02:38:30 | Zzz zzz | S02E44\n02:42:00 | Love Apple | S02E45\n02:45:40 | Brushing | S02E46\n02:49:12 | Woopsy Daysies! | S02E47\n02:52:46 | Summer Hat | S02E48\n02:56:28 | Sand Castle | S02E49\n02:59:54 | The Grocery Store Racketeer | S02E50\n03:03:30 | Snow Fly | S02E51\n03:06:55 | Ants On The Train | S02E52\n03:10:26 | Zzz In The Metro | S02E53\n03:14:02 | Go Blue Go! | S02E54\n03:17:43 | Black Slope For Gastropod Skiers | S02E55\n03:21:29 | Beehive On A Troll | S02E56\n03:24:59 | The Mosquito Of The Caribbean | S02E57\n03:28:45 | Turbo speed | S02E58\n03:32:09 | Snow Carrot | S02E59\n03:35:48 | Pollution | S02E60\n03:39:33 | Metamorphosis | S02E61\n03:43:04 | Ladybugland | S02E62\n03:46:31 | White As Snow | S02E63\n03:50:08 | Trapped | S02E64\n03:53:50 | Refrigerated | S02E65\n03:57:25 | Twelve Angry Snails | S02E66\n04:00:57 | It's a tie! | S02E67\n04:04:38 | Sleep Walker | S02E68\n04:08:03 | Labyrinth | S02E69\n04:11:48 | Top Tabasco | S02E70\n04:15:26 | Umbrella And Coconut Trees | S02E71\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #egg #caterpillar #adoption #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "🔴 Live 🔴 Minuscule 🍃 Season 2", "a8d5b71d-a677-4f9c-aa47-980d711ab2c4", "https://www.youtube.com/watch?v=nu-0hFsz_PM", "nu-0hFsz_PM", 327186, true, 71, "/downloads/Miniscule Season 2/2025-04-07 🔴 Live 🔴 Minuscule 🍃 Season 2/🔴 Live 🔴 Minuscule 🍃 Season 2 [nu-0hFsz_PM].NA", false, false, false, 5, [], 1, ~U[2025-04-07 10:31:11Z], ~U[2026-01-30 05:55:47Z], ~U[2026-01-30 05:55:47Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Wing Case | S02E01\n00:04:16 | Homeless | S02E02\n00:08:03 | Bzzaping | S02E03\n00:11:50 | The Stubborn Spider | S02E04\n00:15:36 | An Acorn Season | S02E05\n00:19:21 | Sausage Predator | S02E06\n00:23:07 | Microzilla | S02E07\n00:26:52 | Honey Fly | S02E08\n00:30:42 | Mission : BBQ | S02E09\n00:34:28 | The Vegetable Garden | S02E10\n00:38:12 | Thievish As A Magpie | S02E11\n00:41:58 | A Pathetic She'Nut'Igan | S02E12\n00:45:43 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:49:29 | Chewing gum rodeo | S02E14\n00:53:14 | Valentine's Day | S02E15\n00:57:00 | Acrobatics | S02E16\n01:00:45 | The Hat Of The Medusa | S02E17\n01:04:31 | Night of the Gastropods | S02E18\n01:08:16 | The Chocolate Chase! | S02E19\n01:12:02 | A Butterfly's Nightmare | S02E20\n01:15:18 | Patatas Fritas | S02E21\n01:19:04 | If Only Lonely | S02E22\n01:22:50 | The Butterfly Effect | S02E23\n01:26:12 | Fly Hunting | S02E24\n01:29:46 | Hop On! | S02E25\n01:33:23 | The Housing Plant Project | S02E26\n01:37:00 | At Full Speed | S02E27\n01:40:43 | The Annoying Neighbor | S02E28\n01:44:19 | Thirsty | S02E29\n01:47:52 | High voltage | S02E30\n01:51:26 | Spider from the Depths | S02E31\n01:55:00 | Gather More to Pollinate More | S02E32\n01:58:46 | The Iron Monster | S02E33\n02:02:19 | The Long Road | S02E34\n02:06:02 | The Yule log | S02E35\n02:09:48 | Spider Driver | S02E36\n02:13:29 | The Monster Of The Haunted Swamp | S02E37\n02:17:00 | Rascals! | S02E38\n02:20:39 | The Grocery Store Incident | S02E39\n02:24:10 | Sunburn | S02E40\n02:27:34 | Away all boarders! | S02E41\n02:31:17 | Down The Chimney | S02E42\n02:35:02 | To The Port Now! | S02E43\n02:38:30 | Zzz zzz | S02E44\n02:42:00 | Love Apple | S02E45\n02:45:40 | Brushing | S02E46\n02:49:12 | Woopsy Daysies! | S02E47\n02:52:46 | Summer Hat | S02E48\n02:56:28 | Sand Castle | S02E49\n02:59:54 | The Grocery Store Racketeer | S02E50\n03:03:30 | Snow Fly | S02E51\n03:06:55 | Ants On The Train | S02E52\n03:10:26 | Zzz In The Metro | S02E53\n03:14:02 | Go Blue Go! | S02E54\n03:17:43 | Black Slope For Gastropod Skiers | S02E55\n03:21:29 | Beehive On A Troll | S02E56\n03:24:59 | The Mosquito Of The Caribbean | S02E57\n03:28:45 | Turbo speed | S02E58\n03:32:09 | Snow Carrot | S02E59\n03:35:48 | Pollution | S02E60\n03:39:33 | Metamorphosis | S02E61\n03:43:04 | Ladybugland | S02E62\n03:46:31 | White As Snow | S02E63\n03:50:08 | Trapped | S02E64\n03:53:50 | Refrigerated | S02E65\n03:57:25 | Twelve Angry Snails | S02E66\n04:00:57 | It's a tie! | S02E67\n04:04:38 | Sleep Walker | S02E68\n04:08:03 | Labyrinth | S02E69\n04:11:48 | Top Tabasco | S02E70\n04:15:26 | Umbrella And Coconut Trees | S02E71\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #egg #caterpillar #adoption #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #lad (truncated) 22:55:48.026 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=42.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" = ?) [5] 22:55:48.027 [debug] QUERY OK source="media_profiles" db=0.3ms idle=41.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] 22:55:48.028 [debug] QUERY OK source="media_items" db=0.6ms idle=41.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 [89022] 22:55:48.028 [info] Kicking off download for media item #89022 (nu-0hFsz_PM) 22:55:48.032 [debug] QUERY OK source="tasks" db=0.3ms queue=0.1ms idle=4.8ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2981, 89022, ~U[2026-01-30 05:55:48Z], ~U[2026-01-30 05:55:48Z]] 22:55:48.032 [debug] Current batch of media processed. Will check again in 1000ms 22:55:48.038 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1769752548038476861,"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"]} 22:55:48.039 [debug] QUERY OK source="media_items" db=0.3ms idle=10.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" = ?) [89022] 22:55:48.039 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:55:48.040 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=9.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" = ?) [5] 22:55:48.041 [debug] QUERY OK source="media_profiles" db=0.3ms idle=9.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] 22:55:48.042 [debug] QUERY OK source="media_items" db=0.6ms idle=9.4ms 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 [89022] 22:55:48.057 [debug] QUERY OK source="media_metadata" db=0.1ms idle=18.4ms 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" = ?) [89022] 22:55:48.057 [debug] QUERY OK source="media_profiles" db=0.3ms idle=17.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] 22:55:48.058 [debug] QUERY OK source="settings" db=0.2ms idle=17.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 [] 22:55:48.058 [debug] QUERY OK source="settings" db=0.2ms idle=17.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 [] 22:55:48.059 [debug] Running yt-dlp command for action: get_downloadable_status 22:55:48.060 [debug] QUERY OK source="settings" db=0.2ms idle=18.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 [] 22:55:48.060 [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 [] 22:55:48.061 [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 [] 22:55:48.061 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/7e/33/7e335ada5985f2bef569922ec2f0f9d73bd059de3d89dc19834579576210b8df.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:55:49.033 [debug] Current batch of media processed. Will check again in 1000ms 22:55:50.034 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Homeless | S02E02\n00:03:47 | The Annoying Neighbor | S02E28\n00:07:23 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Caterpillar #Refuge #Insects #Homeless #caterpillar #noisy #neighbor #apple #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 698, "filename" => "/downloads/Miniscule Season 2/2025-04-22 Homeless | Minuscule 🍃 15' Compilation/Homeless | Minuscule 🍃 15' Compilation [6QpMZlFOxwk].mp4", "id" => "6QpMZlFOxwk", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=6QpMZlFOxwk", "playlist_index" => 72, "timestamp" => 1745301652, "title" => "Homeless | Minuscule 🍃 15' Compilation", "upload_date" => "20250422"} 22:55:50.035 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=943.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" IN (?)) [5] 22:55:50.036 [debug] QUERY OK source="sources" db=0.5ms idle=938.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" = ?) [5] 22:55:50.038 [debug] QUERY OK source="media_items" db=1.2ms idle=562.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-22 06:00:52Z], 5] 22:55:50.048 [debug] QUERY OK source="media_items" db=9.0ms idle=564.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Homeless | S02E02\n00:03:47 | The Annoying Neighbor | S02E28\n00:07:23 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Caterpillar #Refuge #Insects #Homeless #caterpillar #noisy #neighbor #apple #Minuscule #nature #insects #ladybugs #animatedseries", "Homeless | Minuscule 🍃 15' Compilation", "8dd7ff24-45e6-4258-83cd-793448c168e2", "https://www.youtube.com/watch?v=6QpMZlFOxwk", "6QpMZlFOxwk", 698, false, 72, "/downloads/Miniscule Season 2/2025-04-22 Homeless | Minuscule 🍃 15' Compilation/Homeless | Minuscule 🍃 15' Compilation [6QpMZlFOxwk].mp4", false, false, false, 5, [], 1, ~U[2025-04-22 06:00:52Z], ~U[2026-01-30 05:55:50Z], ~U[2026-01-30 05:55:50Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Homeless | S02E02\n00:03:47 | The Annoying Neighbor | S02E28\n00:07:23 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Caterpillar #Refuge #Insects #Homeless #caterpillar #noisy #neighbor #apple #Minuscule #nature #insects #ladybugs #animatedseries", "Homeless | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=6QpMZlFOxwk", "6QpMZlFOxwk", 698, false, "/downloads/Miniscule Season 2/2025-04-22 Homeless | Minuscule 🍃 15' Compilation/Homeless | Minuscule 🍃 15' Compilation [6QpMZlFOxwk].mp4", false, 5, ~U[2025-04-22 06:00:52Z]] 22:55:50.049 [debug] QUERY OK source="sources" db=0.4ms idle=574.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" = ?) [5] 22:55:50.049 [debug] QUERY OK source="media_profiles" db=0.4ms idle=13.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] 22:55:50.050 [debug] QUERY OK source="media_items" db=0.5ms idle=13.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 [89024] 22:55:50.051 [debug] Current batch of media processed. Will check again in 1000ms 22:55:51.052 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Labyrinth | S02E69\n00:03:45 | Refrigerated | S02E65\n00:07:20 | Spider from the Depths | S02E31\n00:10:54 | Ladybugland | S02E62\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Labyrinth #spider #fly #exit #Refrigerated #ice #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 900, "filename" => "/downloads/Miniscule Season 2/2025-04-12 Labyrinth | Minuscule 🍃🕷️ 20' Compilation/Labyrinth | Minuscule 🍃🕷️ 20' Compilation [lKFrUfigr-k].mp4", "id" => "lKFrUfigr-k", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=lKFrUfigr-k", "playlist_index" => 73, "timestamp" => 1744480860, "title" => "Labyrinth | Minuscule 🍃🕷️ 20' Compilation", "upload_date" => "20250412"} 22:55:51.053 [debug] QUERY OK source="sources" db=0.5ms idle=1003.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" IN (?)) [5] 22:55:51.054 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:55:51.055 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-12 18:01:00Z], 5] 22:55:51.058 [debug] QUERY OK source="media_items" db=2.2ms idle=962.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Labyrinth | S02E69\n00:03:45 | Refrigerated | S02E65\n00:07:20 | Spider from the Depths | S02E31\n00:10:54 | Ladybugland | S02E62\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Labyrinth #spider #fly #exit #Refrigerated #ice #Minuscule #nature #insects #ladybugs #animatedseries", "Labyrinth | Minuscule 🍃🕷️ 20' Compilation", "451a9539-3031-427b-bcac-cc78e360fe44", "https://www.youtube.com/watch?v=lKFrUfigr-k", "lKFrUfigr-k", 900, false, 73, "/downloads/Miniscule Season 2/2025-04-12 Labyrinth | Minuscule 🍃🕷️ 20' Compilation/Labyrinth | Minuscule 🍃🕷️ 20' Compilation [lKFrUfigr-k].mp4", false, false, false, 5, [], 1, ~U[2025-04-12 18:01:00Z], ~U[2026-01-30 05:55:51Z], ~U[2026-01-30 05:55:51Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Labyrinth | S02E69\n00:03:45 | Refrigerated | S02E65\n00:07:20 | Spider from the Depths | S02E31\n00:10:54 | Ladybugland | S02E62\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Labyrinth #spider #fly #exit #Refrigerated #ice #Minuscule #nature #insects #ladybugs #animatedseries", "Labyrinth | Minuscule 🍃🕷️ 20' Compilation", "https://www.youtube.com/watch?v=lKFrUfigr-k", "lKFrUfigr-k", 900, false, "/downloads/Miniscule Season 2/2025-04-12 Labyrinth | Minuscule 🍃🕷️ 20' Compilation/Labyrinth | Minuscule 🍃🕷️ 20' Compilation [lKFrUfigr-k].mp4", false, 5, ~U[2025-04-12 18:01:00Z]] 22:55:51.059 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=958.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" = ?) [5] 22:55:51.060 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=6.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] 22:55:51.061 [debug] QUERY OK source="media_items" db=0.5ms idle=6.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 [89026] 22:55:51.061 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #DRbrM5mSioQ/youtube video #DRbrM5mSioQ [DRbrM5mSioQ].NA", "id" => "DRbrM5mSioQ", "original_url" => "https://www.youtube.com/watch?v=DRbrM5mSioQ", "playlist_index" => 74, "title" => "youtube video #DRbrM5mSioQ"} 22:55:51.062 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" IN (?)) [5] 22:55:51.062 [debug] Current batch of media processed. Will check again in 1000ms 22:55:51.102 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769752551102544402,"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"]} 22:55:51.103 [debug] QUERY OK source="media_items" db=0.4ms 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 WHERE (m0."id" = ?) [106309] 22:55:51.104 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:55:51.104 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=42.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" = ?) [5] 22:55:51.105 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=42.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] 22:55:51.106 [debug] QUERY OK source="media_items" db=0.5ms idle=9.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 [106309] 22:55:51.108 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.4ms 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" = ?) [106309] 22:55:51.108 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 22:55:51.109 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 22:55:51.110 [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 [] 22:55:51.110 [debug] Running yt-dlp command for action: get_downloadable_status 22:55:51.111 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:55:51.112 [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 [] 22:55:51.113 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:55:51.113 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/cb/b8/cbb85d538432f99f0c7b8a862111e4fa5e3c4d76effe5c77b8741ad14534587d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:55:51.634 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/7e/33/7e335ada5985f2bef569922ec2f0f9d73bd059de3d89dc19834579576210b8df.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 22:55:51.634 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 22:55:51.635 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":3596324,"event":"job:exception","queue_time":36983,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:55:52.063 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Acrobatics | S02E16\n00:03:45 | A Pathetic She'Nut'Igan | S02E12\n00:07:31 | Trapped | S02E64\n00:11:13 | Microzilla | S02E07\n00:14:59 | An Acorn Season | S02E05\n00:18:44 | The Chocolate Chase! | S02E19\n00:22:30 | Turbo speed | S02E58\n00:25:54 | Bzzaping | S02E03\n00:29:41 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acrobatics #Wasps #Ladybird #Competition #Pathetic #Spider #Invent #Strategies #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2043, "filename" => "/downloads/Miniscule Season 2/2025-04-10 Acrobatics | Minuscule 🍃 45' Compilation/Acrobatics | Minuscule 🍃 45' Compilation [x9RfjS6rVoE].mp4", "id" => "x9RfjS6rVoE", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=x9RfjS6rVoE", "playlist_index" => 75, "timestamp" => 1744279290, "title" => "Acrobatics | Minuscule 🍃 45' Compilation", "upload_date" => "20250410"} 22:55:52.064 [debug] QUERY OK source="sources" db=0.3ms idle=951.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" IN (?)) [5] 22:55:52.064 [debug] QUERY OK source="sources" db=0.2ms idle=952.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" = ?) [5] 22:55:52.066 [debug] QUERY OK source="media_items" db=0.9ms idle=952.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-10 10:01:30Z], 5] 22:55:52.084 [debug] QUERY OK source="media_items" db=17.9ms idle=430.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Acrobatics | S02E16\n00:03:45 | A Pathetic She'Nut'Igan | S02E12\n00:07:31 | Trapped | S02E64\n00:11:13 | Microzilla | S02E07\n00:14:59 | An Acorn Season | S02E05\n00:18:44 | The Chocolate Chase! | S02E19\n00:22:30 | Turbo speed | S02E58\n00:25:54 | Bzzaping | S02E03\n00:29:41 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acrobatics #Wasps #Ladybird #Competition #Pathetic #Spider #Invent #Strategies #Minuscule #nature #insects #ladybugs #animatedseries", "Acrobatics | Minuscule 🍃 45' Compilation", "7df524ef-7a31-4a44-b072-5d4dce6d8ecd", "https://www.youtube.com/watch?v=x9RfjS6rVoE", "x9RfjS6rVoE", 2043, false, 75, "/downloads/Miniscule Season 2/2025-04-10 Acrobatics | Minuscule 🍃 45' Compilation/Acrobatics | Minuscule 🍃 45' Compilation [x9RfjS6rVoE].mp4", false, false, false, 5, [], 1, ~U[2025-04-10 10:01:30Z], ~U[2026-01-30 05:55:52Z], ~U[2026-01-30 05:55:52Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Acrobatics | S02E16\n00:03:45 | A Pathetic She'Nut'Igan | S02E12\n00:07:31 | Trapped | S02E64\n00:11:13 | Microzilla | S02E07\n00:14:59 | An Acorn Season | S02E05\n00:18:44 | The Chocolate Chase! | S02E19\n00:22:30 | Turbo speed | S02E58\n00:25:54 | Bzzaping | S02E03\n00:29:41 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acrobatics #Wasps #Ladybird #Competition #Pathetic #Spider #Invent #Strategies #Minuscule #nature #insects #ladybugs #animatedseries", "Acrobatics | Minuscule 🍃 45' Compilation", "https://www.youtube.com/watch?v=x9RfjS6rVoE", "x9RfjS6rVoE", 2043, false, "/downloads/Miniscule Season 2/2025-04-10 Acrobatics | Minuscule 🍃 45' Compilation/Acrobatics | Minuscule 🍃 45' Compilation [x9RfjS6rVoE].mp4", false, 5, ~U[2025-04-10 10:01:30Z]] 22:55:52.085 [debug] QUERY OK source="sources" db=0.3ms idle=442.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" = ?) [5] 22:55:52.086 [debug] QUERY OK source="media_profiles" db=0.2ms idle=21.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] 22:55:52.087 [debug] QUERY OK source="media_items" db=0.5ms idle=21.4ms 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 [89030] 22:55:52.087 [debug] Current batch of media processed. Will check again in 1000ms 22:55:53.088 [debug] Current batch of media processed. Will check again in 1000ms 22:55:54.089 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sausage Predator | S02E06\n00:03:45 | The Yule log | S02E35\n00:07:31 | To The Port Now! | S02E43\n00:10:58 | Metamorphosis | S02E61\n00:14:29 | Love Apple | S02E45\n00:18:08 | The Annoying Neighbor | S02E28\n00:21:44 | Homeless | S02E02\n00:25:32 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Sausage #Predator #ants #barbecue #Yule #Christmas #fire #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1787, "filename" => "/downloads/Miniscule Season 2/2025-03-27 Sausage Predator | Minuscule 🍃 40' Compilation/Sausage Predator | Minuscule 🍃 40' Compilation [u65noLqB1MQ].mp4", "id" => "u65noLqB1MQ", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=u65noLqB1MQ", "playlist_index" => 76, "timestamp" => 1743073290, "title" => "Sausage Predator | Minuscule 🍃 40' Compilation", "upload_date" => "20250327"} 22:55:54.090 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=989.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" IN (?)) [5] 22:55:54.091 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=983.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" = ?) [5] 22:55:54.093 [debug] QUERY OK source="media_items" db=1.2ms idle=617.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-27 11:01:30Z], 5] 22:55:54.096 [debug] QUERY OK source="media_items" db=2.3ms idle=619.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sausage Predator | S02E06\n00:03:45 | The Yule log | S02E35\n00:07:31 | To The Port Now! | S02E43\n00:10:58 | Metamorphosis | S02E61\n00:14:29 | Love Apple | S02E45\n00:18:08 | The Annoying Neighbor | S02E28\n00:21:44 | Homeless | S02E02\n00:25:32 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Sausage #Predator #ants #barbecue #Yule #Christmas #fire #Minuscule #nature #insects #ladybugs #animatedseries", "Sausage Predator | Minuscule 🍃 40' Compilation", "80ddddca-feb2-4bca-87d3-f2820a9b2944", "https://www.youtube.com/watch?v=u65noLqB1MQ", "u65noLqB1MQ", 1787, false, 76, "/downloads/Miniscule Season 2/2025-03-27 Sausage Predator | Minuscule 🍃 40' Compilation/Sausage Predator | Minuscule 🍃 40' Compilation [u65noLqB1MQ].mp4", false, false, false, 5, [], 1, ~U[2025-03-27 11:01:30Z], ~U[2026-01-30 05:55:54Z], ~U[2026-01-30 05:55:54Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sausage Predator | S02E06\n00:03:45 | The Yule log | S02E35\n00:07:31 | To The Port Now! | S02E43\n00:10:58 | Metamorphosis | S02E61\n00:14:29 | Love Apple | S02E45\n00:18:08 | The Annoying Neighbor | S02E28\n00:21:44 | Homeless | S02E02\n00:25:32 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Sausage #Predator #ants #barbecue #Yule #Christmas #fire #Minuscule #nature #insects #ladybugs #animatedseries", "Sausage Predator | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=u65noLqB1MQ", "u65noLqB1MQ", 1787, false, "/downloads/Miniscule Season 2/2025-03-27 Sausage Predator | Minuscule 🍃 40' Compilation/Sausage Predator | Minuscule 🍃 40' Compilation [u65noLqB1MQ].mp4", false, 5, ~U[2025-03-27 11:01:30Z]] 22:55:54.097 [debug] QUERY OK source="sources" db=0.4ms idle=622.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" = ?) [5] 22:55:54.098 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=7.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] 22:55:54.099 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [89032] 22:55:54.099 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #cYsb4xcVEHE/youtube video #cYsb4xcVEHE [cYsb4xcVEHE].NA", "id" => "cYsb4xcVEHE", "original_url" => "https://www.youtube.com/watch?v=cYsb4xcVEHE", "playlist_index" => 77, "title" => "youtube video #cYsb4xcVEHE"} 22:55:54.100 [debug] QUERY OK source="sources" db=0.6ms 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" IN (?)) [5] 22:55:54.101 [debug] Current batch of media processed. Will check again in 1000ms 22:55:54.932 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/cb/b8/cbb85d538432f99f0c7b8a862111e4fa5e3c4d76effe5c77b8741ad14534587d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 22:55:54.932 [debug] Running yt-dlp command for action: download 22:55:54.933 [debug] QUERY OK source="settings" db=0.3ms idle=834.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 [] 22:55:54.933 [debug] QUERY OK source="settings" db=0.2ms idle=834.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 [] 22:55:54.934 [debug] QUERY OK source="settings" db=0.2ms idle=833.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 [] 22:55:54.934 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/7e/08/7e089871f77645163585f61034d27f1fe1746849921628de3277f8a21b098457.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:55:55.102 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mad fly | S03E08\n00:01:29 | Telecanetic | S03E19\n00:02:58 | The Magic Fly | S03E15\n00:04:27 | Like A Cannon Ball | S03E03\n00:05:56 | The Wicked Web | S03E07\n00:07:25 | Blunder | S03E26\n00:09:05 | Webrizon | S03E02\n00:10:34 | At Full Speed | S03E22\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Telekinesis #Chase #Spider #Powers #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 734, "filename" => "/downloads/Miniscule Season 2/2025-03-29 Mad fly | Minuscule 🍃 15' Compilation/Mad fly | Minuscule 🍃 15' Compilation [MmFinvp6tCk].mp4", "id" => "MmFinvp6tCk", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=MmFinvp6tCk", "playlist_index" => 78, "timestamp" => 1743274842, "title" => "Mad fly | Minuscule 🍃 15' Compilation", "upload_date" => "20250329"} 22:55:55.103 [debug] QUERY OK source="sources" db=0.4ms idle=1000.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 (?)) [5] 22:55:55.104 [debug] QUERY OK source="sources" db=0.3ms idle=170.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" = ?) [5] 22:55:55.105 [debug] QUERY OK source="media_items" db=1.2ms idle=170.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-29 19:00:42Z], 5] 22:55:55.108 [debug] QUERY OK source="media_items" db=1.6ms idle=172.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mad fly | S03E08\n00:01:29 | Telecanetic | S03E19\n00:02:58 | The Magic Fly | S03E15\n00:04:27 | Like A Cannon Ball | S03E03\n00:05:56 | The Wicked Web | S03E07\n00:07:25 | Blunder | S03E26\n00:09:05 | Webrizon | S03E02\n00:10:34 | At Full Speed | S03E22\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Telekinesis #Chase #Spider #Powers #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly | Minuscule 🍃 15' Compilation", "5b374e14-442c-40d0-8b12-07203d681044", "https://www.youtube.com/watch?v=MmFinvp6tCk", "MmFinvp6tCk", 734, false, 78, "/downloads/Miniscule Season 2/2025-03-29 Mad fly | Minuscule 🍃 15' Compilation/Mad fly | Minuscule 🍃 15' Compilation [MmFinvp6tCk].mp4", false, false, false, 5, [], 1, ~U[2025-03-29 19:00:42Z], ~U[2026-01-30 05:55:55Z], ~U[2026-01-30 05:55:55Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mad fly | S03E08\n00:01:29 | Telecanetic | S03E19\n00:02:58 | The Magic Fly | S03E15\n00:04:27 | Like A Cannon Ball | S03E03\n00:05:56 | The Wicked Web | S03E07\n00:07:25 | Blunder | S03E26\n00:09:05 | Webrizon | S03E02\n00:10:34 | At Full Speed | S03E22\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Telekinesis #Chase #Spider #Powers #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=MmFinvp6tCk", "MmFinvp6tCk", 734, false, "/downloads/Miniscule Season 2/2025-03-29 Mad fly | Minuscule 🍃 15' Compilation/Mad fly | Minuscule 🍃 15' Compilation [MmFinvp6tCk].mp4", false, 5, ~U[2025-03-29 19:00:42Z]] 22:55:55.109 [debug] QUERY OK source="sources" db=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" = ?) [5] 22:55:55.109 [debug] QUERY OK source="media_profiles" db=0.2ms idle=5.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] 22:55:55.110 [debug] QUERY OK source="media_items" db=0.4ms idle=5.4ms 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 [89036] 22:55:55.111 [debug] Current batch of media processed. Will check again in 1000ms 22:55:56.112 [debug] Current batch of media processed. Will check again in 1000ms 22:55:57.113 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Vegetable Garden | S02E10\n00:03:44 | Trapped | S02E64\n00:07:27 | The Monster Of The Haunted Swamp | S02E37\n00:10:57 | At Full Speed | S02E27\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#vegetable #garden #insects #gardener #trapped #escape #rescue #Minuscule #nature #ladybugs #animatedseries", "duration" => 920, "filename" => "/downloads/Miniscule Season 2/2025-03-20 The Vegetable Garden | Minuscule 🍃 20' Compilation/The Vegetable Garden | Minuscule 🍃 20' Compilation [Q7a7mvz2wZU].mp4", "id" => "Q7a7mvz2wZU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Q7a7mvz2wZU", "playlist_index" => 79, "timestamp" => 1742468491, "title" => "The Vegetable Garden | Minuscule 🍃 20' Compilation", "upload_date" => "20250320"} 22:55:57.114 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1.0e3ms 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 (?)) [5] 22:55:57.115 [debug] QUERY OK source="sources" db=0.5ms idle=640.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" = ?) [5] 22:55:57.117 [debug] QUERY OK source="media_items" db=1.5ms idle=641.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-20 11:01:31Z], 5] 22:55:57.135 [debug] QUERY OK source="media_items" db=17.7ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Vegetable Garden | S02E10\n00:03:44 | Trapped | S02E64\n00:07:27 | The Monster Of The Haunted Swamp | S02E37\n00:10:57 | At Full Speed | S02E27\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#vegetable #garden #insects #gardener #trapped #escape #rescue #Minuscule #nature #ladybugs #animatedseries", "The Vegetable Garden | Minuscule 🍃 20' Compilation", "84f7ad71-2a15-49b4-b681-79cec46da153", "https://www.youtube.com/watch?v=Q7a7mvz2wZU", "Q7a7mvz2wZU", 920, false, 79, "/downloads/Miniscule Season 2/2025-03-20 The Vegetable Garden | Minuscule 🍃 20' Compilation/The Vegetable Garden | Minuscule 🍃 20' Compilation [Q7a7mvz2wZU].mp4", false, false, false, 5, [], 1, ~U[2025-03-20 11:01:31Z], ~U[2026-01-30 05:55:57Z], ~U[2026-01-30 05:55:57Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Vegetable Garden | S02E10\n00:03:44 | Trapped | S02E64\n00:07:27 | The Monster Of The Haunted Swamp | S02E37\n00:10:57 | At Full Speed | S02E27\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#vegetable #garden #insects #gardener #trapped #escape #rescue #Minuscule #nature #ladybugs #animatedseries", "The Vegetable Garden | Minuscule 🍃 20' Compilation", "https://www.youtube.com/watch?v=Q7a7mvz2wZU", "Q7a7mvz2wZU", 920, false, "/downloads/Miniscule Season 2/2025-03-20 The Vegetable Garden | Minuscule 🍃 20' Compilation/The Vegetable Garden | Minuscule 🍃 20' Compilation [Q7a7mvz2wZU].mp4", false, 5, ~U[2025-03-20 11:01:31Z]] 22:55:57.136 [debug] QUERY OK source="sources" db=0.4ms idle=21.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" = ?) [5] 22:55:57.137 [debug] QUERY OK source="media_profiles" db=0.4ms idle=21.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] 22:55:57.138 [debug] QUERY OK source="media_items" db=0.4ms idle=20.5ms 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 [89038] 22:55:57.138 [debug] Current batch of media processed. Will check again in 1000ms 22:55:58.139 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | It's a tie! | S02E67\n00:03:40 | Twelve Angry Snails | S02E66\n00:07:13 | Sleep Walker | S02E68\n00:10:37 | Black Slope For Gastropod Skiers | S02E55\n00:14:23 | The Long Road | S02E34\n00:18:05 | Thirsty | S02E29\n00:21:38 | Night of the Gastropods | S02E18\n00:25:23 | Go Blue Go! | S02E54\n00:29:05 | The Iron Monster | S02E33\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#insects #games #competition #referee #snails #escape #gourmet #restaurant #Minuscule #nature #ladybugs #animatedseries", "duration" => 1997, "filename" => "/downloads/Miniscule Season 2/2025-03-22 It's a tie! 🍃 Minuscule 🍃| 45' Compilation/It's a tie! 🍃 Minuscule 🍃| 45' Compilation [hYE3G--61A8].mp4", "id" => "hYE3G--61A8", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=hYE3G--61A8", "playlist_index" => 80, "timestamp" => 1742670045, "title" => "It's a tie! 🍃 Minuscule 🍃| 45' Compilation", "upload_date" => "20250322"} 22:55:58.140 [debug] QUERY OK source="sources" db=0.5ms idle=1003.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 (?)) [5] 22:55:58.141 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" = ?) [5] 22:55:58.143 [debug] QUERY OK source="media_items" db=1.2ms idle=1003.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-22 19:00:45Z], 5] 22:55:58.146 [debug] QUERY OK source="media_items" db=2.4ms idle=31.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | It's a tie! | S02E67\n00:03:40 | Twelve Angry Snails | S02E66\n00:07:13 | Sleep Walker | S02E68\n00:10:37 | Black Slope For Gastropod Skiers | S02E55\n00:14:23 | The Long Road | S02E34\n00:18:05 | Thirsty | S02E29\n00:21:38 | Night of the Gastropods | S02E18\n00:25:23 | Go Blue Go! | S02E54\n00:29:05 | The Iron Monster | S02E33\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#insects #games #competition #referee #snails #escape #gourmet #restaurant #Minuscule #nature #ladybugs #animatedseries", "It's a tie! 🍃 Minuscule 🍃| 45' Compilation", "3fc4669b-8ded-41da-a357-8d5b2b989e1c", "https://www.youtube.com/watch?v=hYE3G--61A8", "hYE3G--61A8", 1997, false, 80, "/downloads/Miniscule Season 2/2025-03-22 It's a tie! 🍃 Minuscule 🍃| 45' Compilation/It's a tie! 🍃 Minuscule 🍃| 45' Compilation [hYE3G--61A8].mp4", false, false, false, 5, [], 1, ~U[2025-03-22 19:00:45Z], ~U[2026-01-30 05:55:58Z], ~U[2026-01-30 05:55:58Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | It's a tie! | S02E67\n00:03:40 | Twelve Angry Snails | S02E66\n00:07:13 | Sleep Walker | S02E68\n00:10:37 | Black Slope For Gastropod Skiers | S02E55\n00:14:23 | The Long Road | S02E34\n00:18:05 | Thirsty | S02E29\n00:21:38 | Night of the Gastropods | S02E18\n00:25:23 | Go Blue Go! | S02E54\n00:29:05 | The Iron Monster | S02E33\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#insects #games #competition #referee #snails #escape #gourmet #restaurant #Minuscule #nature #ladybugs #animatedseries", "It's a tie! 🍃 Minuscule 🍃| 45' Compilation", "https://www.youtube.com/watch?v=hYE3G--61A8", "hYE3G--61A8", 1997, false, "/downloads/Miniscule Season 2/2025-03-22 It's a tie! 🍃 Minuscule 🍃| 45' Compilation/It's a tie! 🍃 Minuscule 🍃| 45' Compilation [hYE3G--61A8].mp4", false, 5, ~U[2025-03-22 19:00:45Z]] 22:55:58.147 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=27.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" = ?) [5] 22:55:58.148 [debug] QUERY OK source="media_profiles" db=0.4ms idle=7.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] 22:55:58.149 [debug] QUERY OK source="media_items" db=0.6ms idle=7.5ms 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 [89040] 22:55:58.150 [debug] Current batch of media processed. Will check again in 1000ms 22:55:59.151 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Butterfly Effect | S02E23\n00:03:22 | A Butterfly's Nightmare | S02E20\n00:06:38 | Hop On! | S02E25\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#butterfly #flutter #fields #reaction #Butterfly #Caterpillar #Nightmare #Cocoon #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 654, "filename" => "/downloads/Miniscule Season 2/2025-03-18 The Butterfly Effect 🦋 Minuscule 🍃15' Compilation/The Butterfly Effect 🦋 Minuscule 🍃15' Compilation [x_l22YIpeVo].mp4", "id" => "x_l22YIpeVo", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=x_l22YIpeVo", "playlist_index" => 81, "timestamp" => 1742281259, "title" => "The Butterfly Effect 🦋 Minuscule 🍃15' Compilation", "upload_date" => "20250318"} 22:55:59.152 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1004.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" IN (?)) [5] 22:55:59.153 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1004.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" = ?) [5] 22:55:59.154 [debug] QUERY OK source="media_items" db=1.0ms idle=1003.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-18 07:00:59Z], 5] 22:55:59.176 [debug] QUERY OK source="media_items" db=21.4ms idle=40.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Butterfly Effect | S02E23\n00:03:22 | A Butterfly's Nightmare | S02E20\n00:06:38 | Hop On! | S02E25\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#butterfly #flutter #fields #reaction #Butterfly #Caterpillar #Nightmare #Cocoon #Minuscule #nature #insects #ladybugs #animatedseries", "The Butterfly Effect 🦋 Minuscule 🍃15' Compilation", "c1678d04-4c4c-4335-99c8-d23fea89fc7a", "https://www.youtube.com/watch?v=x_l22YIpeVo", "x_l22YIpeVo", 654, false, 81, "/downloads/Miniscule Season 2/2025-03-18 The Butterfly Effect 🦋 Minuscule 🍃15' Compilation/The Butterfly Effect 🦋 Minuscule 🍃15' Compilation [x_l22YIpeVo].mp4", false, false, false, 5, [], 1, ~U[2025-03-18 07:00:59Z], ~U[2026-01-30 05:55:59Z], ~U[2026-01-30 05:55:59Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Butterfly Effect | S02E23\n00:03:22 | A Butterfly's Nightmare | S02E20\n00:06:38 | Hop On! | S02E25\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#butterfly #flutter #fields #reaction #Butterfly #Caterpillar #Nightmare #Cocoon #Minuscule #nature #insects #ladybugs #animatedseries", "The Butterfly Effect 🦋 Minuscule 🍃15' Compilation", "https://www.youtube.com/watch?v=x_l22YIpeVo", "x_l22YIpeVo", 654, false, "/downloads/Miniscule Season 2/2025-03-18 The Butterfly Effect 🦋 Minuscule 🍃15' Compilation/The Butterfly Effect 🦋 Minuscule 🍃15' Compilation [x_l22YIpeVo].mp4", false, 5, ~U[2025-03-18 07:00:59Z]] 22:55:59.177 [debug] QUERY OK source="sources" db=0.4ms idle=55.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" = ?) [5] 22:55:59.178 [debug] QUERY OK source="media_profiles" db=0.3ms idle=25.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] 22:55:59.179 [debug] QUERY OK source="media_items" db=0.5ms idle=25.5ms 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 [89042] 22:55:59.179 [debug] Current batch of media processed. Will check again in 1000ms 22:55:59.198 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/7e/08/7e089871f77645163585f61034d27f1fe1746849921628de3277f8a21b098457.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 22:55:59.198 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 22:55:59.199 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8096442,"event":"job:exception","queue_time":358699,"attempt":4,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:56:00.180 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | If Only Lonely | S02E22\n00:03:45 | Top Tabasco | S02E70\n00:07:22 | The Wing Case | S02E01\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #sibling #anxiety #ants #Tabasco #wasp #patrol #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 707, "filename" => "/downloads/Miniscule Season 2/2025-04-15 If Only Lonely 🍃 Minuscule 🍃 15' Compilation/If Only Lonely 🍃 Minuscule 🍃 15' Compilation [vPCGZgPoNQc].mp4", "id" => "vPCGZgPoNQc", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=vPCGZgPoNQc", "playlist_index" => 82, "timestamp" => 1744696844, "title" => "If Only Lonely 🍃 Minuscule 🍃 15' Compilation", "upload_date" => "20250415"} 22:56:00.181 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1001.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 (?)) [5] 22:56:00.182 [debug] QUERY OK source="sources" db=0.5ms idle=982.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" = ?) [5] 22:56:00.184 [debug] QUERY OK source="media_items" db=1.1ms idle=975.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-15 06:00:44Z], 5] 22:56:00.187 [debug] QUERY OK source="media_items" db=2.3ms idle=67.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | If Only Lonely | S02E22\n00:03:45 | Top Tabasco | S02E70\n00:07:22 | The Wing Case | S02E01\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #sibling #anxiety #ants #Tabasco #wasp #patrol #Minuscule #nature #insects #ladybugs #animatedseries", "If Only Lonely 🍃 Minuscule 🍃 15' Compilation", "0c4d8e03-20c2-4e7b-b691-d58722531b02", "https://www.youtube.com/watch?v=vPCGZgPoNQc", "vPCGZgPoNQc", 707, false, 82, "/downloads/Miniscule Season 2/2025-04-15 If Only Lonely 🍃 Minuscule 🍃 15' Compilation/If Only Lonely 🍃 Minuscule 🍃 15' Compilation [vPCGZgPoNQc].mp4", false, false, false, 5, [], 1, ~U[2025-04-15 06:00:44Z], ~U[2026-01-30 05:56:00Z], ~U[2026-01-30 05:56:00Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | If Only Lonely | S02E22\n00:03:45 | Top Tabasco | S02E70\n00:07:22 | The Wing Case | S02E01\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #sibling #anxiety #ants #Tabasco #wasp #patrol #Minuscule #nature #insects #ladybugs #animatedseries", "If Only Lonely 🍃 Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=vPCGZgPoNQc", "vPCGZgPoNQc", 707, false, "/downloads/Miniscule Season 2/2025-04-15 If Only Lonely 🍃 Minuscule 🍃 15' Compilation/If Only Lonely 🍃 Minuscule 🍃 15' Compilation [vPCGZgPoNQc].mp4", false, 5, ~U[2025-04-15 06:00:44Z]] 22:56:00.188 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=64.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" = ?) [5] 22:56:00.189 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=7.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] 22:56:00.190 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [89044] 22:56:00.190 [debug] Current batch of media processed. Will check again in 1000ms 22:56:00.968 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:56:01.191 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pea supper | S03E01\n00:01:29 | Glue | S03E06\n00:03:06 | He Who Laughs Last, laughs Longest | S03E12\n00:04:35 | The Artist | S03E18\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #peas #supper #techniques #Glue #Sticky #Spider #Trap #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 399, "filename" => "/downloads/Miniscule Season 2/2025-03-15 Pea supper | Minuscule 🍃10' Compilation/Pea supper | Minuscule 🍃10' Compilation [Z6u1Kv61MBA].mp4", "id" => "Z6u1Kv61MBA", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Z6u1Kv61MBA", "playlist_index" => 83, "timestamp" => 1742065246, "title" => "Pea supper | Minuscule 🍃10' Compilation", "upload_date" => "20250315"} 22:56:01.192 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1002.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 (?)) [5] 22:56:01.192 [debug] QUERY OK source="sources" db=0.3ms idle=1002.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" = ?) [5] 22:56:01.194 [debug] QUERY OK source="media_items" db=0.9ms idle=224.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-15 19:00:46Z], 5] 22:56:01.196 [debug] QUERY OK source="media_items" db=1.6ms idle=75.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pea supper | S03E01\n00:01:29 | Glue | S03E06\n00:03:06 | He Who Laughs Last, laughs Longest | S03E12\n00:04:35 | The Artist | S03E18\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #peas #supper #techniques #Glue #Sticky #Spider #Trap #Minuscule #nature #insects #ladybugs #animatedseries", "Pea supper | Minuscule 🍃10' Compilation", "936fd0ef-bc71-4f65-9c18-4172a47f73b6", "https://www.youtube.com/watch?v=Z6u1Kv61MBA", "Z6u1Kv61MBA", 399, false, 83, "/downloads/Miniscule Season 2/2025-03-15 Pea supper | Minuscule 🍃10' Compilation/Pea supper | Minuscule 🍃10' Compilation [Z6u1Kv61MBA].mp4", false, false, false, 5, [], 1, ~U[2025-03-15 19:00:46Z], ~U[2026-01-30 05:56:01Z], ~U[2026-01-30 05:56:01Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pea supper | S03E01\n00:01:29 | Glue | S03E06\n00:03:06 | He Who Laughs Last, laughs Longest | S03E12\n00:04:35 | The Artist | S03E18\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #peas #supper #techniques #Glue #Sticky #Spider #Trap #Minuscule #nature #insects #ladybugs #animatedseries", "Pea supper | Minuscule 🍃10' Compilation", "https://www.youtube.com/watch?v=Z6u1Kv61MBA", "Z6u1Kv61MBA", 399, false, "/downloads/Miniscule Season 2/2025-03-15 Pea supper | Minuscule 🍃10' Compilation/Pea supper | Minuscule 🍃10' Compilation [Z6u1Kv61MBA].mp4", false, 5, ~U[2025-03-15 19:00:46Z]] 22:56:01.197 [debug] QUERY OK source="sources" db=0.3ms idle=70.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" = ?) [5] 22:56:01.197 [debug] QUERY OK source="media_profiles" db=0.2ms idle=5.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] 22:56:01.198 [debug] QUERY OK source="media_items" db=0.4ms idle=5.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 [89046] 22:56:01.198 [debug] Current batch of media processed. Will check again in 1000ms 22:56:02.199 [debug] Current batch of media processed. Will check again in 1000ms 22:56:03.200 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n%CHAPTERS%\r\n \r\n%PLAYLIST%\r\n \r\nMinuscule in English 🇺🇸: https://youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Carrot #Ants #Ski #ant #snow #pinecone #colony #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 685, "filename" => "/downloads/Miniscule Season 2/2025-03-08 Snow Carrot | Minuscule 🍃 15' Compilation/Snow Carrot | Minuscule 🍃 15' Compilation [yEQ3x5KByLI].mp4", "id" => "yEQ3x5KByLI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=yEQ3x5KByLI", "playlist_index" => 84, "timestamp" => 1741460443, "title" => "Snow Carrot | Minuscule 🍃 15' Compilation", "upload_date" => "20250308"} 22:56:03.201 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=726.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" IN (?)) [5] 22:56:03.202 [debug] QUERY OK source="sources" db=0.4ms idle=727.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" = ?) [5] 22:56:03.204 [debug] QUERY OK source="media_items" db=1.2ms idle=728.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-08 19:00:43Z], 5] 22:56:03.207 [debug] QUERY OK source="media_items" db=2.1ms idle=80.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n%CHAPTERS%\r\n \r\n%PLAYLIST%\r\n \r\nMinuscule in English 🇺🇸: https://youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Carrot #Ants #Ski #ant #snow #pinecone #colony #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Carrot | Minuscule 🍃 15' Compilation", "03e143aa-8cc9-40a9-8df4-483fe8a4d527", "https://www.youtube.com/watch?v=yEQ3x5KByLI", "yEQ3x5KByLI", 685, false, 84, "/downloads/Miniscule Season 2/2025-03-08 Snow Carrot | Minuscule 🍃 15' Compilation/Snow Carrot | Minuscule 🍃 15' Compilation [yEQ3x5KByLI].mp4", false, false, false, 5, [], 1, ~U[2025-03-08 19:00:43Z], ~U[2026-01-30 05:56:03Z], ~U[2026-01-30 05:56:03Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n%CHAPTERS%\r\n \r\n%PLAYLIST%\r\n \r\nMinuscule in English 🇺🇸: https://youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Carrot #Ants #Ski #ant #snow #pinecone #colony #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Carrot | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=yEQ3x5KByLI", "yEQ3x5KByLI", 685, false, "/downloads/Miniscule Season 2/2025-03-08 Snow Carrot | Minuscule 🍃 15' Compilation/Snow Carrot | Minuscule 🍃 15' Compilation [yEQ3x5KByLI].mp4", false, 5, ~U[2025-03-08 19:00:43Z]] 22:56:03.208 [debug] QUERY OK source="sources" db=0.4ms idle=76.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" = ?) [5] 22:56:03.209 [debug] QUERY OK source="media_profiles" db=0.3ms idle=6.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] 22:56:03.210 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [89048] 22:56:03.210 [debug] Current batch of media processed. Will check again in 1000ms 22:56:04.211 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grasshopper Who Didn't Know How To Leap | S02E13\r\n00:03:45 | An Acorn Season | S02E05\r\n00:07:31 | Chewing gum rodeo | S02E14\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #babies #leap #outcast #Acorn #Grasshopper #Insects #Justice #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 715, "filename" => "/downloads/Miniscule Season 2/2025-03-04 The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation/The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation [773g6-bqyv4].mp4", "id" => "773g6-bqyv4", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=773g6-bqyv4", "playlist_index" => 85, "timestamp" => 1741071649, "title" => "The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation", "upload_date" => "20250304"} 22:56:04.212 [debug] QUERY OK source="sources" db=0.5ms idle=1003.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" IN (?)) [5] 22:56:04.213 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" = ?) [5] 22:56:04.215 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-04 07:00:49Z], 5] 22:56:04.235 [debug] QUERY OK source="media_items" db=19.2ms idle=88.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grasshopper Who Didn't Know How To Leap | S02E13\r\n00:03:45 | An Acorn Season | S02E05\r\n00:07:31 | Chewing gum rodeo | S02E14\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #babies #leap #outcast #Acorn #Grasshopper #Insects #Justice #Minuscule #nature #insects #ladybugs #animatedseries", "The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation", "bfab8835-7e06-400a-a563-204d0b9ec866", "https://www.youtube.com/watch?v=773g6-bqyv4", "773g6-bqyv4", 715, false, 85, "/downloads/Miniscule Season 2/2025-03-04 The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation/The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation [773g6-bqyv4].mp4", false, false, false, 5, [], 1, ~U[2025-03-04 07:00:49Z], ~U[2026-01-30 05:56:04Z], ~U[2026-01-30 05:56:04Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grasshopper Who Didn't Know How To Leap | S02E13\r\n00:03:45 | An Acorn Season | S02E05\r\n00:07:31 | Chewing gum rodeo | S02E14\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #babies #leap #outcast #Acorn #Grasshopper #Insects #Justice #Minuscule #nature #insects #ladybugs #animatedseries", "The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=773g6-bqyv4", "773g6-bqyv4", 715, false, "/downloads/Miniscule Season 2/2025-03-04 The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation/The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation [773g6-bqyv4].mp4", false, 5, ~U[2025-03-04 07:00:49Z]] 22:56:04.236 [debug] QUERY OK source="sources" db=0.4ms idle=101.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" = ?) [5] 22:56:04.236 [debug] QUERY OK source="media_profiles" db=0.3ms idle=23.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] 22:56:04.237 [debug] QUERY OK source="media_items" db=0.6ms idle=23.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 [89050] 22:56:04.238 [debug] Current batch of media processed. Will check again in 1000ms 22:56:05.239 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Honey Fly | S02E08\r\n00:03:50 | Gather More to Pollinate More | S02E32\r\n00:07:35 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Honey #Fly #Bees #Admiration #gather #pollinate #productivity #competition #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 705, "filename" => "/downloads/Miniscule Season 2/2025-02-25 Honey Fly 🐝 Minuscule 🍃 15' Compilation/Honey Fly 🐝 Minuscule 🍃 15' Compilation [uFP6qsmHsTU].mp4", "id" => "uFP6qsmHsTU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=uFP6qsmHsTU", "playlist_index" => 86, "timestamp" => 1740466855, "title" => "Honey Fly 🐝 Minuscule 🍃 15' Compilation", "upload_date" => "20250225"} 22:56:05.240 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:05.241 [debug] QUERY OK source="sources" db=0.2ms idle=1004.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" = ?) [5] 22:56:05.242 [debug] QUERY OK source="media_items" db=0.8ms idle=1003.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-02-25 07:00:55Z], 5] 22:56:05.244 [debug] QUERY OK source="media_items" db=1.6ms idle=112.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Honey Fly | S02E08\r\n00:03:50 | Gather More to Pollinate More | S02E32\r\n00:07:35 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Honey #Fly #Bees #Admiration #gather #pollinate #productivity #competition #Minuscule #nature #insects #ladybugs #animatedseries", "Honey Fly 🐝 Minuscule 🍃 15' Compilation", "66a94bbc-33fe-4447-89ef-bd044659f60a", "https://www.youtube.com/watch?v=uFP6qsmHsTU", "uFP6qsmHsTU", 705, false, 86, "/downloads/Miniscule Season 2/2025-02-25 Honey Fly 🐝 Minuscule 🍃 15' Compilation/Honey Fly 🐝 Minuscule 🍃 15' Compilation [uFP6qsmHsTU].mp4", false, false, false, 5, [], 1, ~U[2025-02-25 07:00:55Z], ~U[2026-01-30 05:56:05Z], ~U[2026-01-30 05:56:05Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Honey Fly | S02E08\r\n00:03:50 | Gather More to Pollinate More | S02E32\r\n00:07:35 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Honey #Fly #Bees #Admiration #gather #pollinate #productivity #competition #Minuscule #nature #insects #ladybugs #animatedseries", "Honey Fly 🐝 Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=uFP6qsmHsTU", "uFP6qsmHsTU", 705, false, "/downloads/Miniscule Season 2/2025-02-25 Honey Fly 🐝 Minuscule 🍃 15' Compilation/Honey Fly 🐝 Minuscule 🍃 15' Compilation [uFP6qsmHsTU].mp4", false, 5, ~U[2025-02-25 07:00:55Z]] 22:56:05.244 [debug] QUERY OK source="sources" db=0.2ms idle=107.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" = ?) [5] 22:56:05.245 [debug] QUERY OK source="media_profiles" db=0.2ms idle=4.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] 22:56:05.246 [debug] QUERY OK source="media_items" db=0.4ms idle=4.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 [89052] 22:56:05.246 [debug] Current batch of media processed. Will check again in 1000ms 22:56:06.247 [debug] Current batch of media processed. Will check again in 1000ms 22:56:07.248 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Rascals! | S02E38\r\n00:03:39 | Away all boarders! | S02E41\r\n00:07:14 | Sand Castle | S02E49\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ants #battle #steal #leader #cottage #pistachios #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 680, "filename" => "/downloads/Miniscule Season 2/2025-02-22 Rascals! | Minuscule 🍃 15' Compilation/Rascals! | Minuscule 🍃 15' Compilation [ix9apuOmP7E].mp4", "id" => "ix9apuOmP7E", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=ix9apuOmP7E", "playlist_index" => 87, "timestamp" => 1740250847, "title" => "Rascals! | Minuscule 🍃 15' Compilation", "upload_date" => "20250222"} 22:56:07.249 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=774.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" IN (?)) [5] 22:56:07.250 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=775.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" = ?) [5] 22:56:07.251 [debug] QUERY OK source="media_items" db=1.1ms idle=776.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-02-22 19:00:47Z], 5] 22:56:07.312 [debug] QUERY OK source="media_items" db=58.9ms idle=116.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Rascals! | S02E38\r\n00:03:39 | Away all boarders! | S02E41\r\n00:07:14 | Sand Castle | S02E49\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ants #battle #steal #leader #cottage #pistachios #Minuscule #nature #insects #ladybugs #animatedseries", "Rascals! | Minuscule 🍃 15' Compilation", "dab38a13-5721-41a2-b6c5-d8e4739292f0", "https://www.youtube.com/watch?v=ix9apuOmP7E", "ix9apuOmP7E", 680, false, 87, "/downloads/Miniscule Season 2/2025-02-22 Rascals! | Minuscule 🍃 15' Compilation/Rascals! | Minuscule 🍃 15' Compilation [ix9apuOmP7E].mp4", false, false, false, 5, [], 1, ~U[2025-02-22 19:00:47Z], ~U[2026-01-30 05:56:07Z], ~U[2026-01-30 05:56:07Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Rascals! | S02E38\r\n00:03:39 | Away all boarders! | S02E41\r\n00:07:14 | Sand Castle | S02E49\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ants #battle #steal #leader #cottage #pistachios #Minuscule #nature #insects #ladybugs #animatedseries", "Rascals! | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=ix9apuOmP7E", "ix9apuOmP7E", 680, false, "/downloads/Miniscule Season 2/2025-02-22 Rascals! | Minuscule 🍃 15' Compilation/Rascals! | Minuscule 🍃 15' Compilation [ix9apuOmP7E].mp4", false, 5, ~U[2025-02-22 19:00:47Z]] 22:56:07.313 [debug] QUERY OK source="sources" db=0.5ms idle=169.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" = ?) [5] 22:56:07.313 [debug] QUERY OK source="media_profiles" db=0.4ms idle=63.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] 22:56:07.314 [debug] QUERY OK source="media_items" db=0.6ms idle=63.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 [89054] 22:56:07.315 [debug] Current batch of media processed. Will check again in 1000ms 22:56:08.316 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mission : BBQ | S02E09\r\n00:03:45 | The Chocolate Chase! | S02E19\r\n00:07:31 | Acrobatics | S02E16\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#BBQ #garden #insects #wasps #chocolate #centipede #bees #Minuscule #nature #ladybugs #animatedseries", "duration" => 715, "filename" => "/downloads/Miniscule Season 2/2025-02-20 Mission : BBQ | Minuscule 🍃 15' Compilation/Mission : BBQ | Minuscule 🍃 15' Compilation [HwAj0Zc2N1w].mp4", "id" => "HwAj0Zc2N1w", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=HwAj0Zc2N1w", "playlist_index" => 88, "timestamp" => 1740049279, "title" => "Mission : BBQ | Minuscule 🍃 15' Compilation", "upload_date" => "20250220"} 22:56:08.317 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:08.318 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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" = ?) [5] 22:56:08.320 [debug] QUERY OK source="media_items" db=1.6ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-02-20 11:01:19Z], 5] 22:56:08.324 [debug] QUERY OK source="media_items" db=3.0ms idle=182.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mission : BBQ | S02E09\r\n00:03:45 | The Chocolate Chase! | S02E19\r\n00:07:31 | Acrobatics | S02E16\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#BBQ #garden #insects #wasps #chocolate #centipede #bees #Minuscule #nature #ladybugs #animatedseries", "Mission : BBQ | Minuscule 🍃 15' Compilation", "ca1ac953-ea50-4f5e-bda1-38a2b8dc277d", "https://www.youtube.com/watch?v=HwAj0Zc2N1w", "HwAj0Zc2N1w", 715, false, 88, "/downloads/Miniscule Season 2/2025-02-20 Mission : BBQ | Minuscule 🍃 15' Compilation/Mission : BBQ | Minuscule 🍃 15' Compilation [HwAj0Zc2N1w].mp4", false, false, false, 5, [], 1, ~U[2025-02-20 11:01:19Z], ~U[2026-01-30 05:56:08Z], ~U[2026-01-30 05:56:08Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mission : BBQ | S02E09\r\n00:03:45 | The Chocolate Chase! | S02E19\r\n00:07:31 | Acrobatics | S02E16\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#BBQ #garden #insects #wasps #chocolate #centipede #bees #Minuscule #nature #ladybugs #animatedseries", "Mission : BBQ | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=HwAj0Zc2N1w", "HwAj0Zc2N1w", 715, false, "/downloads/Miniscule Season 2/2025-02-20 Mission : BBQ | Minuscule 🍃 15' Compilation/Mission : BBQ | Minuscule 🍃 15' Compilation [HwAj0Zc2N1w].mp4", false, 5, ~U[2025-02-20 11:01:19Z]] 22:56:08.325 [debug] QUERY OK source="sources" db=0.4ms idle=179.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" = ?) [5] 22:56:08.326 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=7.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] 22:56:08.327 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [89056] 22:56:08.327 [debug] Current batch of media processed. Will check again in 1000ms 22:56:09.328 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Fly Hunting | S02E24\r\n00:03:33 | Zzz In The Metro | S02E53\r\n00:07:01 | Umbrella And Coconut Trees | S02E71\r\n00:10:27 | Turbo speed | S02E58\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#fly #hunting #ladybug #pursuit #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 900, "filename" => "/downloads/Miniscule Season 2/2025-02-15 Fly Hunting 🐞 Minuscule 🍃 20' Compilation/Fly Hunting 🐞 Minuscule 🍃 20' Compilation [K543vJYczNU].mp4", "id" => "K543vJYczNU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=K543vJYczNU", "playlist_index" => 89, "timestamp" => 1739646046, "title" => "Fly Hunting 🐞 Minuscule 🍃 20' Compilation", "upload_date" => "20250215"} 22:56:09.329 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" IN (?)) [5] 22:56:09.329 [debug] QUERY OK source="sources" db=0.2ms idle=1003.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" = ?) [5] 22:56:09.331 [debug] QUERY OK source="media_items" db=1.1ms idle=1002.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-02-15 19:00:46Z], 5] 22:56:09.333 [debug] QUERY OK source="media_items" db=1.6ms idle=191.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Fly Hunting | S02E24\r\n00:03:33 | Zzz In The Metro | S02E53\r\n00:07:01 | Umbrella And Coconut Trees | S02E71\r\n00:10:27 | Turbo speed | S02E58\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#fly #hunting #ladybug #pursuit #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Fly Hunting 🐞 Minuscule 🍃 20' Compilation", "9363f778-4b63-4a6b-b025-8c9de119a793", "https://www.youtube.com/watch?v=K543vJYczNU", "K543vJYczNU", 900, false, 89, "/downloads/Miniscule Season 2/2025-02-15 Fly Hunting 🐞 Minuscule 🍃 20' Compilation/Fly Hunting 🐞 Minuscule 🍃 20' Compilation [K543vJYczNU].mp4", false, false, false, 5, [], 1, ~U[2025-02-15 19:00:46Z], ~U[2026-01-30 05:56:09Z], ~U[2026-01-30 05:56:09Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Fly Hunting | S02E24\r\n00:03:33 | Zzz In The Metro | S02E53\r\n00:07:01 | Umbrella And Coconut Trees | S02E71\r\n00:10:27 | Turbo speed | S02E58\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#fly #hunting #ladybug #pursuit #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Fly Hunting 🐞 Minuscule 🍃 20' Compilation", "https://www.youtube.com/watch?v=K543vJYczNU", "K543vJYczNU", 900, false, "/downloads/Miniscule Season 2/2025-02-15 Fly Hunting 🐞 Minuscule 🍃 20' Compilation/Fly Hunting 🐞 Minuscule 🍃 20' Compilation [K543vJYczNU].mp4", false, 5, ~U[2025-02-15 19:00:46Z]] 22:56:09.334 [debug] QUERY OK source="sources" db=0.3ms idle=186.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" = ?) [5] 22:56:09.334 [debug] QUERY OK source="media_profiles" db=0.3ms idle=5.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] 22:56:09.335 [debug] QUERY OK source="media_items" db=0.5ms idle=5.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 [89058] 22:56:09.335 [debug] Current batch of media processed. Will check again in 1000ms 22:56:10.149 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1769752570149033053,"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"]} 22:56:10.149 [debug] QUERY OK source="media_items" db=0.3ms idle=815.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" = ?) [89022] 22:56:10.150 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:56:10.150 [debug] QUERY OK source="sources" db=0.3ms idle=815.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" = ?) [5] 22:56:10.151 [debug] QUERY OK source="media_profiles" db=0.3ms idle=815.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] 22:56:10.152 [debug] QUERY OK source="media_items" db=0.5ms idle=8.4ms 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 [89022] 22:56:10.173 [debug] QUERY OK source="media_metadata" db=0.1ms idle=24.3ms 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" = ?) [89022] 22:56:10.173 [debug] QUERY OK source="media_profiles" db=0.2ms idle=23.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] 22:56:10.174 [debug] QUERY OK source="settings" db=0.2ms idle=23.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 [] 22:56:10.174 [debug] QUERY OK source="settings" db=0.2ms idle=23.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 [] 22:56:10.175 [debug] Running yt-dlp command for action: get_downloadable_status 22:56:10.176 [debug] QUERY OK source="settings" db=0.1ms idle=23.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 [] 22:56:10.176 [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 [] 22:56:10.177 [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 [] 22:56:10.177 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/6e/34/6e3477ed93c290cad2e2cacba1ba98586ad1fb4058dda265f46822c923910794.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:56:10.336 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grocery Store Racketeer | S02E50\r\n00:03:27 | Ladybugland | S02E62\r\n00:06:47 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Grocery #Spider #Bullying #Revenge #ladybug #spider #toys #danger #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 657, "filename" => "/downloads/Miniscule Season 2/2025-02-11 The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation/The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation [N-GZ_mZLq40].mp4", "id" => "N-GZ_mZLq40", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=N-GZ_mZLq40", "playlist_index" => 90, "timestamp" => 1739271686, "title" => "The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation", "upload_date" => "20250211"} 22:56:10.337 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=162.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" IN (?)) [5] 22:56:10.338 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=162.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" = ?) [5] 22:56:10.340 [debug] QUERY OK source="media_items" db=1.1ms idle=162.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-02-11 11:01:26Z], 5] 22:56:10.348 [debug] QUERY OK source="media_items" db=7.6ms idle=164.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grocery Store Racketeer | S02E50\r\n00:03:27 | Ladybugland | S02E62\r\n00:06:47 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Grocery #Spider #Bullying #Revenge #ladybug #spider #toys #danger #Minuscule #nature #insects #ladybugs #animatedseries", "The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation", "65531878-3751-4823-82ca-eb01b780891a", "https://www.youtube.com/watch?v=N-GZ_mZLq40", "N-GZ_mZLq40", 657, false, 90, "/downloads/Miniscule Season 2/2025-02-11 The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation/The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation [N-GZ_mZLq40].mp4", false, false, false, 5, [], 1, ~U[2025-02-11 11:01:26Z], ~U[2026-01-30 05:56:10Z], ~U[2026-01-30 05:56:10Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grocery Store Racketeer | S02E50\r\n00:03:27 | Ladybugland | S02E62\r\n00:06:47 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Grocery #Spider #Bullying #Revenge #ladybug #spider #toys #danger #Minuscule #nature #insects #ladybugs #animatedseries", "The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=N-GZ_mZLq40", "N-GZ_mZLq40", 657, false, "/downloads/Miniscule Season 2/2025-02-11 The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation/The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation [N-GZ_mZLq40].mp4", false, 5, ~U[2025-02-11 11:01:26Z]] 22:56:10.349 [debug] QUERY OK source="sources" db=0.4ms idle=172.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" = ?) [5] 22:56:10.350 [debug] QUERY OK source="media_profiles" db=0.5ms queue=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] 22:56:10.351 [debug] QUERY OK source="media_items" db=0.6ms idle=12.5ms 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 [89060] 22:56:10.352 [debug] Current batch of media processed. Will check again in 1000ms 22:56:11.353 [debug] Current batch of media processed. Will check again in 1000ms 22:56:12.354 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Spider Driver | S02E36\n00:04:12 | The Stubborn Spider | S02E04\n00:07:57 | A Pathetic She'Nut'Igan | S02E12\n00:11:43 | Spider from the Depths | S02E31\n00:15:18 | High voltage | S02E30\n00:18:52 | Microzilla | S02E07\n00:22:38 | Refrigerated | S02E65\n00:26:04 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #stubborn #determination #house #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 1802, "filename" => "/downloads/Miniscule Season 2/2025-01-22 Spider Driver 🕷️ Minuscule 🚗 30' Compilation/Spider Driver 🕷️ Minuscule 🚗 30' Compilation [Q5_qB6zaOk4].mp4", "id" => "Q5_qB6zaOk4", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Q5_qB6zaOk4", "playlist_index" => 91, "timestamp" => 1737545429, "title" => "Spider Driver 🕷️ Minuscule 🚗 30' Compilation", "upload_date" => "20250122"} 22:56:12.355 [debug] QUERY OK source="sources" db=0.4ms idle=880.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 (?)) [5] 22:56:12.356 [debug] QUERY OK source="sources" db=0.2ms idle=881.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" = ?) [5] 22:56:12.357 [debug] QUERY OK source="media_items" db=0.8ms idle=882.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-01-22 11:30:29Z], 5] 22:56:12.384 [debug] QUERY OK source="media_items" db=26.7ms idle=209.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Spider Driver | S02E36\n00:04:12 | The Stubborn Spider | S02E04\n00:07:57 | A Pathetic She'Nut'Igan | S02E12\n00:11:43 | Spider from the Depths | S02E31\n00:15:18 | High voltage | S02E30\n00:18:52 | Microzilla | S02E07\n00:22:38 | Refrigerated | S02E65\n00:26:04 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #stubborn #determination #house #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver 🕷️ Minuscule 🚗 30' Compilation", "925615fe-011d-4ddf-8994-59d1ec6b7d43", "https://www.youtube.com/watch?v=Q5_qB6zaOk4", "Q5_qB6zaOk4", 1802, false, 91, "/downloads/Miniscule Season 2/2025-01-22 Spider Driver 🕷️ Minuscule 🚗 30' Compilation/Spider Driver 🕷️ Minuscule 🚗 30' Compilation [Q5_qB6zaOk4].mp4", false, false, false, 5, [], 1, ~U[2025-01-22 11:30:29Z], ~U[2026-01-30 05:56:12Z], ~U[2026-01-30 05:56:12Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Spider Driver | S02E36\n00:04:12 | The Stubborn Spider | S02E04\n00:07:57 | A Pathetic She'Nut'Igan | S02E12\n00:11:43 | Spider from the Depths | S02E31\n00:15:18 | High voltage | S02E30\n00:18:52 | Microzilla | S02E07\n00:22:38 | Refrigerated | S02E65\n00:26:04 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #stubborn #determination #house #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver 🕷️ Minuscule 🚗 30' Compilation", "https://www.youtube.com/watch?v=Q5_qB6zaOk4", "Q5_qB6zaOk4", 1802, false, "/downloads/Miniscule Season 2/2025-01-22 Spider Driver 🕷️ Minuscule 🚗 30' Compilation/Spider Driver 🕷️ Minuscule 🚗 30' Compilation [Q5_qB6zaOk4].mp4", false, 5, ~U[2025-01-22 11:30:29Z]] 22:56:12.385 [debug] QUERY OK source="sources" db=0.3ms idle=230.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" = ?) [5] 22:56:12.385 [debug] QUERY OK source="media_profiles" db=0.3ms idle=30.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] 22:56:12.386 [debug] QUERY OK source="media_items" db=0.4ms idle=30.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 [89062] 22:56:12.386 [debug] Current batch of media processed. Will check again in 1000ms 22:56:13.388 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 181, "filename" => "/downloads/Miniscule Season 2/2020-08-13 Minuscule - Le Beignet⧸The Doughnut (Season 2)/Minuscule - Le Beignet⧸The Doughnut (Season 2) [6-qwLEqPqwQ].mp4", "id" => "6-qwLEqPqwQ", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=6-qwLEqPqwQ", "playlist_index" => 92, "timestamp" => 1597329000, "title" => "Minuscule - Le Beignet/The Doughnut (Season 2)", "upload_date" => "20200813"} 22:56:13.389 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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 (?)) [5] 22:56:13.390 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:56:13.391 [debug] QUERY OK source="media_items" db=0.9ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-08-13 14:30:00Z], 5] 22:56:13.394 [debug] QUERY OK source="media_items" db=2.1ms idle=241.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Le Beignet/The Doughnut (Season 2)", "dc3409da-b5f3-4965-adb2-f43cc34c0b20", "https://www.youtube.com/watch?v=6-qwLEqPqwQ", "6-qwLEqPqwQ", 181, false, 92, "/downloads/Miniscule Season 2/2020-08-13 Minuscule - Le Beignet⧸The Doughnut (Season 2)/Minuscule - Le Beignet⧸The Doughnut (Season 2) [6-qwLEqPqwQ].mp4", false, false, false, 5, [], 1, ~U[2020-08-13 14:30:00Z], ~U[2026-01-30 05:56:13Z], ~U[2026-01-30 05:56:13Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Le Beignet/The Doughnut (Season 2)", "https://www.youtube.com/watch?v=6-qwLEqPqwQ", "6-qwLEqPqwQ", 181, false, "/downloads/Miniscule Season 2/2020-08-13 Minuscule - Le Beignet⧸The Doughnut (Season 2)/Minuscule - Le Beignet⧸The Doughnut (Season 2) [6-qwLEqPqwQ].mp4", false, 5, ~U[2020-08-13 14:30:00Z]] 22:56:13.395 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=237.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" = ?) [5] 22:56:13.396 [debug] QUERY OK source="media_profiles" db=0.4ms idle=6.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] 22:56:13.397 [debug] QUERY OK source="media_items" db=0.4ms idle=6.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 [89064] 22:56:13.397 [debug] Current batch of media processed. Will check again in 1000ms 22:56:13.635 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/6e/34/6e3477ed93c290cad2e2cacba1ba98586ad1fb4058dda265f46822c923910794.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 22:56:13.635 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 22:56:13.636 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":3486710,"event":"job:exception","queue_time":513053,"attempt":2,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:56:14.398 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nTwo spiders are craving the same prey: a fat fly, lying unconscious on the surface of a pool. The booty will go to the spider that can reach the fly before it wakes up, and without getting wet of course.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 263, "filename" => "/downloads/Miniscule Season 2/2020-08-06 Minuscule - Spider from the dephts ⧸ Araignée des abysses (Season 2)/Minuscule - Spider from the dephts ⧸ Araignée des abysses (Season 2) [1804_xlIy08].mp4", "id" => "1804_xlIy08", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=1804_xlIy08", "playlist_index" => 93, "timestamp" => 1596724200, "title" => "Minuscule - Spider from the dephts / Araignée des abysses (Season 2)", "upload_date" => "20200806"} 22:56:14.399 [debug] QUERY OK source="sources" db=0.4ms idle=1001.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" IN (?)) [5] 22:56:14.400 [debug] QUERY OK source="sources" db=0.5ms idle=763.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" = ?) [5] 22:56:14.402 [debug] QUERY OK source="media_items" db=1.0ms idle=756.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-08-06 14:30:00Z], 5] 22:56:14.443 [debug] QUERY OK source="media_items" db=39.9ms idle=250.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nTwo spiders are craving the same prey: a fat fly, lying unconscious on the surface of a pool. The booty will go to the spider that can reach the fly before it wakes up, and without getting wet of course.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Spider from the dephts / Araignée des abysses (Season 2)", "5e67739f-368c-4d99-9fc1-23ada8e040be", "https://www.youtube.com/watch?v=1804_xlIy08", "1804_xlIy08", 263, false, 93, "/downloads/Miniscule Season 2/2020-08-06 Minuscule - Spider from the dephts ⧸ Araignée des abysses (Season 2)/Minuscule - Spider from the dephts ⧸ Araignée des abysses (Season 2) [1804_xlIy08].mp4", false, false, false, 5, [], 1, ~U[2020-08-06 14:30:00Z], ~U[2026-01-30 05:56:14Z], ~U[2026-01-30 05:56:14Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nTwo spiders are craving the same prey: a fat fly, lying unconscious on the surface of a pool. The booty will go to the spider that can reach the fly before it wakes up, and without getting wet of course.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Spider from the dephts / Araignée des abysses (Season 2)", "https://www.youtube.com/watch?v=1804_xlIy08", "1804_xlIy08", 263, false, "/downloads/Miniscule Season 2/2020-08-06 Minuscule - Spider from the dephts ⧸ Araignée des abysses (Season 2)/Minuscule - Spider from the dephts ⧸ Araignée des abysses (Season 2) [1804_xlIy08].mp4", false, 5, ~U[2020-08-06 14:30:00Z]] 22:56:14.444 [debug] QUERY OK source="sources" db=0.6ms queue=0.2ms idle=284.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" = ?) [5] 22:56:14.444 [debug] QUERY OK source="media_profiles" db=0.3ms idle=45.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] 22:56:14.445 [debug] QUERY OK source="media_items" db=0.4ms idle=44.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 [89066] 22:56:14.446 [debug] Current batch of media processed. Will check again in 1000ms 22:56:15.447 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nSaved by the providential fall of a tiny egg, a mother ladybug adopts it. When it hatches, she realises it contains a little caterpillar.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 294, "filename" => "/downloads/Miniscule Season 2/2020-07-30 Minuscule - The wing case ⧸ Sans élytres (Season 2)/Minuscule - The wing case ⧸ Sans élytres (Season 2) [bO_HhX6Sp08].mkv", "id" => "bO_HhX6Sp08", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=bO_HhX6Sp08", "playlist_index" => 94, "timestamp" => 1596119408, "title" => "Minuscule - The wing case / Sans élytres (Season 2)", "upload_date" => "20200730"} 22:56:15.448 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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 (?)) [5] 22:56:15.448 [debug] QUERY OK source="sources" db=0.2ms idle=1003.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" = ?) [5] 22:56:15.449 [debug] QUERY OK source="media_items" db=0.9ms idle=1003.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-07-30 14:30:08Z], 5] 22:56:15.453 [debug] QUERY OK source="media_items" db=2.8ms idle=295.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nSaved by the providential fall of a tiny egg, a mother ladybug adopts it. When it hatches, she realises it contains a little caterpillar.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The wing case / Sans élytres (Season 2)", "9754961f-be6e-4e76-903d-f6a3c72189fa", "https://www.youtube.com/watch?v=bO_HhX6Sp08", "bO_HhX6Sp08", 294, false, 94, "/downloads/Miniscule Season 2/2020-07-30 Minuscule - The wing case ⧸ Sans élytres (Season 2)/Minuscule - The wing case ⧸ Sans élytres (Season 2) [bO_HhX6Sp08].mkv", false, false, false, 5, [], 1, ~U[2020-07-30 14:30:08Z], ~U[2026-01-30 05:56:15Z], ~U[2026-01-30 05:56:15Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nSaved by the providential fall of a tiny egg, a mother ladybug adopts it. When it hatches, she realises it contains a little caterpillar.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The wing case / Sans élytres (Season 2)", "https://www.youtube.com/watch?v=bO_HhX6Sp08", "bO_HhX6Sp08", 294, false, "/downloads/Miniscule Season 2/2020-07-30 Minuscule - The wing case ⧸ Sans élytres (Season 2)/Minuscule - The wing case ⧸ Sans élytres (Season 2) [bO_HhX6Sp08].mkv", false, 5, ~U[2020-07-30 14:30:08Z]] 22:56:15.454 [debug] QUERY OK source="sources" db=0.4ms idle=291.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" = ?) [5] 22:56:15.455 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=6.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] 22:56:15.455 [debug] QUERY OK source="media_items" db=0.3ms idle=6.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 [89068] 22:56:15.456 [debug] Current batch of media processed. Will check again in 1000ms 22:56:15.863 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:16.457 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 294, "filename" => "/downloads/Miniscule Season 2/2020-07-23 Minuscule - The stubborn spider ⧸ Têtue (Season 2)/Minuscule - The stubborn spider ⧸ Têtue (Season 2) [oHMkCoPqJHs].mkv", "id" => "oHMkCoPqJHs", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=oHMkCoPqJHs", "playlist_index" => 95, "timestamp" => 1595514610, "title" => "Minuscule - The stubborn spider / Têtue (Season 2)", "upload_date" => "20200723"} 22:56:16.458 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1002.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 (?)) [5] 22:56:16.459 [debug] QUERY OK source="sources" db=0.3ms idle=1002.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" = ?) [5] 22:56:16.461 [debug] QUERY OK source="media_items" db=1.3ms queue=0.1ms idle=596.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-07-23 14:30:10Z], 5] 22:56:16.464 [debug] QUERY OK source="media_items" db=2.1ms idle=303.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The stubborn spider / Têtue (Season 2)", "ced72a72-3c5e-4778-902f-9be33561174b", "https://www.youtube.com/watch?v=oHMkCoPqJHs", "oHMkCoPqJHs", 294, false, 95, "/downloads/Miniscule Season 2/2020-07-23 Minuscule - The stubborn spider ⧸ Têtue (Season 2)/Minuscule - The stubborn spider ⧸ Têtue (Season 2) [oHMkCoPqJHs].mkv", false, false, false, 5, [], 1, ~U[2020-07-23 14:30:10Z], ~U[2026-01-30 05:56:16Z], ~U[2026-01-30 05:56:16Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The stubborn spider / Têtue (Season 2)", "https://www.youtube.com/watch?v=oHMkCoPqJHs", "oHMkCoPqJHs", 294, false, "/downloads/Miniscule Season 2/2020-07-23 Minuscule - The stubborn spider ⧸ Têtue (Season 2)/Minuscule - The stubborn spider ⧸ Têtue (Season 2) [oHMkCoPqJHs].mkv", false, 5, ~U[2020-07-23 14:30:10Z]] 22:56:16.465 [debug] QUERY OK source="sources" db=0.6ms idle=299.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" = ?) [5] 22:56:16.466 [debug] QUERY OK source="media_profiles" db=0.6ms queue=0.1ms idle=6.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] 22:56:16.467 [debug] QUERY OK source="media_items" db=0.7ms idle=7.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 [89070] 22:56:16.467 [debug] Current batch of media processed. Will check again in 1000ms 22:56:17.468 [debug] Current batch of media processed. Will check again in 1000ms 22:56:18.469 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 294, "filename" => "/downloads/Miniscule Season 2/2020-07-14 Minuscule - An acorns season ⧸ La saison des glands (Season 2)/Minuscule - An acorns season ⧸ La saison des glands (Season 2) [1lhjwbQQ5K8].mp4", "id" => "1lhjwbQQ5K8", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=1lhjwbQQ5K8", "playlist_index" => 96, "timestamp" => 1594737000, "title" => "Minuscule - An acorns season / La saison des glands (Season 2)", "upload_date" => "20200714"} 22:56:18.470 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=995.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" IN (?)) [5] 22:56:18.471 [debug] QUERY OK source="sources" db=0.3ms idle=996.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" = ?) [5] 22:56:18.473 [debug] QUERY OK source="media_items" db=1.2ms idle=997.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-07-14 14:30:00Z], 5] 22:56:18.476 [debug] QUERY OK source="media_items" db=2.1ms queue=0.1ms idle=312.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - An acorns season / La saison des glands (Season 2)", "c2c31b79-8ca8-4931-b5f8-955ff2ce500e", "https://www.youtube.com/watch?v=1lhjwbQQ5K8", "1lhjwbQQ5K8", 294, false, 96, "/downloads/Miniscule Season 2/2020-07-14 Minuscule - An acorns season ⧸ La saison des glands (Season 2)/Minuscule - An acorns season ⧸ La saison des glands (Season 2) [1lhjwbQQ5K8].mp4", false, false, false, 5, [], 1, ~U[2020-07-14 14:30:00Z], ~U[2026-01-30 05:56:18Z], ~U[2026-01-30 05:56:18Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - An acorns season / La saison des glands (Season 2)", "https://www.youtube.com/watch?v=1lhjwbQQ5K8", "1lhjwbQQ5K8", 294, false, "/downloads/Miniscule Season 2/2020-07-14 Minuscule - An acorns season ⧸ La saison des glands (Season 2)/Minuscule - An acorns season ⧸ La saison des glands (Season 2) [1lhjwbQQ5K8].mp4", false, 5, ~U[2020-07-14 14:30:00Z]] 22:56:18.477 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=308.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" = ?) [5] 22:56:18.477 [debug] QUERY OK source="media_profiles" db=0.4ms idle=6.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] 22:56:18.478 [debug] QUERY OK source="media_items" db=0.5ms idle=6.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 [89072] 22:56:18.478 [debug] Current batch of media processed. Will check again in 1000ms 22:56:19.480 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA caterpillar finds refuge inside a pumpkin. The other farmhouse insects are not too pleased with the new tenant until the farmer takes away all the apples and potatoes, leaving them homeless.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 296, "filename" => "/downloads/Miniscule Season 2/2020-07-09 Minuscule - Homeless ⧸ Sans abri (Season 2)/Minuscule - Homeless ⧸ Sans abri (Season 2) [Uoa0_J8qVcU].mp4", "id" => "Uoa0_J8qVcU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Uoa0_J8qVcU", "playlist_index" => 97, "timestamp" => 1594305001, "title" => "Minuscule - Homeless / Sans abri (Season 2)", "upload_date" => "20200709"} 22:56:19.481 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:19.482 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:56:19.483 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-07-09 14:30:01Z], 5] 22:56:19.500 [debug] QUERY OK source="media_items" db=16.0ms idle=320.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA caterpillar finds refuge inside a pumpkin. The other farmhouse insects are not too pleased with the new tenant until the farmer takes away all the apples and potatoes, leaving them homeless.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Homeless / Sans abri (Season 2)", "d7113430-18a1-4ec9-bcef-5aed8869c217", "https://www.youtube.com/watch?v=Uoa0_J8qVcU", "Uoa0_J8qVcU", 296, false, 97, "/downloads/Miniscule Season 2/2020-07-09 Minuscule - Homeless ⧸ Sans abri (Season 2)/Minuscule - Homeless ⧸ Sans abri (Season 2) [Uoa0_J8qVcU].mp4", false, false, false, 5, [], 1, ~U[2020-07-09 14:30:01Z], ~U[2026-01-30 05:56:19Z], ~U[2026-01-30 05:56:19Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA caterpillar finds refuge inside a pumpkin. The other farmhouse insects are not too pleased with the new tenant until the farmer takes away all the apples and potatoes, leaving them homeless.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Homeless / Sans abri (Season 2)", "https://www.youtube.com/watch?v=Uoa0_J8qVcU", "Uoa0_J8qVcU", 296, false, "/downloads/Miniscule Season 2/2020-07-09 Minuscule - Homeless ⧸ Sans abri (Season 2)/Minuscule - Homeless ⧸ Sans abri (Season 2) [Uoa0_J8qVcU].mp4", false, 5, ~U[2020-07-09 14:30:01Z]] 22:56:19.501 [debug] QUERY OK source="sources" db=0.3ms idle=329.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" = ?) [5] 22:56:19.502 [debug] QUERY OK source="media_profiles" db=0.5ms idle=20.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] 22:56:19.503 [debug] QUERY OK source="media_items" db=0.6ms idle=20.5ms 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 [89074] 22:56:19.503 [debug] Current batch of media processed. Will check again in 1000ms 22:56:20.504 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 294, "filename" => "/downloads/Miniscule Season 2/2020-06-30 Minuscule - Thievish as a magpie ⧸ Pie voleuse (Season 2)/Minuscule - Thievish as a magpie ⧸ Pie voleuse (Season 2) [-XlXZUgUMV0].mp4", "id" => "-XlXZUgUMV0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=-XlXZUgUMV0", "playlist_index" => 98, "timestamp" => 1593527401, "title" => "Minuscule - Thievish as a magpie / Pie voleuse (Season 2)", "upload_date" => "20200630"} 22:56:20.505 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:20.506 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:56:20.507 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-06-30 14:30:01Z], 5] 22:56:20.510 [debug] QUERY OK source="media_items" db=2.0ms idle=341.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Thievish as a magpie / Pie voleuse (Season 2)", "d1e95289-d932-4a36-8a1e-434597773bd1", "https://www.youtube.com/watch?v=-XlXZUgUMV0", "-XlXZUgUMV0", 294, false, 98, "/downloads/Miniscule Season 2/2020-06-30 Minuscule - Thievish as a magpie ⧸ Pie voleuse (Season 2)/Minuscule - Thievish as a magpie ⧸ Pie voleuse (Season 2) [-XlXZUgUMV0].mp4", false, false, false, 5, [], 1, ~U[2020-06-30 14:30:01Z], ~U[2026-01-30 05:56:20Z], ~U[2026-01-30 05:56:20Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Thievish as a magpie / Pie voleuse (Season 2)", "https://www.youtube.com/watch?v=-XlXZUgUMV0", "-XlXZUgUMV0", 294, false, "/downloads/Miniscule Season 2/2020-06-30 Minuscule - Thievish as a magpie ⧸ Pie voleuse (Season 2)/Minuscule - Thievish as a magpie ⧸ Pie voleuse (Season 2) [-XlXZUgUMV0].mp4", false, 5, ~U[2020-06-30 14:30:01Z]] 22:56:20.511 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=338.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" = ?) [5] 22:56:20.512 [debug] QUERY OK source="media_profiles" db=0.5ms idle=6.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] 22:56:20.513 [debug] QUERY OK source="media_items" db=0.5ms idle=6.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 [89076] 22:56:20.513 [debug] Current batch of media processed. Will check again in 1000ms 22:56:21.515 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn a kitchen garden, a gardener wages a merciless war against a snail's gang which, when the night comes, goes out and eats his salads.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 294, "filename" => "/downloads/Miniscule Season 2/2020-06-23 Minuscule - Night of the gastropods ⧸ La nuit des gastéropodes (Season 2)/Minuscule - Night of the gastropods ⧸ La nuit des gastéropodes (Season 2) [cBDjUa2ayDw].mp4", "id" => "cBDjUa2ayDw", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=cBDjUa2ayDw", "playlist_index" => 99, "timestamp" => 1592922604, "title" => "Minuscule - Night of the gastropods / La nuit des gastéropodes (Season 2)", "upload_date" => "20200623"} 22:56:21.516 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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 (?)) [5] 22:56:21.517 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:56:21.518 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-06-23 14:30:04Z], 5] 22:56:21.555 [debug] QUERY OK source="media_items" db=35.7ms idle=350.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn a kitchen garden, a gardener wages a merciless war against a snail's gang which, when the night comes, goes out and eats his salads.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Night of the gastropods / La nuit des gastéropodes (Season 2)", "5fdab766-8165-42f9-adb6-c821e3b0ff13", "https://www.youtube.com/watch?v=cBDjUa2ayDw", "cBDjUa2ayDw", 294, false, 99, "/downloads/Miniscule Season 2/2020-06-23 Minuscule - Night of the gastropods ⧸ La nuit des gastéropodes (Season 2)/Minuscule - Night of the gastropods ⧸ La nuit des gastéropodes (Season 2) [cBDjUa2ayDw].mp4", false, false, false, 5, [], 1, ~U[2020-06-23 14:30:04Z], ~U[2026-01-30 05:56:21Z], ~U[2026-01-30 05:56:21Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn a kitchen garden, a gardener wages a merciless war against a snail's gang which, when the night comes, goes out and eats his salads.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Night of the gastropods / La nuit des gastéropodes (Season 2)", "https://www.youtube.com/watch?v=cBDjUa2ayDw", "cBDjUa2ayDw", 294, false, "/downloads/Miniscule Season 2/2020-06-23 Minuscule - Night of the gastropods ⧸ La nuit des gastéropodes (Season 2)/Minuscule - Night of the gastropods ⧸ La nuit des gastéropodes (Season 2) [cBDjUa2ayDw].mp4", false, 5, ~U[2020-06-23 14:30:04Z]] 22:56:21.556 [debug] QUERY OK source="sources" db=0.4ms idle=379.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" = ?) [5] 22:56:21.557 [debug] QUERY OK source="media_profiles" db=0.3ms idle=40.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] 22:56:21.558 [debug] QUERY OK source="media_items" db=0.5ms idle=40.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 [89077] 22:56:21.558 [debug] Current batch of media processed. Will check again in 1000ms 22:56:22.559 [debug] Current batch of media processed. Will check again in 1000ms 22:56:23.560 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA grasshopper who's just had babies hurries to teach them the most important lesson of all: how to leap properly. But one of the babies is unable to hop and ends up an outcast.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 294, "filename" => "/downloads/Miniscule Season 2/2020-06-18 Minuscule - The grasshopper who didn't ⧸ La sauterelle qui ne savait pas sauter (Season 2)/Minuscule - The grasshopper who didn't ⧸ La sauterelle qui ne savait pas sauter (Season 2) [7yponB6dwxg].mp4", "id" => "7yponB6dwxg", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=7yponB6dwxg", "playlist_index" => 100, "timestamp" => 1592490600, "title" => "Minuscule - The grasshopper who didn't / La sauterelle qui ne savait pas sauter (Season 2)", "upload_date" => "20200618"} 22:56:23.561 [debug] QUERY OK source="sources" db=0.3ms idle=387.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" IN (?)) [5] 22:56:23.562 [debug] QUERY OK source="sources" db=0.3ms idle=381.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" = ?) [5] 22:56:23.563 [debug] QUERY OK source="media_items" db=1.1ms queue=0.1ms idle=88.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-06-18 14:30:00Z], 5] 22:56:24.598 [debug] QUERY OK source="media_items" db=1033.4ms idle=90.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA grasshopper who's just had babies hurries to teach them the most important lesson of all: how to leap properly. But one of the babies is unable to hop and ends up an outcast.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The grasshopper who didn't / La sauterelle qui ne savait pas sauter (Season 2)", "1b96cec4-6bc4-42ab-a273-140227394817", "https://www.youtube.com/watch?v=7yponB6dwxg", "7yponB6dwxg", 294, false, 100, "/downloads/Miniscule Season 2/2020-06-18 Minuscule - The grasshopper who didn't ⧸ La sauterelle qui ne savait pas sauter (Season 2)/Minuscule - The grasshopper who didn't ⧸ La sauterelle qui ne savait pas sauter (Season 2) [7yponB6dwxg].mp4", false, false, false, 5, [], 1, ~U[2020-06-18 14:30:00Z], ~U[2026-01-30 05:56:23Z], ~U[2026-01-30 05:56:23Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA grasshopper who's just had babies hurries to teach them the most important lesson of all: how to leap properly. But one of the babies is unable to hop and ends up an outcast.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The grasshopper who didn't / La sauterelle qui ne savait pas sauter (Season 2)", "https://www.youtube.com/watch?v=7yponB6dwxg", "7yponB6dwxg", 294, false, "/downloads/Miniscule Season 2/2020-06-18 Minuscule - The grasshopper who didn't ⧸ La sauterelle qui ne savait pas sauter (Season 2)/Minuscule - The grasshopper who didn't ⧸ La sauterelle qui ne savait pas sauter (Season 2) [7yponB6dwxg].mp4", false, 5, ~U[2020-06-18 14:30:00Z]] 22:56:24.599 [debug] QUERY OK source="sources" db=0.4ms idle=1036.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" = ?) [5] 22:56:24.599 [debug] QUERY OK source="media_profiles" db=0.5ms idle=1035.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] 22:56:24.600 [debug] QUERY OK source="media_items" db=0.6ms idle=424.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 [89079] 22:56:24.601 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA spider weaves webs to catch a fly but it always gets through the threads. How will the spider finally catch the fly?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2020-06-11 Minuscule - The wicked web ⧸ La toile infernale (Season 2)/Minuscule - The wicked web ⧸ La toile infernale (Season 2) [stZl27m_rAs].mp4", "id" => "stZl27m_rAs", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=stZl27m_rAs", "playlist_index" => 101, "timestamp" => 1591885810, "title" => "Minuscule - The wicked web / La toile infernale (Season 2)", "upload_date" => "20200611"} 22:56:24.602 [debug] QUERY OK source="sources" db=0.5ms idle=419.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" IN (?)) [5] 22:56:24.603 [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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:56:24.604 [debug] QUERY OK source="media_items" db=1.1ms idle=4.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-06-11 14:30:10Z], 5] 22:56:24.681 [debug] QUERY OK source="media_items" db=75.9ms idle=5.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA spider weaves webs to catch a fly but it always gets through the threads. How will the spider finally catch the fly?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The wicked web / La toile infernale (Season 2)", "085c275d-6953-476c-a0f4-0695fff110c4", "https://www.youtube.com/watch?v=stZl27m_rAs", "stZl27m_rAs", 119, false, 101, "/downloads/Miniscule Season 2/2020-06-11 Minuscule - The wicked web ⧸ La toile infernale (Season 2)/Minuscule - The wicked web ⧸ La toile infernale (Season 2) [stZl27m_rAs].mp4", false, false, false, 5, [], 1, ~U[2020-06-11 14:30:10Z], ~U[2026-01-30 05:56:24Z], ~U[2026-01-30 05:56:24Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA spider weaves webs to catch a fly but it always gets through the threads. How will the spider finally catch the fly?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The wicked web / La toile infernale (Season 2)", "https://www.youtube.com/watch?v=stZl27m_rAs", "stZl27m_rAs", 119, false, "/downloads/Miniscule Season 2/2020-06-11 Minuscule - The wicked web ⧸ La toile infernale (Season 2)/Minuscule - The wicked web ⧸ La toile infernale (Season 2) [stZl27m_rAs].mp4", false, 5, ~U[2020-06-11 14:30:10Z]] 22:56:24.682 [debug] QUERY OK source="sources" db=0.4ms idle=81.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" = ?) [5] 22:56:24.683 [debug] QUERY OK source="media_profiles" db=0.3ms idle=80.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] 22:56:24.684 [debug] QUERY OK source="media_items" db=0.7ms idle=80.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 [89081] 22:56:24.685 [debug] Current batch of media processed. Will check again in 1000ms 22:56:25.686 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 111, "filename" => "/downloads/Miniscule Season 2/2020-06-04 Minuscule - At full speed ⧸ A pleine vitesse (Season 2)/Minuscule - At full speed ⧸ A pleine vitesse (Season 2) [j1ZKKf2vKuI].mp4", "id" => "j1ZKKf2vKuI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=j1ZKKf2vKuI", "playlist_index" => 102, "timestamp" => 1591281003, "title" => "Minuscule - At full speed / A pleine vitesse (Season 2)", "upload_date" => "20200604"} 22:56:25.687 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" IN (?)) [5] 22:56:25.688 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:56:25.689 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-06-04 14:30:03Z], 5] 22:56:25.693 [debug] QUERY OK source="media_items" db=2.2ms idle=511.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - At full speed / A pleine vitesse (Season 2)", "3398e53a-4faf-4d8d-9b04-4aae76f385ce", "https://www.youtube.com/watch?v=j1ZKKf2vKuI", "j1ZKKf2vKuI", 111, false, 102, "/downloads/Miniscule Season 2/2020-06-04 Minuscule - At full speed ⧸ A pleine vitesse (Season 2)/Minuscule - At full speed ⧸ A pleine vitesse (Season 2) [j1ZKKf2vKuI].mp4", false, false, false, 5, [], 1, ~U[2020-06-04 14:30:03Z], ~U[2026-01-30 05:56:25Z], ~U[2026-01-30 05:56:25Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - At full speed / A pleine vitesse (Season 2)", "https://www.youtube.com/watch?v=j1ZKKf2vKuI", "j1ZKKf2vKuI", 111, false, "/downloads/Miniscule Season 2/2020-06-04 Minuscule - At full speed ⧸ A pleine vitesse (Season 2)/Minuscule - At full speed ⧸ A pleine vitesse (Season 2) [j1ZKKf2vKuI].mp4", false, 5, ~U[2020-06-04 14:30:03Z]] 22:56:25.693 [debug] QUERY OK source="sources" db=0.4ms idle=507.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" = ?) [5] 22:56:25.694 [debug] QUERY OK source="media_profiles" db=0.4ms idle=6.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] 22:56:25.695 [debug] QUERY OK source="media_items" db=0.5ms 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 [89083] 22:56:25.696 [debug] Current batch of media processed. Will check again in 1000ms 22:56:26.697 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA fly enjoying a chocolate dessert is distracted from a spider that has eyes for this easy prey.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2020-05-28 Minuscule - Chocolate fly ⧸ Mouche au chocolat (Season 2)/Minuscule - Chocolate fly ⧸ Mouche au chocolat (Season 2) [zt7IK3-i-Rc].mp4", "id" => "zt7IK3-i-Rc", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=zt7IK3-i-Rc", "playlist_index" => 103, "timestamp" => 1590676207, "title" => "Minuscule - Chocolate fly / Mouche au chocolat (Season 2)", "upload_date" => "20200528"} 22:56:26.698 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:26.699 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=1004.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" = ?) [5] 22:56:26.701 [debug] QUERY OK source="media_items" db=1.1ms idle=1004.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-05-28 14:30:07Z], 5] 22:56:26.705 [debug] QUERY OK source="media_items" db=2.7ms idle=519.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA fly enjoying a chocolate dessert is distracted from a spider that has eyes for this easy prey.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Chocolate fly / Mouche au chocolat (Season 2)", "fee27b1a-db1d-41f4-b44a-8812b2b69897", "https://www.youtube.com/watch?v=zt7IK3-i-Rc", "zt7IK3-i-Rc", 119, false, 103, "/downloads/Miniscule Season 2/2020-05-28 Minuscule - Chocolate fly ⧸ Mouche au chocolat (Season 2)/Minuscule - Chocolate fly ⧸ Mouche au chocolat (Season 2) [zt7IK3-i-Rc].mp4", false, false, false, 5, [], 1, ~U[2020-05-28 14:30:07Z], ~U[2026-01-30 05:56:26Z], ~U[2026-01-30 05:56:26Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA fly enjoying a chocolate dessert is distracted from a spider that has eyes for this easy prey.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Chocolate fly / Mouche au chocolat (Season 2)", "https://www.youtube.com/watch?v=zt7IK3-i-Rc", "zt7IK3-i-Rc", 119, false, "/downloads/Miniscule Season 2/2020-05-28 Minuscule - Chocolate fly ⧸ Mouche au chocolat (Season 2)/Minuscule - Chocolate fly ⧸ Mouche au chocolat (Season 2) [zt7IK3-i-Rc].mp4", false, 5, ~U[2020-05-28 14:30:07Z]] 22:56:26.705 [debug] QUERY OK source="sources" db=0.4ms idle=516.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" = ?) [5] 22:56:26.706 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=7.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] 22:56:26.707 [debug] QUERY OK source="media_items" db=0.5ms idle=7.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 [89085] 22:56:26.707 [debug] Current batch of media processed. Will check again in 1000ms 22:56:27.708 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 293, "filename" => "/downloads/Miniscule Season 2/2020-05-21 Minuscule - The vegetable garden ⧸ Topinambourg (Season 2)/Minuscule - The vegetable garden ⧸ Topinambourg (Season 2) [BnUtsMMfjWU].mp4", "id" => "BnUtsMMfjWU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=BnUtsMMfjWU", "playlist_index" => 104, "timestamp" => 1590071403, "title" => "Minuscule - The vegetable garden / Topinambourg (Season 2)", "upload_date" => "20200521"} 22:56:27.709 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:27.710 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:56:27.712 [debug] QUERY OK source="media_items" db=1.2ms queue=0.1ms idle=1003.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-05-21 14:30:03Z], 5] 22:56:27.715 [debug] QUERY OK source="media_items" db=2.0ms idle=527.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The vegetable garden / Topinambourg (Season 2)", "a8ebd1a6-8833-471e-bd9f-7c52e7d75b35", "https://www.youtube.com/watch?v=BnUtsMMfjWU", "BnUtsMMfjWU", 293, false, 104, "/downloads/Miniscule Season 2/2020-05-21 Minuscule - The vegetable garden ⧸ Topinambourg (Season 2)/Minuscule - The vegetable garden ⧸ Topinambourg (Season 2) [BnUtsMMfjWU].mp4", false, false, false, 5, [], 1, ~U[2020-05-21 14:30:03Z], ~U[2026-01-30 05:56:27Z], ~U[2026-01-30 05:56:27Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The vegetable garden / Topinambourg (Season 2)", "https://www.youtube.com/watch?v=BnUtsMMfjWU", "BnUtsMMfjWU", 293, false, "/downloads/Miniscule Season 2/2020-05-21 Minuscule - The vegetable garden ⧸ Topinambourg (Season 2)/Minuscule - The vegetable garden ⧸ Topinambourg (Season 2) [BnUtsMMfjWU].mp4", false, 5, ~U[2020-05-21 14:30:03Z]] 22:56:27.715 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=523.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" = ?) [5] 22:56:27.716 [debug] QUERY OK source="media_profiles" db=0.4ms 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] 22:56:27.717 [debug] QUERY OK source="media_items" db=0.6ms idle=6.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 [89087] 22:56:27.717 [debug] Current batch of media processed. Will check again in 1000ms 22:56:28.719 [debug] Current batch of media processed. Will check again in 1000ms 22:56:29.720 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA small black spider does its best to imitate another spider in web building.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 130, "filename" => "/downloads/Miniscule Season 2/2020-05-14 Minuscule - Blunder ⧸ La boulette (Season 2)/Minuscule - Blunder ⧸ La boulette (Season 2) [78uO6wF20Ig].mp4", "id" => "78uO6wF20Ig", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=78uO6wF20Ig", "playlist_index" => 105, "timestamp" => 1589466600, "title" => "Minuscule - Blunder / La boulette (Season 2)", "upload_date" => "20200514"} 22:56:29.721 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=532.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" IN (?)) [5] 22:56:29.722 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=526.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" = ?) [5] 22:56:29.724 [debug] QUERY OK source="media_items" db=1.1ms idle=248.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-05-14 14:30:00Z], 5] 22:56:29.727 [debug] QUERY OK source="media_items" db=2.5ms idle=250.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA small black spider does its best to imitate another spider in web building.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Blunder / La boulette (Season 2)", "a304fc9a-e081-4041-aa4a-4d3a4c5e25aa", "https://www.youtube.com/watch?v=78uO6wF20Ig", "78uO6wF20Ig", 130, false, 105, "/downloads/Miniscule Season 2/2020-05-14 Minuscule - Blunder ⧸ La boulette (Season 2)/Minuscule - Blunder ⧸ La boulette (Season 2) [78uO6wF20Ig].mp4", false, false, false, 5, [], 1, ~U[2020-05-14 14:30:00Z], ~U[2026-01-30 05:56:29Z], ~U[2026-01-30 05:56:29Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA small black spider does its best to imitate another spider in web building.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Blunder / La boulette (Season 2)", "https://www.youtube.com/watch?v=78uO6wF20Ig", "78uO6wF20Ig", 130, false, "/downloads/Miniscule Season 2/2020-05-14 Minuscule - Blunder ⧸ La boulette (Season 2)/Minuscule - Blunder ⧸ La boulette (Season 2) [78uO6wF20Ig].mp4", false, 5, ~U[2020-05-14 14:30:00Z]] 22:56:29.728 [debug] QUERY OK source="sources" db=0.3ms idle=253.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" = ?) [5] 22:56:29.728 [debug] QUERY OK source="media_profiles" db=0.4ms idle=6.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] 22:56:29.729 [debug] QUERY OK source="media_items" db=0.5ms 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 [89089] 22:56:29.730 [debug] Current batch of media processed. Will check again in 1000ms 22:56:30.731 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2020-05-07 Minuscule - A candlelight christmas ⧸ Noël aux chandelles (Season 2)/Minuscule - A candlelight christmas ⧸ Noël aux chandelles (Season 2) [Mntl56t9HyA].mp4", "id" => "Mntl56t9HyA", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Mntl56t9HyA", "playlist_index" => 106, "timestamp" => 1588861803, "title" => "Minuscule - A candlelight christmas / Noël aux chandelles (Season 2)", "upload_date" => "20200507"} 22:56:30.732 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:30.733 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:56:30.734 [debug] QUERY OK source="media_items" db=0.9ms idle=1003.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-05-07 14:30:03Z], 5] 22:56:30.736 [debug] QUERY OK source="media_items" db=1.7ms queue=0.1ms idle=543.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A candlelight christmas / Noël aux chandelles (Season 2)", "62984e45-16a4-4561-a39f-381d86ebdac5", "https://www.youtube.com/watch?v=Mntl56t9HyA", "Mntl56t9HyA", 119, false, 106, "/downloads/Miniscule Season 2/2020-05-07 Minuscule - A candlelight christmas ⧸ Noël aux chandelles (Season 2)/Minuscule - A candlelight christmas ⧸ Noël aux chandelles (Season 2) [Mntl56t9HyA].mp4", false, false, false, 5, [], 1, ~U[2020-05-07 14:30:03Z], ~U[2026-01-30 05:56:30Z], ~U[2026-01-30 05:56:30Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A candlelight christmas / Noël aux chandelles (Season 2)", "https://www.youtube.com/watch?v=Mntl56t9HyA", "Mntl56t9HyA", 119, false, "/downloads/Miniscule Season 2/2020-05-07 Minuscule - A candlelight christmas ⧸ Noël aux chandelles (Season 2)/Minuscule - A candlelight christmas ⧸ Noël aux chandelles (Season 2) [Mntl56t9HyA].mp4", false, 5, ~U[2020-05-07 14:30:03Z]] 22:56:30.737 [debug] QUERY OK source="sources" db=0.3ms idle=539.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" = ?) [5] 22:56:30.738 [debug] QUERY OK source="media_profiles" db=0.2ms idle=5.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] 22:56:30.739 [debug] QUERY OK source="media_items" db=0.5ms idle=5.4ms 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 [89091] 22:56:30.739 [debug] Current batch of media processed. Will check again in 1000ms 22:56:31.740 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA fly plays a magic trick on a spider, but is all what it seems?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2020-04-30 Minuscule - The magic fly ⧸ La mouche magique (Season 2)/Minuscule - The magic fly ⧸ La mouche magique (Season 2) [qCnMPlECNGA].mp4", "id" => "qCnMPlECNGA", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=qCnMPlECNGA", "playlist_index" => 107, "timestamp" => 1588257006, "title" => "Minuscule - The magic fly / La mouche magique (Season 2)", "upload_date" => "20200430"} 22:56:31.741 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:31.742 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:56:31.743 [debug] QUERY OK source="media_items" db=1.0ms idle=1003.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-04-30 14:30:06Z], 5] 22:56:31.759 [debug] QUERY OK source="media_items" db=15.3ms idle=550.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA fly plays a magic trick on a spider, but is all what it seems?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The magic fly / La mouche magique (Season 2)", "b9ecc2ab-f921-44d3-b301-362317561053", "https://www.youtube.com/watch?v=qCnMPlECNGA", "qCnMPlECNGA", 119, false, 107, "/downloads/Miniscule Season 2/2020-04-30 Minuscule - The magic fly ⧸ La mouche magique (Season 2)/Minuscule - The magic fly ⧸ La mouche magique (Season 2) [qCnMPlECNGA].mp4", false, false, false, 5, [], 1, ~U[2020-04-30 14:30:06Z], ~U[2026-01-30 05:56:31Z], ~U[2026-01-30 05:56:31Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA fly plays a magic trick on a spider, but is all what it seems?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The magic fly / La mouche magique (Season 2)", "https://www.youtube.com/watch?v=qCnMPlECNGA", "qCnMPlECNGA", 119, false, "/downloads/Miniscule Season 2/2020-04-30 Minuscule - The magic fly ⧸ La mouche magique (Season 2)/Minuscule - The magic fly ⧸ La mouche magique (Season 2) [qCnMPlECNGA].mp4", false, 5, ~U[2020-04-30 14:30:06Z]] 22:56:31.760 [debug] QUERY OK source="sources" db=0.3ms idle=560.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" = ?) [5] 22:56:31.761 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=19.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] 22:56:31.762 [debug] QUERY OK source="media_items" db=0.5ms idle=19.4ms 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 [89093] 22:56:31.762 [debug] Current batch of media processed. Will check again in 1000ms 22:56:32.203 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769752592203389640,"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"]} 22:56:32.204 [debug] QUERY OK source="media_items" db=0.3ms idle=443.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" = ?) [106309] 22:56:32.204 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:56:32.205 [debug] QUERY OK source="sources" db=0.3ms idle=443.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" = ?) [5] 22:56:32.205 [debug] QUERY OK source="media_profiles" db=0.3ms idle=442.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] 22:56:32.206 [debug] QUERY OK source="media_items" db=0.6ms 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 [106309] 22:56:32.208 [debug] QUERY OK source="media_metadata" db=0.2ms idle=4.7ms 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" = ?) [106309] 22:56:32.208 [debug] QUERY OK source="media_profiles" db=0.3ms 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] 22:56:32.209 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:56:32.210 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 22:56:32.210 [debug] Running yt-dlp command for action: get_downloadable_status 22:56:32.211 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 22:56:32.212 [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 [] 22:56:32.212 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:56:32.213 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/df/22/df2248c95475c7a1e53cb7336a91d1b31368e4abc0c53d559db346c1f139ee90.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:56:32.763 [debug] Current batch of media processed. Will check again in 1000ms 22:56:33.764 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn a garden, a mocking ladybird arrives to taunt a band of flies, and incites them to chase her in a crazy race.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 120, "filename" => "/downloads/Miniscule Season 2/2020-04-23 Minuscule - The cruel cow in the meadow ⧸ Histoire vache (Season 2)/Minuscule - The cruel cow in the meadow ⧸ Histoire vache (Season 2) [X8TfG9Ib4Aw].mp4", "id" => "X8TfG9Ib4Aw", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=X8TfG9Ib4Aw", "playlist_index" => 108, "timestamp" => 1587652203, "title" => "Minuscule - The cruel cow in the meadow / Histoire vache (Season 2)", "upload_date" => "20200423"} 22:56:33.765 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=566.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" IN (?)) [5] 22:56:33.766 [debug] QUERY OK source="sources" db=0.3ms idle=560.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" = ?) [5] 22:56:33.767 [debug] QUERY OK source="media_items" db=1.0ms idle=292.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-04-23 14:30:03Z], 5] 22:56:33.769 [debug] QUERY OK source="media_items" db=1.7ms idle=293.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn a garden, a mocking ladybird arrives to taunt a band of flies, and incites them to chase her in a crazy race.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The cruel cow in the meadow / Histoire vache (Season 2)", "23646bab-800a-4108-aaec-8f769d4cb1f8", "https://www.youtube.com/watch?v=X8TfG9Ib4Aw", "X8TfG9Ib4Aw", 120, false, 108, "/downloads/Miniscule Season 2/2020-04-23 Minuscule - The cruel cow in the meadow ⧸ Histoire vache (Season 2)/Minuscule - The cruel cow in the meadow ⧸ Histoire vache (Season 2) [X8TfG9Ib4Aw].mp4", false, false, false, 5, [], 1, ~U[2020-04-23 14:30:03Z], ~U[2026-01-30 05:56:33Z], ~U[2026-01-30 05:56:33Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn a garden, a mocking ladybird arrives to taunt a band of flies, and incites them to chase her in a crazy race.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The cruel cow in the meadow / Histoire vache (Season 2)", "https://www.youtube.com/watch?v=X8TfG9Ib4Aw", "X8TfG9Ib4Aw", 120, false, "/downloads/Miniscule Season 2/2020-04-23 Minuscule - The cruel cow in the meadow ⧸ Histoire vache (Season 2)/Minuscule - The cruel cow in the meadow ⧸ Histoire vache (Season 2) [X8TfG9Ib4Aw].mp4", false, 5, ~U[2020-04-23 14:30:03Z]] 22:56:33.770 [debug] QUERY OK source="sources" db=0.3ms idle=295.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" = ?) [5] 22:56:33.771 [debug] QUERY OK source="media_profiles" db=0.3ms idle=5.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] 22:56:33.772 [debug] QUERY OK source="media_items" db=0.5ms idle=5.4ms 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 [89095] 22:56:33.772 [debug] Current batch of media processed. Will check again in 1000ms 22:56:34.207 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1769752594207129672,"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"]} 22:56:34.207 [debug] QUERY OK source="media_items" db=0.3ms idle=436.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" = ?) [89022] 22:56:34.208 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:56:34.208 [debug] QUERY OK source="sources" db=0.2ms idle=437.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" = ?) [5] 22:56:34.209 [debug] QUERY OK source="media_profiles" db=0.3ms idle=436.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] 22:56:34.209 [debug] QUERY OK source="media_items" db=0.3ms idle=8.5ms 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 [89022] 22:56:34.211 [debug] QUERY OK source="media_metadata" db=0.1ms idle=3.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" = ?) [89022] 22:56:34.211 [debug] QUERY OK source="media_profiles" db=0.1ms idle=3.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] 22:56:34.212 [debug] QUERY OK source="settings" db=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 [] 22:56:34.212 [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 [] 22:56:34.212 [debug] Running yt-dlp command for action: get_downloadable_status 22:56:34.213 [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 [] 22:56:34.213 [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 [] 22:56:34.214 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:56:34.214 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/9d/5d/9d5d596bf8edbc5c4825e93371f10efa607c53323e7f929fedae03fa26df4463.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:56:34.773 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA group of flies try and catch a ladybird over a golf course but the flies are not aware of the complications that they face.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2020-04-16 Minuscule - Need for speed ⧸ Ivre de vitesse (Season 2)/Minuscule - Need for speed ⧸ Ivre de vitesse (Season 2) [31kI59jDiRI].mp4", "id" => "31kI59jDiRI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=31kI59jDiRI", "playlist_index" => 109, "timestamp" => 1587047402, "title" => "Minuscule - Need for speed / Ivre de vitesse (Season 2)", "upload_date" => "20200416"} 22:56:34.774 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=561.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 (?)) [5] 22:56:34.775 [debug] QUERY OK source="sources" db=0.4ms idle=562.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" = ?) [5] 22:56:34.776 [debug] QUERY OK source="media_items" db=1.1ms idle=562.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-04-16 14:30:02Z], 5] 22:56:34.779 [debug] QUERY OK source="media_items" db=1.6ms idle=563.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA group of flies try and catch a ladybird over a golf course but the flies are not aware of the complications that they face.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Need for speed / Ivre de vitesse (Season 2)", "b1081fa7-1b92-49a3-88fd-c6abd6b749fa", "https://www.youtube.com/watch?v=31kI59jDiRI", "31kI59jDiRI", 119, false, 109, "/downloads/Miniscule Season 2/2020-04-16 Minuscule - Need for speed ⧸ Ivre de vitesse (Season 2)/Minuscule - Need for speed ⧸ Ivre de vitesse (Season 2) [31kI59jDiRI].mp4", false, false, false, 5, [], 1, ~U[2020-04-16 14:30:02Z], ~U[2026-01-30 05:56:34Z], ~U[2026-01-30 05:56:34Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA group of flies try and catch a ladybird over a golf course but the flies are not aware of the complications that they face.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Need for speed / Ivre de vitesse (Season 2)", "https://www.youtube.com/watch?v=31kI59jDiRI", "31kI59jDiRI", 119, false, "/downloads/Miniscule Season 2/2020-04-16 Minuscule - Need for speed ⧸ Ivre de vitesse (Season 2)/Minuscule - Need for speed ⧸ Ivre de vitesse (Season 2) [31kI59jDiRI].mp4", false, 5, ~U[2020-04-16 14:30:02Z]] 22:56:34.779 [debug] QUERY OK source="sources" db=0.2ms idle=565.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" = ?) [5] 22:56:34.780 [debug] QUERY OK source="media_profiles" db=0.2ms idle=5.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] 22:56:34.781 [debug] QUERY OK source="media_items" db=0.4ms idle=5.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 [89097] 22:56:34.781 [debug] Current batch of media processed. Will check again in 1000ms 22:56:35.782 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA careless fly escapes from a hungry spider by shutting herself inside a microwave oven. The radiations turn her into a powerful monster fly the size of an orange.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 294, "filename" => "/downloads/Miniscule Season 2/2020-04-09 Minuscule - Microzilla ⧸ Microzondes (Season 2)/Minuscule - Microzilla ⧸ Microzondes (Season 2) [64r6-QYb1do].mkv", "id" => "64r6-QYb1do", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=64r6-QYb1do", "playlist_index" => 110, "timestamp" => 1586442600, "title" => "Minuscule - Microzilla / Microzondes (Season 2)", "upload_date" => "20200409"} 22:56:35.783 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:35.783 [debug] QUERY OK source="sources" db=0.2ms idle=1003.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" = ?) [5] 22:56:35.785 [debug] QUERY OK source="media_items" db=0.8ms idle=1003.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-04-09 14:30:00Z], 5] 22:56:35.787 [debug] QUERY OK source="media_items" db=1.5ms idle=1004.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA careless fly escapes from a hungry spider by shutting herself inside a microwave oven. The radiations turn her into a powerful monster fly the size of an orange.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Microzilla / Microzondes (Season 2)", "4840c613-67cb-4a93-b580-2d509db8ce10", "https://www.youtube.com/watch?v=64r6-QYb1do", "64r6-QYb1do", 294, false, 110, "/downloads/Miniscule Season 2/2020-04-09 Minuscule - Microzilla ⧸ Microzondes (Season 2)/Minuscule - Microzilla ⧸ Microzondes (Season 2) [64r6-QYb1do].mkv", false, false, false, 5, [], 1, ~U[2020-04-09 14:30:00Z], ~U[2026-01-30 05:56:35Z], ~U[2026-01-30 05:56:35Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA careless fly escapes from a hungry spider by shutting herself inside a microwave oven. The radiations turn her into a powerful monster fly the size of an orange.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Microzilla / Microzondes (Season 2)", "https://www.youtube.com/watch?v=64r6-QYb1do", "64r6-QYb1do", 294, false, "/downloads/Miniscule Season 2/2020-04-09 Minuscule - Microzilla ⧸ Microzondes (Season 2)/Minuscule - Microzilla ⧸ Microzondes (Season 2) [64r6-QYb1do].mkv", false, 5, ~U[2020-04-09 14:30:00Z]] 22:56:35.787 [debug] QUERY OK source="sources" db=0.3ms idle=584.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" = ?) [5] 22:56:35.788 [debug] QUERY OK source="media_profiles" db=0.2ms idle=4.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] 22:56:35.789 [debug] QUERY OK source="media_items" db=0.5ms idle=4.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 [89099] 22:56:35.789 [debug] Current batch of media processed. Will check again in 1000ms 22:56:36.006 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/df/22/df2248c95475c7a1e53cb7336a91d1b31368e4abc0c53d559db346c1f139ee90.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 22:56:36.006 [debug] Running yt-dlp command for action: download 22:56:36.006 [debug] QUERY OK source="settings" db=0.3ms idle=221.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 [] 22:56:36.007 [debug] QUERY OK source="settings" db=0.2ms idle=220.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 [] 22:56:36.007 [debug] QUERY OK source="settings" db=0.1ms idle=219.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 [] 22:56:36.008 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/4f/39/4f3998302a3b7400b4779df7438d1705e6532d09e3c22c17e8632cad505333d1.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:56:36.790 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nAn ant builds a pyramid made out out of peas while a fly is having fun destroying the building when it's almost done. But a ladybird is watching...\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 122, "filename" => "/downloads/Miniscule Season 2/2020-04-02 Minuscule - A pea in the hand is worth ⧸ Deux petits pois deux mesures (Season 2)/Minuscule - A pea in the hand is worth ⧸ Deux petits pois deux mesures (Season 2) [f0xE5_ejBKk].mp4", "id" => "f0xE5_ejBKk", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=f0xE5_ejBKk", "playlist_index" => 111, "timestamp" => 1585845007, "title" => "Minuscule - A pea in the hand is worth / Deux petits pois deux mesures (Season 2)", "upload_date" => "20200402"} 22:56:36.791 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1001.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" IN (?)) [5] 22:56:36.792 [debug] QUERY OK source="sources" db=0.4ms idle=785.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" = ?) [5] 22:56:36.793 [debug] QUERY OK source="media_items" db=1.0ms idle=785.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-04-02 16:30:07Z], 5] 22:56:36.796 [debug] QUERY OK source="media_items" db=1.7ms idle=786.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nAn ant builds a pyramid made out out of peas while a fly is having fun destroying the building when it's almost done. But a ladybird is watching...\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A pea in the hand is worth / Deux petits pois deux mesures (Season 2)", "3ff8e661-e3b9-4f6d-aa87-d8f629abb2b8", "https://www.youtube.com/watch?v=f0xE5_ejBKk", "f0xE5_ejBKk", 122, false, 111, "/downloads/Miniscule Season 2/2020-04-02 Minuscule - A pea in the hand is worth ⧸ Deux petits pois deux mesures (Season 2)/Minuscule - A pea in the hand is worth ⧸ Deux petits pois deux mesures (Season 2) [f0xE5_ejBKk].mp4", false, false, false, 5, [], 1, ~U[2020-04-02 16:30:07Z], ~U[2026-01-30 05:56:36Z], ~U[2026-01-30 05:56:36Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nAn ant builds a pyramid made out out of peas while a fly is having fun destroying the building when it's almost done. But a ladybird is watching...\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A pea in the hand is worth / Deux petits pois deux mesures (Season 2)", "https://www.youtube.com/watch?v=f0xE5_ejBKk", "f0xE5_ejBKk", 122, false, "/downloads/Miniscule Season 2/2020-04-02 Minuscule - A pea in the hand is worth ⧸ Deux petits pois deux mesures (Season 2)/Minuscule - A pea in the hand is worth ⧸ Deux petits pois deux mesures (Season 2) [f0xE5_ejBKk].mp4", false, 5, ~U[2020-04-02 16:30:07Z]] 22:56:36.797 [debug] QUERY OK source="sources" db=0.3ms idle=592.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" = ?) [5] 22:56:36.798 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=6.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] 22:56:36.799 [debug] QUERY OK source="media_items" db=0.4ms idle=5.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 [89100] 22:56:36.799 [debug] Current batch of media processed. Will check again in 1000ms 22:56:37.736 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/9d/5d/9d5d596bf8edbc5c4825e93371f10efa607c53323e7f929fedae03fa26df4463.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 22:56:37.737 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 22:56:37.738 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":3530278,"event":"job:exception","queue_time":570123,"attempt":3,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:56:37.800 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA chubby caterpillar makes this recurring nightmare: each time she becomes a butterfly and leaves her cocoon, the worst catastrophes occur. Terrified, she decides to never again leave her cocoon.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 265, "filename" => "/downloads/Miniscule Season 2/2020-03-26 Minuscule - A butterfly nightmare ⧸ Cauchemar du papillon (Season 2)/Minuscule - A butterfly nightmare ⧸ Cauchemar du papillon (Season 2) [I8ln-GKhbKI].mkv", "id" => "I8ln-GKhbKI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=I8ln-GKhbKI", "playlist_index" => 112, "timestamp" => 1585243800, "title" => "Minuscule - A butterfly nightmare / Cauchemar du papillon (Season 2)", "upload_date" => "20200326"} 22:56:37.801 [debug] QUERY OK source="sources" db=0.6ms idle=1002.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" IN (?)) [5] 22:56:37.802 [debug] QUERY OK source="sources" db=0.6ms idle=1002.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" = ?) [5] 22:56:37.804 [debug] QUERY OK source="media_items" db=1.2ms idle=596.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-03-26 17:30:00Z], 5] 22:56:37.807 [debug] QUERY OK source="media_items" db=2.2ms idle=66.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA chubby caterpillar makes this recurring nightmare: each time she becomes a butterfly and leaves her cocoon, the worst catastrophes occur. Terrified, she decides to never again leave her cocoon.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A butterfly nightmare / Cauchemar du papillon (Season 2)", "0fa45d46-b03f-4e04-8a37-9bd66f0f4671", "https://www.youtube.com/watch?v=I8ln-GKhbKI", "I8ln-GKhbKI", 265, false, 112, "/downloads/Miniscule Season 2/2020-03-26 Minuscule - A butterfly nightmare ⧸ Cauchemar du papillon (Season 2)/Minuscule - A butterfly nightmare ⧸ Cauchemar du papillon (Season 2) [I8ln-GKhbKI].mkv", false, false, false, 5, [], 1, ~U[2020-03-26 17:30:00Z], ~U[2026-01-30 05:56:37Z], ~U[2026-01-30 05:56:37Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA chubby caterpillar makes this recurring nightmare: each time she becomes a butterfly and leaves her cocoon, the worst catastrophes occur. Terrified, she decides to never again leave her cocoon.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A butterfly nightmare / Cauchemar du papillon (Season 2)", "https://www.youtube.com/watch?v=I8ln-GKhbKI", "I8ln-GKhbKI", 265, false, "/downloads/Miniscule Season 2/2020-03-26 Minuscule - A butterfly nightmare ⧸ Cauchemar du papillon (Season 2)/Minuscule - A butterfly nightmare ⧸ Cauchemar du papillon (Season 2) [I8ln-GKhbKI].mkv", false, 5, ~U[2020-03-26 17:30:00Z]] 22:56:37.808 [debug] QUERY OK source="sources" db=0.5ms idle=62.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" = ?) [5] 22:56:37.809 [debug] QUERY OK source="media_profiles" db=0.3ms idle=7.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] 22:56:37.810 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=6.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 [89102] 22:56:37.810 [debug] Current batch of media processed. Will check again in 1000ms 22:56:38.811 [debug] Current batch of media processed. Will check again in 1000ms 22:56:39.812 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA mosquito swatted by a man in bed has the last laugh.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2020-03-19 Minuscule - Flyswatter ⧸ Tapette (Season 2)/Minuscule - Flyswatter ⧸ Tapette (Season 2) [x7rIT6Thn0k].mp4", "id" => "x7rIT6Thn0k", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=x7rIT6Thn0k", "playlist_index" => 113, "timestamp" => 1584631803, "title" => "Minuscule - Flyswatter / Tapette (Season 2)", "upload_date" => "20200319"} 22:56:39.813 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=602.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 (?)) [5] 22:56:39.814 [debug] QUERY OK source="sources" db=0.4ms idle=596.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" = ?) [5] 22:56:39.816 [debug] QUERY OK source="media_items" db=1.2ms queue=0.1ms idle=340.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-03-19 15:30:03Z], 5] 22:56:39.839 [debug] QUERY OK source="media_items" db=22.7ms idle=342.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA mosquito swatted by a man in bed has the last laugh.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Flyswatter / Tapette (Season 2)", "4bed6382-95ad-4c6e-ad33-65896b2a6024", "https://www.youtube.com/watch?v=x7rIT6Thn0k", "x7rIT6Thn0k", 119, false, 113, "/downloads/Miniscule Season 2/2020-03-19 Minuscule - Flyswatter ⧸ Tapette (Season 2)/Minuscule - Flyswatter ⧸ Tapette (Season 2) [x7rIT6Thn0k].mp4", false, false, false, 5, [], 1, ~U[2020-03-19 15:30:03Z], ~U[2026-01-30 05:56:39Z], ~U[2026-01-30 05:56:39Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA mosquito swatted by a man in bed has the last laugh.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Flyswatter / Tapette (Season 2)", "https://www.youtube.com/watch?v=x7rIT6Thn0k", "x7rIT6Thn0k", 119, false, "/downloads/Miniscule Season 2/2020-03-19 Minuscule - Flyswatter ⧸ Tapette (Season 2)/Minuscule - Flyswatter ⧸ Tapette (Season 2) [x7rIT6Thn0k].mp4", false, 5, ~U[2020-03-19 15:30:03Z]] 22:56:39.840 [debug] QUERY OK source="sources" db=0.4ms idle=365.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" = ?) [5] 22:56:39.841 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=27.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] 22:56:39.842 [debug] QUERY OK source="media_items" db=0.6ms idle=27.4ms 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 [89104] 22:56:39.842 [debug] Current batch of media processed. Will check again in 1000ms 22:56:40.176 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/4f/39/4f3998302a3b7400b4779df7438d1705e6532d09e3c22c17e8632cad505333d1.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 22:56:40.176 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 22:56:40.178 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":7973764,"event":"job:exception","queue_time":1002969,"attempt":5,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:56:40.844 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2020-03-12 Minuscule - Telecanetic (Season 2)/Minuscule - Telecanetic (Season 2) [aDfIX_Lk96c].mp4", "id" => "aDfIX_Lk96c", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=aDfIX_Lk96c", "playlist_index" => 114, "timestamp" => 1584027001, "title" => "Minuscule - Telecanetic (Season 2)", "upload_date" => "20200312"} 22:56:40.845 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1002.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 (?)) [5] 22:56:40.846 [debug] QUERY OK source="sources" db=0.3ms idle=667.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" = ?) [5] 22:56:40.847 [debug] QUERY OK source="media_items" db=1.2ms idle=661.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-03-12 15:30:01Z], 5] 22:56:40.850 [debug] QUERY OK source="media_items" db=1.5ms idle=634.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Telecanetic (Season 2)", "9b477767-266f-41ff-b577-aa4b5688db21", "https://www.youtube.com/watch?v=aDfIX_Lk96c", "aDfIX_Lk96c", 119, false, 114, "/downloads/Miniscule Season 2/2020-03-12 Minuscule - Telecanetic (Season 2)/Minuscule - Telecanetic (Season 2) [aDfIX_Lk96c].mp4", false, false, false, 5, [], 1, ~U[2020-03-12 15:30:01Z], ~U[2026-01-30 05:56:40Z], ~U[2026-01-30 05:56:40Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Telecanetic (Season 2)", "https://www.youtube.com/watch?v=aDfIX_Lk96c", "aDfIX_Lk96c", 119, false, "/downloads/Miniscule Season 2/2020-03-12 Minuscule - Telecanetic (Season 2)/Minuscule - Telecanetic (Season 2) [aDfIX_Lk96c].mp4", false, 5, ~U[2020-03-12 15:30:01Z]] 22:56:40.850 [debug] QUERY OK source="sources" db=0.3ms idle=630.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" = ?) [5] 22:56:40.851 [debug] QUERY OK source="media_profiles" db=0.4ms idle=5.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] 22:56:40.852 [debug] QUERY OK source="media_items" db=0.6ms idle=6.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 [89106] 22:56:40.853 [debug] Current batch of media processed. Will check again in 1000ms 22:56:41.854 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA butterfly flutters happily above the fields, but with an innocent flap of its wings, it is going to provoke an incredible chain reaction.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 271, "filename" => "/downloads/Miniscule Season 2/2020-03-05 Minuscule - The butterfly effect ⧸ L'effet papillon (Season 2)/Minuscule - The butterfly effect ⧸ L'effet papillon (Season 2) [EgRwTI6Q7qw].mp4", "id" => "EgRwTI6Q7qw", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=EgRwTI6Q7qw", "playlist_index" => 115, "timestamp" => 1583422200, "title" => "Minuscule - The butterfly effect / L'effet papillon (Season 2)", "upload_date" => "20200305"} 22:56:41.855 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=1004.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" IN (?)) [5] 22:56:41.856 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" = ?) [5] 22:56:41.858 [debug] QUERY OK source="media_items" db=1.2ms queue=0.1ms idle=1004.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-03-05 15:30:00Z], 5] 22:56:41.887 [debug] QUERY OK source="media_items" db=27.8ms idle=642.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA butterfly flutters happily above the fields, but with an innocent flap of its wings, it is going to provoke an incredible chain reaction.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The butterfly effect / L'effet papillon (Season 2)", "e0c2cc36-12f7-4149-bdf6-25ebcfcff57c", "https://www.youtube.com/watch?v=EgRwTI6Q7qw", "EgRwTI6Q7qw", 271, false, 115, "/downloads/Miniscule Season 2/2020-03-05 Minuscule - The butterfly effect ⧸ L'effet papillon (Season 2)/Minuscule - The butterfly effect ⧸ L'effet papillon (Season 2) [EgRwTI6Q7qw].mp4", false, false, false, 5, [], 1, ~U[2020-03-05 15:30:00Z], ~U[2026-01-30 05:56:41Z], ~U[2026-01-30 05:56:41Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA butterfly flutters happily above the fields, but with an innocent flap of its wings, it is going to provoke an incredible chain reaction.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The butterfly effect / L'effet papillon (Season 2)", "https://www.youtube.com/watch?v=EgRwTI6Q7qw", "EgRwTI6Q7qw", 271, false, "/downloads/Miniscule Season 2/2020-03-05 Minuscule - The butterfly effect ⧸ L'effet papillon (Season 2)/Minuscule - The butterfly effect ⧸ L'effet papillon (Season 2) [EgRwTI6Q7qw].mp4", false, 5, ~U[2020-03-05 15:30:00Z]] 22:56:41.887 [debug] QUERY OK source="sources" db=0.4ms idle=664.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" = ?) [5] 22:56:41.888 [debug] QUERY OK source="media_profiles" db=0.5ms idle=32.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] 22:56:41.890 [debug] QUERY OK source="media_items" db=0.7ms idle=32.5ms 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 [89108] 22:56:41.890 [debug] Current batch of media processed. Will check again in 1000ms 22:56:42.891 [debug] Current batch of media processed. Will check again in 1000ms 22:56:43.892 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA spider decides to add his own special touch to an Artist's work.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary!\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook: http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 135, "filename" => "/downloads/Miniscule Season 2/2020-02-27 Minuscule - The artist ⧸ L'artiste (Season 2)/Minuscule - The artist ⧸ L'artiste (Season 2) [zNrfH2YFABg].mp4", "id" => "zNrfH2YFABg", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=zNrfH2YFABg", "playlist_index" => 116, "timestamp" => 1582817402, "title" => "Minuscule - The artist / L'artiste (Season 2)", "upload_date" => "20200227"} 22:56:43.893 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=672.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" IN (?)) [5] 22:56:43.894 [debug] QUERY OK source="sources" db=0.4ms idle=666.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" = ?) [5] 22:56:43.896 [debug] QUERY OK source="media_items" db=1.6ms idle=420.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-02-27 15:30:02Z], 5] 22:56:43.917 [debug] QUERY OK source="media_items" db=20.3ms idle=422.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA spider decides to add his own special touch to an Artist's work.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary!\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook: http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The artist / L'artiste (Season 2)", "fc7e5058-c258-4141-ae0a-79404330ec99", "https://www.youtube.com/watch?v=zNrfH2YFABg", "zNrfH2YFABg", 135, false, 116, "/downloads/Miniscule Season 2/2020-02-27 Minuscule - The artist ⧸ L'artiste (Season 2)/Minuscule - The artist ⧸ L'artiste (Season 2) [zNrfH2YFABg].mp4", false, false, false, 5, [], 1, ~U[2020-02-27 15:30:02Z], ~U[2026-01-30 05:56:43Z], ~U[2026-01-30 05:56:43Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA spider decides to add his own special touch to an Artist's work.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary!\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook: http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The artist / L'artiste (Season 2)", "https://www.youtube.com/watch?v=zNrfH2YFABg", "zNrfH2YFABg", 135, false, "/downloads/Miniscule Season 2/2020-02-27 Minuscule - The artist ⧸ L'artiste (Season 2)/Minuscule - The artist ⧸ L'artiste (Season 2) [zNrfH2YFABg].mp4", false, 5, ~U[2020-02-27 15:30:02Z]] 22:56:43.918 [debug] QUERY OK source="sources" db=0.4ms idle=443.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" = ?) [5] 22:56:43.919 [debug] QUERY OK source="media_profiles" db=0.4ms idle=25.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] 22:56:43.920 [debug] QUERY OK source="media_items" db=0.7ms idle=25.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 [89110] 22:56:43.920 [debug] Current batch of media processed. Will check again in 1000ms 22:56:44.921 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nThe mean red ants manage to steal every last bit of food at a barbecue. Will a motley crew of other insects manage to get the food back?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 294, "filename" => "/downloads/Miniscule Season 2/2020-02-20 Minuscule - Sausage predator ⧸ Saucisse predator (Season 2)/Minuscule - Sausage predator ⧸ Saucisse predator (Season 2) [dVSOJResov4].mp4", "id" => "dVSOJResov4", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=dVSOJResov4", "playlist_index" => 117, "timestamp" => 1582212604, "title" => "Minuscule - Sausage predator / Saucisse predator (Season 2)", "upload_date" => "20200220"} 22:56:44.922 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:44.923 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" = ?) [5] 22:56:44.925 [debug] QUERY OK source="media_items" db=1.4ms idle=1003.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-02-20 15:30:04Z], 5] 22:56:44.929 [debug] QUERY OK source="media_items" db=2.8ms idle=703.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nThe mean red ants manage to steal every last bit of food at a barbecue. Will a motley crew of other insects manage to get the food back?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Sausage predator / Saucisse predator (Season 2)", "836020be-7795-464a-b4ff-739f0b543d0a", "https://www.youtube.com/watch?v=dVSOJResov4", "dVSOJResov4", 294, false, 117, "/downloads/Miniscule Season 2/2020-02-20 Minuscule - Sausage predator ⧸ Saucisse predator (Season 2)/Minuscule - Sausage predator ⧸ Saucisse predator (Season 2) [dVSOJResov4].mp4", false, false, false, 5, [], 1, ~U[2020-02-20 15:30:04Z], ~U[2026-01-30 05:56:44Z], ~U[2026-01-30 05:56:44Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nThe mean red ants manage to steal every last bit of food at a barbecue. Will a motley crew of other insects manage to get the food back?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Sausage predator / Saucisse predator (Season 2)", "https://www.youtube.com/watch?v=dVSOJResov4", "dVSOJResov4", 294, false, "/downloads/Miniscule Season 2/2020-02-20 Minuscule - Sausage predator ⧸ Saucisse predator (Season 2)/Minuscule - Sausage predator ⧸ Saucisse predator (Season 2) [dVSOJResov4].mp4", false, 5, ~U[2020-02-20 15:30:04Z]] 22:56:44.930 [debug] QUERY OK source="sources" db=0.6ms idle=700.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" = ?) [5] 22:56:44.931 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=7.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] 22:56:44.932 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [89112] 22:56:44.932 [debug] Current batch of media processed. Will check again in 1000ms 22:56:45.865 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:45.933 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n*** \n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 1690, "filename" => "/downloads/Miniscule Season 2/2017-10-02 Minuscule - Compilation #8/Minuscule - Compilation #8 [_WJlo33fRUg].mp4", "id" => "_WJlo33fRUg", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=_WJlo33fRUg", "playlist_index" => 118, "timestamp" => 1506956406, "title" => "Minuscule - Compilation #8", "upload_date" => "20171002"} 22:56:45.934 [debug] QUERY OK source="sources" db=0.3ms idle=1002.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" IN (?)) [5] 22:56:45.935 [debug] QUERY OK source="sources" db=0.3ms idle=1002.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" = ?) [5] 22:56:45.936 [debug] QUERY OK source="media_items" db=1.1ms idle=710.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2017-10-02 15:00:06Z], 5] 22:56:45.996 [debug] QUERY OK source="media_items" db=58.7ms idle=706.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n*** \n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Compilation #8", "685e7fb2-e1ed-4c20-9861-755aa3f4899d", "https://www.youtube.com/watch?v=_WJlo33fRUg", "_WJlo33fRUg", 1690, false, 118, "/downloads/Miniscule Season 2/2017-10-02 Minuscule - Compilation #8/Minuscule - Compilation #8 [_WJlo33fRUg].mp4", false, false, false, 5, [], 1, ~U[2017-10-02 15:00:06Z], ~U[2026-01-30 05:56:45Z], ~U[2026-01-30 05:56:45Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n*** \n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Compilation #8", "https://www.youtube.com/watch?v=_WJlo33fRUg", "_WJlo33fRUg", 1690, false, "/downloads/Miniscule Season 2/2017-10-02 Minuscule - Compilation #8/Minuscule - Compilation #8 [_WJlo33fRUg].mp4", false, 5, ~U[2017-10-02 15:00:06Z]] 22:56:45.998 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=131.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" = ?) [5] 22:56:45.998 [debug] QUERY OK source="media_profiles" db=0.4ms idle=63.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] 22:56:46.000 [debug] QUERY OK source="media_items" db=0.7ms idle=63.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 [89114] 22:56:46.000 [debug] Current batch of media processed. Will check again in 1000ms 22:56:47.001 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA reckless and macho butterfly is interested in a female butterfly that is sitting on a crossroad sign. But between the butterfly and its ladylove: a road with very dense traffic.\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 286, "filename" => "/downloads/Miniscule Season 2/2020-02-13 Minuscule - Hop on! ⧸ Hop là! (Season 2)/Minuscule - Hop on! ⧸ Hop là! (Season 2) [QDvHirWhvK8].mp4", "id" => "QDvHirWhvK8", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=QDvHirWhvK8", "playlist_index" => 119, "timestamp" => 1581607802, "title" => "Minuscule - Hop on! / Hop là! (Season 2)", "upload_date" => "20200213"} 22:56:47.002 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1004.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" IN (?)) [5] 22:56:47.003 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:56:47.005 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-02-13 15:30:02Z], 5] 22:56:47.011 [debug] QUERY OK source="media_items" db=4.8ms idle=778.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA reckless and macho butterfly is interested in a female butterfly that is sitting on a crossroad sign. But between the butterfly and its ladylove: a road with very dense traffic.\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Hop on! / Hop là! (Season 2)", "2f3d0f9a-0c61-4a89-b29c-0e83170e5562", "https://www.youtube.com/watch?v=QDvHirWhvK8", "QDvHirWhvK8", 286, false, 119, "/downloads/Miniscule Season 2/2020-02-13 Minuscule - Hop on! ⧸ Hop là! (Season 2)/Minuscule - Hop on! ⧸ Hop là! (Season 2) [QDvHirWhvK8].mp4", false, false, false, 5, [], 1, ~U[2020-02-13 15:30:02Z], ~U[2026-01-30 05:56:47Z], ~U[2026-01-30 05:56:47Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA reckless and macho butterfly is interested in a female butterfly that is sitting on a crossroad sign. But between the butterfly and its ladylove: a road with very dense traffic.\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Hop on! / Hop là! (Season 2)", "https://www.youtube.com/watch?v=QDvHirWhvK8", "QDvHirWhvK8", 286, false, "/downloads/Miniscule Season 2/2020-02-13 Minuscule - Hop on! ⧸ Hop là! (Season 2)/Minuscule - Hop on! ⧸ Hop là! (Season 2) [QDvHirWhvK8].mp4", false, 5, ~U[2020-02-13 15:30:02Z]] 22:56:47.011 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=778.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" = ?) [5] 22:56:47.012 [debug] QUERY OK source="media_profiles" db=0.3ms idle=9.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] 22:56:47.013 [debug] QUERY OK source="media_items" db=0.6ms 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 [89115] 22:56:47.013 [debug] Current batch of media processed. Will check again in 1000ms 22:56:48.015 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA huge net prevents a group of mosquitoes from reaching a potential victim. Will one mosquito manage to breach the net?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2020-02-06 Minuscule - Mosquito net ⧸ Moustiquaire (Season 2)/Minuscule - Mosquito net ⧸ Moustiquaire (Season 2) [rK-QYWVVx3Y].mp4", "id" => "rK-QYWVVx3Y", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=rK-QYWVVx3Y", "playlist_index" => 120, "timestamp" => 1581003004, "title" => "Minuscule - Mosquito net / Moustiquaire (Season 2)", "upload_date" => "20200206"} 22:56:48.016 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1004.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 (?)) [5] 22:56:48.017 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:56:48.018 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-02-06 15:30:04Z], 5] 22:56:48.035 [debug] QUERY OK source="media_items" db=15.7ms idle=789.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA huge net prevents a group of mosquitoes from reaching a potential victim. Will one mosquito manage to breach the net?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Mosquito net / Moustiquaire (Season 2)", "7c83ed28-916c-4629-9d13-27b45483311d", "https://www.youtube.com/watch?v=rK-QYWVVx3Y", "rK-QYWVVx3Y", 119, false, 120, "/downloads/Miniscule Season 2/2020-02-06 Minuscule - Mosquito net ⧸ Moustiquaire (Season 2)/Minuscule - Mosquito net ⧸ Moustiquaire (Season 2) [rK-QYWVVx3Y].mp4", false, false, false, 5, [], 1, ~U[2020-02-06 15:30:04Z], ~U[2026-01-30 05:56:48Z], ~U[2026-01-30 05:56:48Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA huge net prevents a group of mosquitoes from reaching a potential victim. Will one mosquito manage to breach the net?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Mosquito net / Moustiquaire (Season 2)", "https://www.youtube.com/watch?v=rK-QYWVVx3Y", "rK-QYWVVx3Y", 119, false, "/downloads/Miniscule Season 2/2020-02-06 Minuscule - Mosquito net ⧸ Moustiquaire (Season 2)/Minuscule - Mosquito net ⧸ Moustiquaire (Season 2) [rK-QYWVVx3Y].mp4", false, 5, ~U[2020-02-06 15:30:04Z]] 22:56:48.036 [debug] QUERY OK source="sources" db=0.4ms idle=799.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" = ?) [5] 22:56:48.036 [debug] QUERY OK source="media_profiles" db=0.3ms 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] 22:56:48.037 [debug] QUERY OK source="media_items" db=0.6ms idle=20.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 [89118] 22:56:48.038 [debug] Current batch of media processed. Will check again in 1000ms 22:56:49.039 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nFlies in a red toy bus and a spider in a yellow toy car have an exciting race.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2020-01-30 Minuscule - Mad fly ⧸ Mad mouche (Season 2)/Minuscule - Mad fly ⧸ Mad mouche (Season 2) [sK3l9nOuyDs].mp4", "id" => "sK3l9nOuyDs", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=sK3l9nOuyDs", "playlist_index" => 121, "timestamp" => 1580398204, "title" => "Minuscule - Mad fly / Mad mouche (Season 2)", "upload_date" => "20200130"} 22:56:49.040 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:49.041 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:56:49.043 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-01-30 15:30:04Z], 5] 22:56:49.046 [debug] QUERY OK source="media_items" db=2.4ms queue=0.1ms idle=811.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nFlies in a red toy bus and a spider in a yellow toy car have an exciting race.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Mad fly / Mad mouche (Season 2)", "32756909-773d-47ec-9e54-efd468cb979b", "https://www.youtube.com/watch?v=sK3l9nOuyDs", "sK3l9nOuyDs", 119, false, 121, "/downloads/Miniscule Season 2/2020-01-30 Minuscule - Mad fly ⧸ Mad mouche (Season 2)/Minuscule - Mad fly ⧸ Mad mouche (Season 2) [sK3l9nOuyDs].mp4", false, false, false, 5, [], 1, ~U[2020-01-30 15:30:04Z], ~U[2026-01-30 05:56:49Z], ~U[2026-01-30 05:56:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nFlies in a red toy bus and a spider in a yellow toy car have an exciting race.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Mad fly / Mad mouche (Season 2)", "https://www.youtube.com/watch?v=sK3l9nOuyDs", "sK3l9nOuyDs", 119, false, "/downloads/Miniscule Season 2/2020-01-30 Minuscule - Mad fly ⧸ Mad mouche (Season 2)/Minuscule - Mad fly ⧸ Mad mouche (Season 2) [sK3l9nOuyDs].mp4", false, 5, ~U[2020-01-30 15:30:04Z]] 22:56:49.047 [debug] QUERY OK source="sources" db=0.4ms idle=808.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" = ?) [5] 22:56:49.048 [debug] QUERY OK source="media_profiles" db=0.5ms idle=6.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] 22:56:49.049 [debug] QUERY OK source="media_items" db=0.5ms idle=6.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 [89120] 22:56:49.049 [debug] Current batch of media processed. Will check again in 1000ms 22:56:50.050 [debug] Current batch of media processed. Will check again in 1000ms 22:56:51.051 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 299, "filename" => "/downloads/Miniscule Season 2/2020-01-23 Minuscule - Honey fly ⧸ Mouche à miel (Season 2)/Minuscule - Honey fly ⧸ Mouche à miel (Season 2) [AkyZVhpGpvY].mp4", "id" => "AkyZVhpGpvY", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=AkyZVhpGpvY", "playlist_index" => 122, "timestamp" => 1579793400, "title" => "Minuscule - Honey fly / Mouche à miel (Season 2)", "upload_date" => "20200123"} 22:56:51.052 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=816.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" IN (?)) [5] 22:56:51.053 [debug] QUERY OK source="sources" db=0.3ms idle=811.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" = ?) [5] 22:56:51.054 [debug] QUERY OK source="media_items" db=1.0ms idle=579.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-01-23 15:30:00Z], 5] 22:56:51.057 [debug] QUERY OK source="media_items" db=1.9ms idle=581.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Honey fly / Mouche à miel (Season 2)", "7f8ca206-d9ce-437e-9fff-454474b83ad0", "https://www.youtube.com/watch?v=AkyZVhpGpvY", "AkyZVhpGpvY", 299, false, 122, "/downloads/Miniscule Season 2/2020-01-23 Minuscule - Honey fly ⧸ Mouche à miel (Season 2)/Minuscule - Honey fly ⧸ Mouche à miel (Season 2) [AkyZVhpGpvY].mp4", false, false, false, 5, [], 1, ~U[2020-01-23 15:30:00Z], ~U[2026-01-30 05:56:51Z], ~U[2026-01-30 05:56:51Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Honey fly / Mouche à miel (Season 2)", "https://www.youtube.com/watch?v=AkyZVhpGpvY", "AkyZVhpGpvY", 299, false, "/downloads/Miniscule Season 2/2020-01-23 Minuscule - Honey fly ⧸ Mouche à miel (Season 2)/Minuscule - Honey fly ⧸ Mouche à miel (Season 2) [AkyZVhpGpvY].mp4", false, 5, ~U[2020-01-23 15:30:00Z]] 22:56:51.058 [debug] QUERY OK source="sources" db=0.4ms idle=583.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" = ?) [5] 22:56:51.059 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=6.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] 22:56:51.060 [debug] QUERY OK source="media_items" db=0.4ms idle=6.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 [89122] 22:56:51.060 [debug] Current batch of media processed. Will check again in 1000ms 22:56:52.061 [debug] Current batch of media processed. Will check again in 1000ms 22:56:53.062 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA frantic pursuit between flies and a ladybug. Same old, same old. Except that today, the ladybug is as big as a football, and a gang of huge ladybugs is flying along as back-ups. The flies had better behave.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 282, "filename" => "/downloads/Miniscule Season 2/2020-01-16 Minuscule - Fly hunting ⧸ Chasse à mouche (Season 2)/Minuscule - Fly hunting ⧸ Chasse à mouche (Season 2) [T3IcOeZuKHo].mp4", "id" => "T3IcOeZuKHo", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=T3IcOeZuKHo", "playlist_index" => 123, "timestamp" => 1579188601, "title" => "Minuscule - Fly hunting / Chasse à mouche (Season 2)", "upload_date" => "20200116"} 22:56:53.063 [debug] QUERY OK source="sources" db=0.5ms idle=823.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 (?)) [5] 22:56:53.064 [debug] QUERY OK source="sources" db=0.4ms idle=817.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" = ?) [5] 22:56:53.065 [debug] QUERY OK source="media_items" db=1.1ms idle=590.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-01-16 15:30:01Z], 5] 22:56:53.069 [debug] QUERY OK source="media_items" db=2.6ms idle=592.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA frantic pursuit between flies and a ladybug. Same old, same old. Except that today, the ladybug is as big as a football, and a gang of huge ladybugs is flying along as back-ups. The flies had better behave.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Fly hunting / Chasse à mouche (Season 2)", "bc006604-8bff-4f14-a679-c405a3479946", "https://www.youtube.com/watch?v=T3IcOeZuKHo", "T3IcOeZuKHo", 282, false, 123, "/downloads/Miniscule Season 2/2020-01-16 Minuscule - Fly hunting ⧸ Chasse à mouche (Season 2)/Minuscule - Fly hunting ⧸ Chasse à mouche (Season 2) [T3IcOeZuKHo].mp4", false, false, false, 5, [], 1, ~U[2020-01-16 15:30:01Z], ~U[2026-01-30 05:56:53Z], ~U[2026-01-30 05:56:53Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA frantic pursuit between flies and a ladybug. Same old, same old. Except that today, the ladybug is as big as a football, and a gang of huge ladybugs is flying along as back-ups. The flies had better behave.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Fly hunting / Chasse à mouche (Season 2)", "https://www.youtube.com/watch?v=T3IcOeZuKHo", "T3IcOeZuKHo", 282, false, "/downloads/Miniscule Season 2/2020-01-16 Minuscule - Fly hunting ⧸ Chasse à mouche (Season 2)/Minuscule - Fly hunting ⧸ Chasse à mouche (Season 2) [T3IcOeZuKHo].mp4", false, 5, ~U[2020-01-16 15:30:01Z]] 22:56:53.070 [debug] QUERY OK source="sources" db=0.4ms idle=595.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" = ?) [5] 22:56:53.071 [debug] QUERY OK source="media_profiles" db=0.3ms idle=7.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] 22:56:53.072 [debug] QUERY OK source="media_items" db=0.5ms idle=7.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 [89124] 22:56:53.072 [debug] Current batch of media processed. Will check again in 1000ms 22:56:54.073 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nAn ant is carrying a crisp, which wasps soon snatch. After a mad race and a bad fall, our little bug wakes up in a strange universe, where crisps are actually alive.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 295, "filename" => "/downloads/Miniscule Season 2/2020-01-09 Minuscule - Patatas fritas (Season 2)/Minuscule - Patatas fritas (Season 2) [1eojPRKb7bU].mp4", "id" => "1eojPRKb7bU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=1eojPRKb7bU", "playlist_index" => 124, "timestamp" => 1578583800, "title" => "Minuscule - Patatas fritas (Season 2)", "upload_date" => "20200109"} 22:56:54.074 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:54.075 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:56:54.077 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-01-09 15:30:00Z], 5] 22:56:54.081 [debug] QUERY OK source="media_items" db=3.2ms idle=835.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nAn ant is carrying a crisp, which wasps soon snatch. After a mad race and a bad fall, our little bug wakes up in a strange universe, where crisps are actually alive.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Patatas fritas (Season 2)", "2ab02625-678e-40ef-a5b3-536296f758d5", "https://www.youtube.com/watch?v=1eojPRKb7bU", "1eojPRKb7bU", 295, false, 124, "/downloads/Miniscule Season 2/2020-01-09 Minuscule - Patatas fritas (Season 2)/Minuscule - Patatas fritas (Season 2) [1eojPRKb7bU].mp4", false, false, false, 5, [], 1, ~U[2020-01-09 15:30:00Z], ~U[2026-01-30 05:56:54Z], ~U[2026-01-30 05:56:54Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nAn ant is carrying a crisp, which wasps soon snatch. After a mad race and a bad fall, our little bug wakes up in a strange universe, where crisps are actually alive.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Patatas fritas (Season 2)", "https://www.youtube.com/watch?v=1eojPRKb7bU", "1eojPRKb7bU", 295, false, "/downloads/Miniscule Season 2/2020-01-09 Minuscule - Patatas fritas (Season 2)/Minuscule - Patatas fritas (Season 2) [1eojPRKb7bU].mp4", false, 5, ~U[2020-01-09 15:30:00Z]] 22:56:54.082 [debug] QUERY OK source="sources" db=0.4ms idle=833.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" = ?) [5] 22:56:54.082 [debug] QUERY OK source="media_profiles" db=0.4ms idle=7.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] 22:56:54.084 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [89126] 22:56:54.084 [debug] Current batch of media processed. Will check again in 1000ms 22:56:55.085 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn the snowy mountains, a small black spider finds it hard to carry a huge pine cone. She decides to build a suitable means of transportation.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2020-01-02 Minuscule - The sled and the ant ⧸ La luge et la fourmi (Season 2)/Minuscule - The sled and the ant ⧸ La luge et la fourmi (Season 2) [hJclg-5FVEw].mp4", "id" => "hJclg-5FVEw", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=hJclg-5FVEw", "playlist_index" => 125, "timestamp" => 1577979002, "title" => "Minuscule - The sled and the ant / La luge et la fourmi (Season 2)", "upload_date" => "20200102"} 22:56:55.086 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:55.087 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1004.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" = ?) [5] 22:56:55.089 [debug] QUERY OK source="media_items" db=1.3ms idle=1003.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-01-02 15:30:02Z], 5] 22:56:55.095 [debug] QUERY OK source="media_items" db=5.6ms idle=845.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn the snowy mountains, a small black spider finds it hard to carry a huge pine cone. She decides to build a suitable means of transportation.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The sled and the ant / La luge et la fourmi (Season 2)", "face8211-852b-4e7e-883b-c60afd9bae44", "https://www.youtube.com/watch?v=hJclg-5FVEw", "hJclg-5FVEw", 119, false, 125, "/downloads/Miniscule Season 2/2020-01-02 Minuscule - The sled and the ant ⧸ La luge et la fourmi (Season 2)/Minuscule - The sled and the ant ⧸ La luge et la fourmi (Season 2) [hJclg-5FVEw].mp4", false, false, false, 5, [], 1, ~U[2020-01-02 15:30:02Z], ~U[2026-01-30 05:56:55Z], ~U[2026-01-30 05:56:55Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn the snowy mountains, a small black spider finds it hard to carry a huge pine cone. She decides to build a suitable means of transportation.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The sled and the ant / La luge et la fourmi (Season 2)", "https://www.youtube.com/watch?v=hJclg-5FVEw", "hJclg-5FVEw", 119, false, "/downloads/Miniscule Season 2/2020-01-02 Minuscule - The sled and the ant ⧸ La luge et la fourmi (Season 2)/Minuscule - The sled and the ant ⧸ La luge et la fourmi (Season 2) [hJclg-5FVEw].mp4", false, 5, ~U[2020-01-02 15:30:02Z]] 22:56:55.096 [debug] QUERY OK source="sources" db=0.4ms idle=844.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" = ?) [5] 22:56:55.097 [debug] QUERY OK source="media_profiles" db=0.2ms idle=10.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] 22:56:55.098 [debug] QUERY OK source="media_items" db=0.6ms idle=9.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 [89128] 22:56:55.098 [debug] Current batch of media processed. Will check again in 1000ms 22:56:56.099 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nWasps pinch a carrot from a snowman and unwittingly annoy a centipede.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 119, "filename" => "/downloads/Miniscule Season 2/2019-12-26 Minuscule - Brooms sweep ⧸ Coup de balais (Season 2)/Minuscule - Brooms sweep ⧸ Coup de balais (Season 2) [nQ1-1C4Be_E].mp4", "id" => "nQ1-1C4Be_E", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=nQ1-1C4Be_E", "playlist_index" => 126, "timestamp" => 1577374204, "title" => "Minuscule - Brooms sweep / Coup de balais (Season 2)", "upload_date" => "20191226"} 22:56:56.100 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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 (?)) [5] 22:56:56.101 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" = ?) [5] 22:56:56.102 [debug] QUERY OK source="media_items" db=1.0ms idle=1003.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2019-12-26 15:30:04Z], 5] 22:56:56.152 [debug] QUERY OK source="media_items" db=48.7ms idle=856.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nWasps pinch a carrot from a snowman and unwittingly annoy a centipede.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Brooms sweep / Coup de balais (Season 2)", "1eb643e6-fe30-4b74-a5da-1ccdb75a1fa7", "https://www.youtube.com/watch?v=nQ1-1C4Be_E", "nQ1-1C4Be_E", 119, false, 126, "/downloads/Miniscule Season 2/2019-12-26 Minuscule - Brooms sweep ⧸ Coup de balais (Season 2)/Minuscule - Brooms sweep ⧸ Coup de balais (Season 2) [nQ1-1C4Be_E].mp4", false, false, false, 5, [], 1, ~U[2019-12-26 15:30:04Z], ~U[2026-01-30 05:56:56Z], ~U[2026-01-30 05:56:56Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nWasps pinch a carrot from a snowman and unwittingly annoy a centipede.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Brooms sweep / Coup de balais (Season 2)", "https://www.youtube.com/watch?v=nQ1-1C4Be_E", "nQ1-1C4Be_E", 119, false, "/downloads/Miniscule Season 2/2019-12-26 Minuscule - Brooms sweep ⧸ Coup de balais (Season 2)/Minuscule - Brooms sweep ⧸ Coup de balais (Season 2) [nQ1-1C4Be_E].mp4", false, 5, ~U[2019-12-26 15:30:04Z]] 22:56:56.153 [debug] QUERY OK source="sources" db=0.4ms idle=899.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" = ?) [5] 22:56:56.154 [debug] QUERY OK source="media_profiles" db=0.3ms idle=53.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] 22:56:56.155 [debug] QUERY OK source="media_items" db=0.6ms idle=53.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 [89129] 22:56:56.155 [debug] Current batch of media processed. Will check again in 1000ms 22:56:57.156 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #NCQhBDMzex8/youtube video #NCQhBDMzex8 [NCQhBDMzex8].NA", "id" => "NCQhBDMzex8", "original_url" => "https://www.youtube.com/watch?v=NCQhBDMzex8", "playlist_index" => 127, "title" => "youtube video #NCQhBDMzex8"} 22:56:57.157 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" IN (?)) [5] 22:56:57.157 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #KC87ualJsNY/youtube video #KC87ualJsNY [KC87ualJsNY].NA", "id" => "KC87ualJsNY", "original_url" => "https://www.youtube.com/watch?v=KC87ualJsNY", "playlist_index" => 128, "title" => "youtube video #KC87ualJsNY"} 22:56:57.158 [debug] QUERY OK source="sources" db=0.5ms idle=1003.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" IN (?)) [5] 22:56:57.159 [debug] Current batch of media processed. Will check again in 1000ms 22:56:58.160 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nOn a little country road, insects from all over join to watch an annual race. As soon as it starts, these 'wacky racers' will try to do everything they can to arrive first.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 292, "filename" => "/downloads/Miniscule Season 2/2019-12-05 Minuscule - At full speed ⧸ à Toute Berzingue (Season 2)/Minuscule - At full speed ⧸ à Toute Berzingue (Season 2) [Zh10U1WWXHI].mp4", "id" => "Zh10U1WWXHI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Zh10U1WWXHI", "playlist_index" => 129, "timestamp" => 1575559802, "title" => "Minuscule - At full speed / à Toute Berzingue (Season 2)", "upload_date" => "20191205"} 22:56:58.161 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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 (?)) [5] 22:56:58.162 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:56:58.163 [debug] QUERY OK source="media_items" db=1.1ms idle=912.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2019-12-05 15:30:02Z], 5] 22:56:58.167 [debug] QUERY OK source="media_items" db=2.4ms idle=906.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nOn a little country road, insects from all over join to watch an annual race. As soon as it starts, these 'wacky racers' will try to do everything they can to arrive first.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - At full speed / à Toute Berzingue (Season 2)", "6e9b8139-9e9e-47b7-a691-537b70ac4194", "https://www.youtube.com/watch?v=Zh10U1WWXHI", "Zh10U1WWXHI", 292, false, 129, "/downloads/Miniscule Season 2/2019-12-05 Minuscule - At full speed ⧸ à Toute Berzingue (Season 2)/Minuscule - At full speed ⧸ à Toute Berzingue (Season 2) [Zh10U1WWXHI].mp4", false, false, false, 5, [], 1, ~U[2019-12-05 15:30:02Z], ~U[2026-01-30 05:56:58Z], ~U[2026-01-30 05:56:58Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nOn a little country road, insects from all over join to watch an annual race. As soon as it starts, these 'wacky racers' will try to do everything they can to arrive first.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - At full speed / à Toute Berzingue (Season 2)", "https://www.youtube.com/watch?v=Zh10U1WWXHI", "Zh10U1WWXHI", 292, false, "/downloads/Miniscule Season 2/2019-12-05 Minuscule - At full speed ⧸ à Toute Berzingue (Season 2)/Minuscule - At full speed ⧸ à Toute Berzingue (Season 2) [Zh10U1WWXHI].mp4", false, 5, ~U[2019-12-05 15:30:02Z]] 22:56:58.168 [debug] QUERY OK source="sources" db=0.3ms idle=693.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" = ?) [5] 22:56:58.168 [debug] QUERY OK source="media_profiles" db=0.3ms idle=6.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] 22:56:58.169 [debug] QUERY OK source="media_items" db=0.6ms idle=6.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 [89130] 22:56:58.169 [debug] Current batch of media processed. Will check again in 1000ms 22:56:59.171 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #4iAzXbusMOU/youtube video #4iAzXbusMOU [4iAzXbusMOU].NA", "id" => "4iAzXbusMOU", "original_url" => "https://www.youtube.com/watch?v=4iAzXbusMOU", "playlist_index" => 130, "title" => "youtube video #4iAzXbusMOU"} 22:56:59.172 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:56:59.172 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #IcKQxmy1LXM/youtube video #IcKQxmy1LXM [IcKQxmy1LXM].NA", "id" => "IcKQxmy1LXM", "original_url" => "https://www.youtube.com/watch?v=IcKQxmy1LXM", "playlist_index" => 131, "title" => "youtube video #IcKQxmy1LXM"} 22:56:59.173 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" IN (?)) [5] 22:56:59.174 [debug] Current batch of media processed. Will check again in 1000ms 22:57:00.175 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #7OGCpZs50RM/youtube video #7OGCpZs50RM [7OGCpZs50RM].NA", "id" => "7OGCpZs50RM", "original_url" => "https://www.youtube.com/watch?v=7OGCpZs50RM", "playlist_index" => 132, "title" => "youtube video #7OGCpZs50RM"} 22:57:00.176 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:57:00.176 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #Ftd4VjMTwPE/youtube video #Ftd4VjMTwPE [Ftd4VjMTwPE].NA", "id" => "Ftd4VjMTwPE", "original_url" => "https://www.youtube.com/watch?v=Ftd4VjMTwPE", "playlist_index" => 133, "title" => "youtube video #Ftd4VjMTwPE"} 22:57:00.177 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:57:00.177 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #LGypnOHysp4/youtube video #LGypnOHysp4 [LGypnOHysp4].NA", "id" => "LGypnOHysp4", "original_url" => "https://www.youtube.com/watch?v=LGypnOHysp4", "playlist_index" => 134, "title" => "youtube video #LGypnOHysp4"} 22:57:00.178 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=923.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" IN (?)) [5] 22:57:00.178 [debug] Current batch of media processed. Will check again in 1000ms 22:57:00.969 [info] {"source":"oban","duration":406,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:57:01.179 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #p3LrhFXmqEQ/youtube video #p3LrhFXmqEQ [p3LrhFXmqEQ].NA", "id" => "p3LrhFXmqEQ", "original_url" => "https://www.youtube.com/watch?v=p3LrhFXmqEQ", "playlist_index" => 135, "title" => "youtube video #p3LrhFXmqEQ"} 22:57:01.180 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=1002.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 (?)) [5] 22:57:01.181 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #DkV21GAYHno/youtube video #DkV21GAYHno [DkV21GAYHno].NA", "id" => "DkV21GAYHno", "original_url" => "https://www.youtube.com/watch?v=DkV21GAYHno", "playlist_index" => 136, "title" => "youtube video #DkV21GAYHno"} 22:57:01.182 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" IN (?)) [5] 22:57:01.182 [debug] Current batch of media processed. Will check again in 1000ms 22:57:02.183 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #YGwbxD3Cs40/youtube video #YGwbxD3Cs40 [YGwbxD3Cs40].NA", "id" => "YGwbxD3Cs40", "original_url" => "https://www.youtube.com/watch?v=YGwbxD3Cs40", "playlist_index" => 137, "title" => "youtube video #YGwbxD3Cs40"} 22:57:02.184 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1214.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 (?)) [5] 22:57:02.184 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #jiIs6ZvMimg/youtube video #jiIs6ZvMimg [jiIs6ZvMimg].NA", "id" => "jiIs6ZvMimg", "original_url" => "https://www.youtube.com/watch?v=jiIs6ZvMimg", "playlist_index" => 138, "title" => "youtube video #jiIs6ZvMimg"} 22:57:02.185 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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 (?)) [5] 22:57:02.185 [debug] Current batch of media processed. Will check again in 1000ms 22:57:02.268 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1769752622268481316,"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"]} 22:57:02.269 [debug] QUERY OK source="media_items" db=0.5ms idle=1002.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" = ?) [89022] 22:57:02.270 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:57:02.270 [debug] QUERY OK source="sources" db=0.4ms idle=86.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" = ?) [5] 22:57:02.271 [debug] QUERY OK source="media_profiles" db=0.3ms idle=85.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] 22:57:02.272 [debug] QUERY OK source="media_items" db=0.5ms idle=9.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 [89022] 22:57:02.273 [debug] QUERY OK source="media_metadata" db=0.2ms idle=5.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" = ?) [89022] 22:57:02.274 [debug] QUERY OK source="media_profiles" db=0.3ms 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] 22:57:02.275 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:57:02.275 [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 [] 22:57:02.276 [debug] Running yt-dlp command for action: get_downloadable_status 22:57:02.297 [debug] QUERY OK source="settings" db=0.1ms idle=24.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 [] 22:57:02.297 [debug] QUERY OK source="settings" db=0.1ms idle=23.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 [] 22:57:02.298 [debug] QUERY OK source="settings" db=0.1ms idle=23.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 [] 22:57:02.298 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/2a/7c/2a7c75b8febcd889e06a32943b7bf2419a00fe95a99f4f243d00c5dd18130fd3.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:57:03.186 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #KrWGAio3HOE/youtube video #KrWGAio3HOE [KrWGAio3HOE].NA", "id" => "KrWGAio3HOE", "original_url" => "https://www.youtube.com/watch?v=KrWGAio3HOE", "playlist_index" => 139, "title" => "youtube video #KrWGAio3HOE"} 22:57:03.187 [debug] QUERY OK source="sources" db=0.5ms idle=911.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 (?)) [5] 22:57:03.187 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #0JzT2QfhB78/youtube video #0JzT2QfhB78 [0JzT2QfhB78].NA", "id" => "0JzT2QfhB78", "original_url" => "https://www.youtube.com/watch?v=0JzT2QfhB78", "playlist_index" => 140, "title" => "youtube video #0JzT2QfhB78"} 22:57:03.188 [debug] QUERY OK source="sources" db=0.4ms idle=912.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" IN (?)) [5] 22:57:03.189 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #pcLuhj3g5ro/youtube video #pcLuhj3g5ro [pcLuhj3g5ro].NA", "id" => "pcLuhj3g5ro", "original_url" => "https://www.youtube.com/watch?v=pcLuhj3g5ro", "playlist_index" => 141, "title" => "youtube video #pcLuhj3g5ro"} 22:57:03.189 [debug] QUERY OK source="sources" db=0.4ms idle=891.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" IN (?)) [5] 22:57:03.190 [debug] Current batch of media processed. Will check again in 1000ms 22:57:04.191 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #1v1_xx2U7NY/youtube video #1v1_xx2U7NY [1v1_xx2U7NY].NA", "id" => "1v1_xx2U7NY", "original_url" => "https://www.youtube.com/watch?v=1v1_xx2U7NY", "playlist_index" => 142, "title" => "youtube video #1v1_xx2U7NY"} 22:57:04.192 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" IN (?)) [5] 22:57:04.192 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #BrE9urBDZro/youtube video #BrE9urBDZro [BrE9urBDZro].NA", "id" => "BrE9urBDZro", "original_url" => "https://www.youtube.com/watch?v=BrE9urBDZro", "playlist_index" => 143, "title" => "youtube video #BrE9urBDZro"} 22:57:04.193 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" IN (?)) [5] 22:57:04.193 [debug] Current batch of media processed. Will check again in 1000ms 22:57:05.194 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #9vUxUhyQgmY/youtube video #9vUxUhyQgmY [9vUxUhyQgmY].NA", "id" => "9vUxUhyQgmY", "original_url" => "https://www.youtube.com/watch?v=9vUxUhyQgmY", "playlist_index" => 144, "title" => "youtube video #9vUxUhyQgmY"} 22:57:05.195 [debug] QUERY OK source="sources" db=0.4ms idle=1002.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 (?)) [5] 22:57:05.195 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #mlqbvQyx0No/youtube video #mlqbvQyx0No [mlqbvQyx0No].NA", "id" => "mlqbvQyx0No", "original_url" => "https://www.youtube.com/watch?v=mlqbvQyx0No", "playlist_index" => 145, "title" => "youtube video #mlqbvQyx0No"} 22:57:05.196 [debug] QUERY OK source="sources" db=0.4ms idle=1002.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" IN (?)) [5] 22:57:05.196 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #OJ7qySf0Do0/youtube video #OJ7qySf0Do0 [OJ7qySf0Do0].NA", "id" => "OJ7qySf0Do0", "original_url" => "https://www.youtube.com/watch?v=OJ7qySf0Do0", "playlist_index" => 146, "title" => "youtube video #OJ7qySf0Do0"} 22:57:05.197 [debug] QUERY OK source="sources" db=0.5ms idle=930.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 (?)) [5] 22:57:05.198 [debug] Current batch of media processed. Will check again in 1000ms 22:57:05.880 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/2a/7c/2a7c75b8febcd889e06a32943b7bf2419a00fe95a99f4f243d00c5dd18130fd3.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 22:57:05.881 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 22:57:05.883 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":3613713,"event":"job:exception","queue_time":529464,"attempt":4,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:57:06.199 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #c_N63x7TiGY/youtube video #c_N63x7TiGY [c_N63x7TiGY].NA", "id" => "c_N63x7TiGY", "original_url" => "https://www.youtube.com/watch?v=c_N63x7TiGY", "playlist_index" => 147, "title" => "youtube video #c_N63x7TiGY"} 22:57:06.200 [debug] QUERY OK source="sources" db=0.5ms idle=1002.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" IN (?)) [5] 22:57:06.201 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #_jFN94Z8Ju8/youtube video #_jFN94Z8Ju8 [_jFN94Z8Ju8].NA", "id" => "_jFN94Z8Ju8", "original_url" => "https://www.youtube.com/watch?v=_jFN94Z8Ju8", "playlist_index" => 148, "title" => "youtube video #_jFN94Z8Ju8"} 22:57:06.201 [debug] QUERY OK source="sources" db=0.6ms idle=932.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 (?)) [5] 22:57:06.202 [debug] Current batch of media processed. Will check again in 1000ms 22:57:07.203 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #F-Ts_1qlfQ4/youtube video #F-Ts_1qlfQ4 [F-Ts_1qlfQ4].NA", "id" => "F-Ts_1qlfQ4", "original_url" => "https://www.youtube.com/watch?v=F-Ts_1qlfQ4", "playlist_index" => 149, "title" => "youtube video #F-Ts_1qlfQ4"} 22:57:07.204 [debug] QUERY OK source="sources" db=0.5ms idle=1313.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" IN (?)) [5] 22:57:07.204 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #1YrfH34Wjeg/youtube video #1YrfH34Wjeg [1YrfH34Wjeg].NA", "id" => "1YrfH34Wjeg", "original_url" => "https://www.youtube.com/watch?v=1YrfH34Wjeg", "playlist_index" => 150, "title" => "youtube video #1YrfH34Wjeg"} 22:57:07.205 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1004.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" IN (?)) [5] 22:57:07.205 [debug] Current batch of media processed. Will check again in 1000ms 22:57:08.207 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #fBEOZDVFQ20/youtube video #fBEOZDVFQ20 [fBEOZDVFQ20].NA", "id" => "fBEOZDVFQ20", "original_url" => "https://www.youtube.com/watch?v=fBEOZDVFQ20", "playlist_index" => 151, "title" => "youtube video #fBEOZDVFQ20"} 22:57:08.208 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" IN (?)) [5] 22:57:08.208 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #W6r6yWIQGT8/youtube video #W6r6yWIQGT8 [W6r6yWIQGT8].NA", "id" => "W6r6yWIQGT8", "original_url" => "https://www.youtube.com/watch?v=W6r6yWIQGT8", "playlist_index" => 152, "title" => "youtube video #W6r6yWIQGT8"} 22:57:08.209 [debug] QUERY OK source="sources" db=0.2ms idle=1003.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" IN (?)) [5] 22:57:08.209 [debug] Current batch of media processed. Will check again in 1000ms 22:57:09.210 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #es1mj1z2ufA/youtube video #es1mj1z2ufA [es1mj1z2ufA].NA", "id" => "es1mj1z2ufA", "original_url" => "https://www.youtube.com/watch?v=es1mj1z2ufA", "playlist_index" => 153, "title" => "youtube video #es1mj1z2ufA"} 22:57:09.211 [debug] QUERY OK source="sources" db=0.6ms idle=1736.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 (?)) [5] 22:57:09.211 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #nAH2ljPh_oM/youtube video #nAH2ljPh_oM [nAH2ljPh_oM].NA", "id" => "nAH2ljPh_oM", "original_url" => "https://www.youtube.com/watch?v=nAH2ljPh_oM", "playlist_index" => 154, "title" => "youtube video #nAH2ljPh_oM"} 22:57:09.212 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" IN (?)) [5] 22:57:09.212 [debug] Current batch of media processed. Will check again in 1000ms 22:57:10.213 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #VljY7Zp1stk/youtube video #VljY7Zp1stk [VljY7Zp1stk].NA", "id" => "VljY7Zp1stk", "original_url" => "https://www.youtube.com/watch?v=VljY7Zp1stk", "playlist_index" => 155, "title" => "youtube video #VljY7Zp1stk"} 22:57:10.214 [debug] QUERY OK source="sources" db=0.4ms idle=1002.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" IN (?)) [5] 22:57:10.214 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #plct9_romzE/youtube video #plct9_romzE [plct9_romzE].NA", "id" => "plct9_romzE", "original_url" => "https://www.youtube.com/watch?v=plct9_romzE", "playlist_index" => 156, "title" => "youtube video #plct9_romzE"} 22:57:10.215 [debug] QUERY OK source="sources" db=0.3ms idle=1002.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 (?)) [5] 22:57:10.215 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #deE1efjl1l0/youtube video #deE1efjl1l0 [deE1efjl1l0].NA", "id" => "deE1efjl1l0", "original_url" => "https://www.youtube.com/watch?v=deE1efjl1l0", "playlist_index" => 157, "title" => "youtube video #deE1efjl1l0"} 22:57:10.216 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=936.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" IN (?)) [5] 22:57:10.216 [debug] Current batch of media processed. Will check again in 1000ms 22:57:11.217 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #f81b580GEWM/youtube video #f81b580GEWM [f81b580GEWM].NA", "id" => "f81b580GEWM", "original_url" => "https://www.youtube.com/watch?v=f81b580GEWM", "playlist_index" => 158, "title" => "youtube video #f81b580GEWM"} 22:57:11.218 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:57:11.219 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #wLl4-aJPIMk/youtube video #wLl4-aJPIMk [wLl4-aJPIMk].NA", "id" => "wLl4-aJPIMk", "original_url" => "https://www.youtube.com/watch?v=wLl4-aJPIMk", "playlist_index" => 159, "title" => "youtube video #wLl4-aJPIMk"} 22:57:11.220 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" IN (?)) [5] 22:57:11.220 [debug] Current batch of media processed. Will check again in 1000ms 22:57:12.221 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "Minuscule - A Christmas Apple / La Pomme de Noël (Season 2)\n\n--\nABONNEZ-VOUS ICI / SUBSCRIBE HERE : \nhttp://bit.ly/1cPzvQP\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 139, "filename" => "/downloads/Miniscule Season 2/2014-12-19 Minuscule - A Christmas Apple ⧸ La Pomme de Noël (Season 2)/Minuscule - A Christmas Apple ⧸ La Pomme de Noël (Season 2) [-wL4RbkOT1o].mp4", "id" => "-wL4RbkOT1o", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=-wL4RbkOT1o", "playlist_index" => 160, "timestamp" => 1419010172, "title" => "Minuscule - A Christmas Apple / La Pomme de Noël (Season 2)", "upload_date" => "20141219"} 22:57:12.222 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" IN (?)) [5] 22:57:12.222 [debug] QUERY OK source="sources" db=0.2ms idle=1002.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" = ?) [5] 22:57:12.224 [debug] QUERY OK source="media_items" db=1.0ms idle=939.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2014-12-19 17:29:32Z], 5] 22:57:12.226 [debug] QUERY OK source="media_items" db=1.7ms idle=934.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Minuscule - A Christmas Apple / La Pomme de Noël (Season 2)\n\n--\nABONNEZ-VOUS ICI / SUBSCRIBE HERE : \nhttp://bit.ly/1cPzvQP\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A Christmas Apple / La Pomme de Noël (Season 2)", "19508b8e-06a3-4f47-991d-4ae8c0065493", "https://www.youtube.com/watch?v=-wL4RbkOT1o", "-wL4RbkOT1o", 139, false, 160, "/downloads/Miniscule Season 2/2014-12-19 Minuscule - A Christmas Apple ⧸ La Pomme de Noël (Season 2)/Minuscule - A Christmas Apple ⧸ La Pomme de Noël (Season 2) [-wL4RbkOT1o].mp4", false, false, false, 5, [], 1, ~U[2014-12-19 17:29:32Z], ~U[2026-01-30 05:57:12Z], ~U[2026-01-30 05:57:12Z], "Minuscule - A Christmas Apple / La Pomme de Noël (Season 2)\n\n--\nABONNEZ-VOUS ICI / SUBSCRIBE HERE : \nhttp://bit.ly/1cPzvQP\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A Christmas Apple / La Pomme de Noël (Season 2)", "https://www.youtube.com/watch?v=-wL4RbkOT1o", "-wL4RbkOT1o", 139, false, "/downloads/Miniscule Season 2/2014-12-19 Minuscule - A Christmas Apple ⧸ La Pomme de Noël (Season 2)/Minuscule - A Christmas Apple ⧸ La Pomme de Noël (Season 2) [-wL4RbkOT1o].mp4", false, 5, ~U[2014-12-19 17:29:32Z]] 22:57:12.227 [debug] QUERY OK source="sources" db=0.2ms idle=752.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" = ?) [5] 22:57:12.227 [debug] QUERY OK source="media_profiles" db=0.2ms idle=5.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] 22:57:12.228 [debug] QUERY OK source="media_items" db=0.5ms idle=5.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 [89134] 22:57:12.228 [debug] Current batch of media processed. Will check again in 1000ms 22:57:13.229 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #vovKjkAmAWQ/youtube video #vovKjkAmAWQ [vovKjkAmAWQ].NA", "id" => "vovKjkAmAWQ", "original_url" => "https://www.youtube.com/watch?v=vovKjkAmAWQ", "playlist_index" => 161, "title" => "youtube video #vovKjkAmAWQ"} 22:57:13.230 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1002.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 (?)) [5] 22:57:13.230 [debug] Current batch of media processed. Will check again in 1000ms 22:57:14.231 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 861, "filename" => "/downloads/Miniscule Season 2/2016-11-14 Minuscule - Compilation #2/Minuscule - Compilation #2 [C35BATa1Dp4].mkv", "id" => "C35BATa1Dp4", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=C35BATa1Dp4", "playlist_index" => 162, "timestamp" => 1479138612, "title" => "Minuscule - Compilation #2", "upload_date" => "20161114"} 22:57:14.232 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1001.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" IN (?)) [5] 22:57:14.233 [debug] QUERY OK source="sources" db=0.4ms idle=945.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" = ?) [5] 22:57:14.235 [debug] QUERY OK source="media_items" db=1.5ms queue=0.1ms idle=939.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2016-11-14 15:50:12Z], 5] 22:57:14.249 [debug] QUERY OK source="media_items" db=12.1ms idle=762.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Compilation #2", "cd1e0569-e69e-404f-8c22-d375e708b3f3", "https://www.youtube.com/watch?v=C35BATa1Dp4", "C35BATa1Dp4", 861, false, 162, "/downloads/Miniscule Season 2/2016-11-14 Minuscule - Compilation #2/Minuscule - Compilation #2 [C35BATa1Dp4].mkv", false, false, false, 5, [], 1, ~U[2016-11-14 15:50:12Z], ~U[2026-01-30 05:57:14Z], ~U[2026-01-30 05:57:14Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Compilation #2", "https://www.youtube.com/watch?v=C35BATa1Dp4", "C35BATa1Dp4", 861, false, "/downloads/Miniscule Season 2/2016-11-14 Minuscule - Compilation #2/Minuscule - Compilation #2 [C35BATa1Dp4].mkv", false, 5, ~U[2016-11-14 15:50:12Z]] 22:57:14.250 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=775.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" = ?) [5] 22:57:14.250 [debug] QUERY OK source="media_profiles" db=0.3ms idle=17.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] 22:57:14.252 [debug] QUERY OK source="media_items" db=0.6ms idle=17.5ms 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 [89136] 22:57:14.252 [debug] Current batch of media processed. Will check again in 1000ms 22:57:15.253 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #KgnwD2EGbvU/youtube video #KgnwD2EGbvU [KgnwD2EGbvU].NA", "id" => "KgnwD2EGbvU", "original_url" => "https://www.youtube.com/watch?v=KgnwD2EGbvU", "playlist_index" => 163, "title" => "youtube video #KgnwD2EGbvU"} 22:57:15.254 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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 (?)) [5] 22:57:15.254 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #72a6uPQlT0g/youtube video #72a6uPQlT0g [72a6uPQlT0g].NA", "id" => "72a6uPQlT0g", "original_url" => "https://www.youtube.com/watch?v=72a6uPQlT0g", "playlist_index" => 164, "title" => "youtube video #72a6uPQlT0g"} 22:57:15.255 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" IN (?)) [5] 22:57:15.256 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #RFhmAnbVBZU/youtube video #RFhmAnbVBZU [RFhmAnbVBZU].NA", "id" => "RFhmAnbVBZU", "original_url" => "https://www.youtube.com/watch?v=RFhmAnbVBZU", "playlist_index" => 165, "title" => "youtube video #RFhmAnbVBZU"} 22:57:15.256 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" IN (?)) [5] 22:57:15.257 [debug] Current batch of media processed. Will check again in 1000ms 22:57:15.867 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:16.258 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #DUKw2KZMchY/youtube video #DUKw2KZMchY [DUKw2KZMchY].NA", "id" => "DUKw2KZMchY", "original_url" => "https://www.youtube.com/watch?v=DUKw2KZMchY", "playlist_index" => 166, "title" => "youtube video #DUKw2KZMchY"} 22:57:16.259 [debug] QUERY OK source="sources" db=0.5ms idle=1003.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 (?)) [5] 22:57:16.259 [debug] Current batch of media processed. Will check again in 1000ms 22:57:17.261 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 306, "filename" => "/downloads/Miniscule Season 2/2014-11-03 Minuscule - Top Tabasco (Season 2)/Minuscule - Top Tabasco (Season 2) [T4qDSRIlR78].mp4", "id" => "T4qDSRIlR78", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=T4qDSRIlR78", "playlist_index" => 167, "timestamp" => 1415022988, "title" => "Minuscule - Top Tabasco (Season 2)", "upload_date" => "20141103"} 22:57:17.262 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1394.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 (?)) [5] 22:57:17.263 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:57:17.264 [debug] QUERY OK source="media_items" db=1.0ms idle=970.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2014-11-03 13:56:28Z], 5] 22:57:17.268 [debug] QUERY OK source="media_items" db=2.3ms idle=965.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Top Tabasco (Season 2)", "b7aedf8b-b3e2-484f-adf1-44fe1102698e", "https://www.youtube.com/watch?v=T4qDSRIlR78", "T4qDSRIlR78", 306, false, 167, "/downloads/Miniscule Season 2/2014-11-03 Minuscule - Top Tabasco (Season 2)/Minuscule - Top Tabasco (Season 2) [T4qDSRIlR78].mp4", false, false, false, 5, [], 1, ~U[2014-11-03 13:56:28Z], ~U[2026-01-30 05:57:17Z], ~U[2026-01-30 05:57:17Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Top Tabasco (Season 2)", "https://www.youtube.com/watch?v=T4qDSRIlR78", "T4qDSRIlR78", 306, false, "/downloads/Miniscule Season 2/2014-11-03 Minuscule - Top Tabasco (Season 2)/Minuscule - Top Tabasco (Season 2) [T4qDSRIlR78].mp4", false, 5, ~U[2014-11-03 13:56:28Z]] 22:57:17.269 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=794.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" = ?) [5] 22:57:17.269 [debug] QUERY OK source="media_profiles" db=0.5ms 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] 22:57:17.270 [debug] QUERY OK source="media_items" db=0.6ms 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 [89155] 22:57:17.271 [debug] Current batch of media processed. Will check again in 1000ms 22:57:18.272 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #EHh6g45XHRI/youtube video #EHh6g45XHRI [EHh6g45XHRI].NA", "id" => "EHh6g45XHRI", "original_url" => "https://www.youtube.com/watch?v=EHh6g45XHRI", "playlist_index" => 168, "title" => "youtube video #EHh6g45XHRI"} 22:57:18.273 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:57:18.273 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #LGDQ8FrUBvg/youtube video #LGDQ8FrUBvg [LGDQ8FrUBvg].NA", "id" => "LGDQ8FrUBvg", "original_url" => "https://www.youtube.com/watch?v=LGDQ8FrUBvg", "playlist_index" => 169, "title" => "youtube video #LGDQ8FrUBvg"} 22:57:18.274 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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 (?)) [5] 22:57:18.274 [debug] Current batch of media processed. Will check again in 1000ms 22:57:19.275 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.25, "description" => "Join Minuscule on Facebook and Instagram :\n Facebook: https://www.facebook.com/minusculefilm/\nInstagram: https://www.instagram.com/minuscule.officiel/\n\nMinuscule - C'est Noël / Come Christmas - ABONNEZ-VOUS ICI / SUBSCRIBE HERE : \nhttp://bit.ly/1cPzvQP\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l'impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d'insectes en images de synthèse. #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 463, "filename" => "/downloads/Miniscule Season 2/2017-12-24 Minuscule - C'est Noël ⧸ Come Christmas (Season 1)/Minuscule - C'est Noël ⧸ Come Christmas (Season 1) [wjiQFluWuv0].mp4", "id" => "wjiQFluWuv0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=wjiQFluWuv0", "playlist_index" => 170, "timestamp" => 1514127604, "title" => "Minuscule - C'est Noël / Come Christmas (Season 1)", "upload_date" => "20171224"} 22:57:19.276 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1002.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 (?)) [5] 22:57:19.277 [debug] QUERY OK source="sources" db=0.3ms idle=1002.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" = ?) [5] 22:57:19.278 [debug] QUERY OK source="media_items" db=0.9ms idle=979.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2017-12-24 15:00:04Z], 5] 22:57:19.281 [debug] QUERY OK source="media_items" db=2.3ms idle=974.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Join Minuscule on Facebook and Instagram :\n Facebook: https://www.facebook.com/minusculefilm/\nInstagram: https://www.instagram.com/minuscule.officiel/\n\nMinuscule - C'est Noël / Come Christmas - ABONNEZ-VOUS ICI / SUBSCRIBE HERE : \nhttp://bit.ly/1cPzvQP\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l'impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d'insectes en images de synthèse. #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - C'est Noël / Come Christmas (Season 1)", "ba60b286-9097-4729-8121-0549376ec8de", "https://www.youtube.com/watch?v=wjiQFluWuv0", "wjiQFluWuv0", 463, false, 170, "/downloads/Miniscule Season 2/2017-12-24 Minuscule - C'est Noël ⧸ Come Christmas (Season 1)/Minuscule - C'est Noël ⧸ Come Christmas (Season 1) [wjiQFluWuv0].mp4", false, false, false, 5, [], 1, ~U[2017-12-24 15:00:04Z], ~U[2026-01-30 05:57:19Z], ~U[2026-01-30 05:57:19Z], "Join Minuscule on Facebook and Instagram :\n Facebook: https://www.facebook.com/minusculefilm/\nInstagram: https://www.instagram.com/minuscule.officiel/\n\nMinuscule - C'est Noël / Come Christmas - ABONNEZ-VOUS ICI / SUBSCRIBE HERE : \nhttp://bit.ly/1cPzvQP\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l'impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d'insectes en images de synthèse. #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - C'est Noël / Come Christmas (Season 1)", "https://www.youtube.com/watch?v=wjiQFluWuv0", "wjiQFluWuv0", 463, false, "/downloads/Miniscule Season 2/2017-12-24 Minuscule - C'est Noël ⧸ Come Christmas (Season 1)/Minuscule - C'est Noël ⧸ Come Christmas (Season 1) [wjiQFluWuv0].mp4", false, 5, ~U[2017-12-24 15:00:04Z]] 22:57:19.282 [debug] QUERY OK source="sources" db=0.4ms idle=807.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" = ?) [5] 22:57:19.283 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=6.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] 22:57:19.284 [debug] QUERY OK source="media_items" db=0.5ms idle=6.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 [89206] 22:57:19.284 [debug] Current batch of media processed. Will check again in 1000ms 22:57:20.285 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #mH6kReHiCeY/youtube video #mH6kReHiCeY [mH6kReHiCeY].NA", "id" => "mH6kReHiCeY", "original_url" => "https://www.youtube.com/watch?v=mH6kReHiCeY", "playlist_index" => 171, "title" => "youtube video #mH6kReHiCeY"} 22:57:20.286 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:57:20.286 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #KvULGqXfofY/youtube video #KvULGqXfofY [KvULGqXfofY].NA", "id" => "KvULGqXfofY", "original_url" => "https://www.youtube.com/watch?v=KvULGqXfofY", "playlist_index" => 172, "title" => "youtube video #KvULGqXfofY"} 22:57:20.287 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:57:20.288 [debug] Current batch of media processed. Will check again in 1000ms 22:57:21.289 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.25, "description" => "Join Minuscule on Facebook and Instagram:\nFacebook: https://www.facebook.com/minusculefilm/\nInstagram: https://www.instagram.com/minuscule.officiel/\n--\nABONNEZ-VOUS ICI / SUBSCRIBE HERE: \nhttp://bit.ly/1cPzvQP\n\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l'impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d'insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 443, "filename" => "/downloads/Miniscule Season 2/2017-07-19 Minuscule - Bananes ⧸ Bananas (Season 1)/Minuscule - Bananes ⧸ Bananas (Season 1) [_NY3vidqHpo].mp4", "id" => "_NY3vidqHpo", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=_NY3vidqHpo", "playlist_index" => 173, "timestamp" => 1500476405, "title" => "Minuscule - Bananes / Bananas (Season 1)", "upload_date" => "20170719"} 22:57:21.290 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:57:21.291 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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" = ?) [5] 22:57:21.292 [debug] QUERY OK source="media_items" db=0.8ms idle=989.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2017-07-19 15:00:05Z], 5] 22:57:21.294 [debug] QUERY OK source="media_items" db=1.6ms idle=984.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Join Minuscule on Facebook and Instagram:\nFacebook: https://www.facebook.com/minusculefilm/\nInstagram: https://www.instagram.com/minuscule.officiel/\n--\nABONNEZ-VOUS ICI / SUBSCRIBE HERE: \nhttp://bit.ly/1cPzvQP\n\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l'impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d'insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Bananes / Bananas (Season 1)", "ae9b9a31-dd7a-46c5-8b99-7b63cd21c259", "https://www.youtube.com/watch?v=_NY3vidqHpo", "_NY3vidqHpo", 443, false, 173, "/downloads/Miniscule Season 2/2017-07-19 Minuscule - Bananes ⧸ Bananas (Season 1)/Minuscule - Bananes ⧸ Bananas (Season 1) [_NY3vidqHpo].mp4", false, false, false, 5, [], 1, ~U[2017-07-19 15:00:05Z], ~U[2026-01-30 05:57:21Z], ~U[2026-01-30 05:57:21Z], "Join Minuscule on Facebook and Instagram:\nFacebook: https://www.facebook.com/minusculefilm/\nInstagram: https://www.instagram.com/minuscule.officiel/\n--\nABONNEZ-VOUS ICI / SUBSCRIBE HERE: \nhttp://bit.ly/1cPzvQP\n\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l'impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d'insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Bananes / Bananas (Season 1)", "https://www.youtube.com/watch?v=_NY3vidqHpo", "_NY3vidqHpo", 443, false, "/downloads/Miniscule Season 2/2017-07-19 Minuscule - Bananes ⧸ Bananas (Season 1)/Minuscule - Bananes ⧸ Bananas (Season 1) [_NY3vidqHpo].mp4", false, 5, ~U[2017-07-19 15:00:05Z]] 22:57:21.295 [debug] QUERY OK source="sources" db=0.3ms idle=820.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" = ?) [5] 22:57:21.296 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=5.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] 22:57:21.297 [debug] QUERY OK source="media_items" db=0.5ms idle=5.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 [89207] 22:57:21.297 [debug] Current batch of media processed. Will check again in 1000ms 22:57:22.298 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #IBx7uY0Uixs/youtube video #IBx7uY0Uixs [IBx7uY0Uixs].NA", "id" => "IBx7uY0Uixs", "original_url" => "https://www.youtube.com/watch?v=IBx7uY0Uixs", "playlist_index" => 174, "title" => "youtube video #IBx7uY0Uixs"} 22:57:22.299 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:57:22.299 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #UTlCRQaYUDA/youtube video #UTlCRQaYUDA [UTlCRQaYUDA].NA", "id" => "UTlCRQaYUDA", "original_url" => "https://www.youtube.com/watch?v=UTlCRQaYUDA", "playlist_index" => 175, "title" => "youtube video #UTlCRQaYUDA"} 22:57:22.300 [debug] QUERY OK source="sources" db=0.5ms idle=1004.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" IN (?)) [5] 22:57:22.301 [debug] Current batch of media processed. Will check again in 1000ms 22:57:23.302 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #YIE2ozEAeH0/youtube video #YIE2ozEAeH0 [YIE2ozEAeH0].NA", "id" => "YIE2ozEAeH0", "original_url" => "https://www.youtube.com/watch?v=YIE2ozEAeH0", "playlist_index" => 176, "title" => "youtube video #YIE2ozEAeH0"} 22:57:23.303 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:57:23.303 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #LpEiT6F8cPc/youtube video #LpEiT6F8cPc [LpEiT6F8cPc].NA", "id" => "LpEiT6F8cPc", "original_url" => "https://www.youtube.com/watch?v=LpEiT6F8cPc", "playlist_index" => 177, "title" => "youtube video #LpEiT6F8cPc"} 22:57:23.304 [debug] QUERY OK source="sources" db=0.3ms idle=1003.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 (?)) [5] 22:57:23.304 [debug] Current batch of media processed. Will check again in 1000ms 22:57:24.306 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #ceYwnOTGxiM/youtube video #ceYwnOTGxiM [ceYwnOTGxiM].NA", "id" => "ceYwnOTGxiM", "original_url" => "https://www.youtube.com/watch?v=ceYwnOTGxiM", "playlist_index" => 178, "title" => "youtube video #ceYwnOTGxiM"} 22:57:24.307 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=1832.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" IN (?)) [5] 22:57:24.307 [debug] Current batch of media processed. Will check again in 1000ms 22:57:25.309 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 290, "filename" => "/downloads/Miniscule Season 2/2016-08-30 Minuscule - Go blue go! ⧸ Allez les bleus! (Season 2)/Minuscule - Go blue go! ⧸ Allez les bleus! (Season 2) [5Yx-ZghdZJ0].mp4", "id" => "5Yx-ZghdZJ0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=5Yx-ZghdZJ0", "playlist_index" => 179, "timestamp" => 1472566451, "title" => "Minuscule - Go blue go! / Allez les bleus! (Season 2)", "upload_date" => "20160830"} 22:57:25.310 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=1002.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 (?)) [5] 22:57:25.312 [debug] QUERY OK source="sources" db=1.1ms idle=994.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" = ?) [5] 22:57:25.314 [debug] QUERY OK source="media_items" db=1.4ms idle=838.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2016-08-30 14:14:11Z], 5] 22:57:25.500 [debug] QUERY OK source="media_items" db=185.3ms idle=840.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Go blue go! / Allez les bleus! (Season 2)", "7fe722b0-85f2-42b8-be61-ddfec404b230", "https://www.youtube.com/watch?v=5Yx-ZghdZJ0", "5Yx-ZghdZJ0", 290, false, 179, "/downloads/Miniscule Season 2/2016-08-30 Minuscule - Go blue go! ⧸ Allez les bleus! (Season 2)/Minuscule - Go blue go! ⧸ Allez les bleus! (Season 2) [5Yx-ZghdZJ0].mp4", false, false, false, 5, [], 1, ~U[2016-08-30 14:14:11Z], ~U[2026-01-30 05:57:25Z], ~U[2026-01-30 05:57:25Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Go blue go! / Allez les bleus! (Season 2)", "https://www.youtube.com/watch?v=5Yx-ZghdZJ0", "5Yx-ZghdZJ0", 290, false, "/downloads/Miniscule Season 2/2016-08-30 Minuscule - Go blue go! ⧸ Allez les bleus! (Season 2)/Minuscule - Go blue go! ⧸ Allez les bleus! (Season 2) [5Yx-ZghdZJ0].mp4", false, 5, ~U[2016-08-30 14:14:11Z]] 22:57:25.501 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=188.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" = ?) [5] 22:57:25.502 [debug] QUERY OK source="media_profiles" db=0.3ms idle=188.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] 22:57:25.503 [debug] QUERY OK source="media_items" db=0.6ms idle=188.5ms 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 [89208] 22:57:25.503 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #a6XI8lORtcc/youtube video #a6XI8lORtcc [a6XI8lORtcc].NA", "id" => "a6XI8lORtcc", "original_url" => "https://www.youtube.com/watch?v=a6XI8lORtcc", "playlist_index" => 180, "title" => "youtube video #a6XI8lORtcc"} 22:57:25.504 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" IN (?)) [5] 22:57:25.504 [debug] Current batch of media processed. Will check again in 1000ms 22:57:26.506 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #2sP84veGlak/youtube video #2sP84veGlak [2sP84veGlak].NA", "id" => "2sP84veGlak", "original_url" => "https://www.youtube.com/watch?v=2sP84veGlak", "playlist_index" => 181, "title" => "youtube video #2sP84veGlak"} 22:57:26.507 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1004.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" IN (?)) [5] 22:57:26.507 [debug] Current batch of media processed. Will check again in 1000ms 22:57:27.508 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n*** \n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 759, "filename" => "/downloads/Miniscule Season 2/2016-08-19 Minuscule - Romeo & Antiet ⧸ Roméo & fourmi (Season 2)/Minuscule - Romeo & Antiet ⧸ Roméo & fourmi (Season 2) [PK2A3ZK5ys0].mkv", "id" => "PK2A3ZK5ys0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=PK2A3ZK5ys0", "playlist_index" => 182, "timestamp" => 1471597114, "title" => "Minuscule - Romeo & Antiet / Roméo & fourmi (Season 2)", "upload_date" => "20160819"} 22:57:27.509 [debug] QUERY OK source="sources" db=0.3ms idle=1001.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" IN (?)) [5] 22:57:27.510 [debug] QUERY OK source="sources" db=0.3ms idle=192.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" = ?) [5] 22:57:27.511 [debug] QUERY OK source="media_items" db=1.1ms queue=0.1ms idle=186.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2016-08-19 08:58:34Z], 5] 22:57:27.516 [debug] QUERY OK source="media_items" db=3.0ms idle=12.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n*** \n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Romeo & Antiet / Roméo & fourmi (Season 2)", "51e6108e-c90e-4bfd-8bbe-86d317ae51a2", "https://www.youtube.com/watch?v=PK2A3ZK5ys0", "PK2A3ZK5ys0", 759, false, 182, "/downloads/Miniscule Season 2/2016-08-19 Minuscule - Romeo & Antiet ⧸ Roméo & fourmi (Season 2)/Minuscule - Romeo & Antiet ⧸ Roméo & fourmi (Season 2) [PK2A3ZK5ys0].mkv", false, false, false, 5, [], 1, ~U[2016-08-19 08:58:34Z], ~U[2026-01-30 05:57:27Z], ~U[2026-01-30 05:57:27Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n*** \n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Romeo & Antiet / Roméo & fourmi (Season 2)", "https://www.youtube.com/watch?v=PK2A3ZK5ys0", "PK2A3ZK5ys0", 759, false, "/downloads/Miniscule Season 2/2016-08-19 Minuscule - Romeo & Antiet ⧸ Roméo & fourmi (Season 2)/Minuscule - Romeo & Antiet ⧸ Roméo & fourmi (Season 2) [PK2A3ZK5ys0].mkv", false, 5, ~U[2016-08-19 08:58:34Z]] 22:57:27.516 [debug] QUERY OK source="sources" db=0.3ms idle=16.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" = ?) [5] 22:57:27.517 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=7.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] 22:57:27.518 [debug] QUERY OK source="media_items" db=0.4ms idle=7.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 [89209] 22:57:27.518 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #Q22J16yA_tg/youtube video #Q22J16yA_tg [Q22J16yA_tg].NA", "id" => "Q22J16yA_tg", "original_url" => "https://www.youtube.com/watch?v=Q22J16yA_tg", "playlist_index" => 183, "title" => "youtube video #Q22J16yA_tg"} 22:57:27.519 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms 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" IN (?)) [5] 22:57:27.520 [debug] Current batch of media processed. Will check again in 1000ms 22:57:28.521 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #hDipBO_m9Vw/youtube video #hDipBO_m9Vw [hDipBO_m9Vw].NA", "id" => "hDipBO_m9Vw", "original_url" => "https://www.youtube.com/watch?v=hDipBO_m9Vw", "playlist_index" => 184, "title" => "youtube video #hDipBO_m9Vw"} 22:57:28.522 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1003.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" IN (?)) [5] 22:57:28.522 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #g1qro1_I2mQ/youtube video #g1qro1_I2mQ [g1qro1_I2mQ].NA", "id" => "g1qro1_I2mQ", "original_url" => "https://www.youtube.com/watch?v=g1qro1_I2mQ", "playlist_index" => 185, "title" => "youtube video #g1qro1_I2mQ"} 22:57:28.523 [debug] QUERY OK source="sources" db=0.3ms idle=1004.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" IN (?)) [5] 22:57:28.523 [debug] Current batch of media processed. Will check again in 1000ms 22:57:29.330 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769752649330581780,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":6,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:57:29.331 [debug] QUERY OK source="media_items" db=0.3ms idle=1004.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" = ?) [106309] 22:57:29.331 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:57:29.332 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=809.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" = ?) [5] 22:57:29.333 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=809.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] 22:57:29.334 [debug] QUERY OK source="media_items" db=0.5ms idle=10.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 [106309] 22:57:29.344 [debug] QUERY OK source="media_metadata" db=0.1ms idle=13.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" = ?) [106309] 22:57:29.344 [debug] QUERY OK source="media_profiles" db=0.2ms idle=13.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] 22:57:29.345 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:57:29.346 [debug] QUERY OK source="settings" db=0.2ms idle=12.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 [] 22:57:29.346 [debug] Running yt-dlp command for action: get_downloadable_status 22:57:29.347 [debug] QUERY OK source="settings" db=0.2ms idle=13.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 [] 22:57:29.348 [debug] QUERY OK source="settings" db=0.1ms 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 [] 22:57:29.348 [debug] QUERY OK source="settings" db=0.3ms 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 [] 22:57:29.349 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/9f/8a/9f8a09ab44a801074148864748554f84726023bade543fba1ebb5432d999d664.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:57:29.524 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #vgU3oFwUG_A/youtube video #vgU3oFwUG_A [vgU3oFwUG_A].NA", "id" => "vgU3oFwUG_A", "original_url" => "https://www.youtube.com/watch?v=vgU3oFwUG_A", "playlist_index" => 186, "title" => "youtube video #vgU3oFwUG_A"} 22:57:29.525 [debug] QUERY OK source="sources" db=0.4ms idle=178.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" IN (?)) [5] 22:57:29.525 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #vIVNjZKoMSc/youtube video #vIVNjZKoMSc [vIVNjZKoMSc].NA", "id" => "vIVNjZKoMSc", "original_url" => "https://www.youtube.com/watch?v=vIVNjZKoMSc", "playlist_index" => 187, "title" => "youtube video #vIVNjZKoMSc"} 22:57:29.526 [debug] QUERY OK source="sources" db=0.3ms idle=179.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" IN (?)) [5] 22:57:29.526 [debug] Current batch of media processed. Will check again in 1000ms 22:57:30.527 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #a6ttmuhA81A/youtube video #a6ttmuhA81A [a6ttmuhA81A].NA", "id" => "a6ttmuhA81A", "original_url" => "https://www.youtube.com/watch?v=a6ttmuhA81A", "playlist_index" => 188, "title" => "youtube video #a6ttmuhA81A"} 22:57:30.528 [debug] QUERY OK source="sources" db=0.3ms idle=1002.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 (?)) [5] 22:57:30.528 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #YIm0DVq47kM/youtube video #YIm0DVq47kM [YIm0DVq47kM].NA", "id" => "YIm0DVq47kM", "original_url" => "https://www.youtube.com/watch?v=YIm0DVq47kM", "playlist_index" => 189, "title" => "youtube video #YIm0DVq47kM"} 22:57:30.528 [debug] QUERY OK source="sources" db=0.2ms idle=1002.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 (?)) [5] 22:57:30.529 [debug] Current batch of media processed. Will check again in 1000ms 22:57:31.530 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 296, "filename" => "/downloads/Miniscule Season 2/2016-03-21 Minuscule - Love Apple ⧸ Pomme d'Amour (saison 2)/Minuscule - Love Apple ⧸ Pomme d'Amour (saison 2) [4XCsQv48wfg].mp4", "id" => "4XCsQv48wfg", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=4XCsQv48wfg", "playlist_index" => 190, "timestamp" => 1458553742, "title" => "Minuscule - Love Apple / Pomme d'Amour (saison 2)", "upload_date" => "20160321"} 22:57:31.531 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1030.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" IN (?)) [5] 22:57:31.532 [debug] QUERY OK source="sources" db=0.5ms idle=1004.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" = ?) [5] 22:57:31.534 [debug] QUERY OK source="media_items" db=1.1ms idle=1003.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2016-03-21 09:49:02Z], 5] 22:57:31.538 [debug] QUERY OK source="media_items" db=3.0ms idle=205.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Love Apple / Pomme d'Amour (saison 2)", "a8057800-6c71-428d-8c87-273f7dde45f1", "https://www.youtube.com/watch?v=4XCsQv48wfg", "4XCsQv48wfg", 296, false, 190, "/downloads/Miniscule Season 2/2016-03-21 Minuscule - Love Apple ⧸ Pomme d'Amour (saison 2)/Minuscule - Love Apple ⧸ Pomme d'Amour (saison 2) [4XCsQv48wfg].mp4", false, false, false, 5, [], 1, ~U[2016-03-21 09:49:02Z], ~U[2026-01-30 05:57:31Z], ~U[2026-01-30 05:57:31Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Love Apple / Pomme d'Amour (saison 2)", "https://www.youtube.com/watch?v=4XCsQv48wfg", "4XCsQv48wfg", 296, false, "/downloads/Miniscule Season 2/2016-03-21 Minuscule - Love Apple ⧸ Pomme d'Amour (saison 2)/Minuscule - Love Apple ⧸ Pomme d'Amour (saison 2) [4XCsQv48wfg].mp4", false, 5, ~U[2016-03-21 09:49:02Z]] 22:57:31.539 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=203.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" = ?) [5] 22:57:31.540 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=8.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] 22:57:31.541 [debug] QUERY OK source="media_items" db=0.5ms idle=8.4ms 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 [89210] 22:57:31.541 [debug] Current batch of media processed. Will check again in 1000ms 22:57:32.543 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #4iyxQZhiqjA/youtube video #4iyxQZhiqjA [4iyxQZhiqjA].NA", "id" => "4iyxQZhiqjA", "original_url" => "https://www.youtube.com/watch?v=4iyxQZhiqjA", "playlist_index" => 191, "title" => "youtube video #4iyxQZhiqjA"} 22:57:32.544 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1004.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" IN (?)) [5] 22:57:32.545 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #4NDBRDrneN0/youtube video #4NDBRDrneN0 [4NDBRDrneN0].NA", "id" => "4NDBRDrneN0", "original_url" => "https://www.youtube.com/watch?v=4NDBRDrneN0", "playlist_index" => 192, "title" => "youtube video #4NDBRDrneN0"} 22:57:32.545 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" IN (?)) [5] 22:57:32.546 [debug] Current batch of media processed. Will check again in 1000ms 22:57:33.195 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/9f/8a/9f8a09ab44a801074148864748554f84726023bade543fba1ebb5432d999d664.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 22:57:33.196 [debug] Running yt-dlp command for action: download 22:57:33.196 [debug] QUERY OK source="settings" db=0.2ms idle=1654.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 [] 22:57:33.197 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:57:33.197 [debug] QUERY OK source="settings" db=0.2ms idle=859.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 [] 22:57:33.198 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/d1/bc/d1bc929db3c9fbb2377b626e3c18ba3e5a31e4d98f36ca6778dab6e357c9e401.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:57:33.547 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #peIddlqyTeg/youtube video #peIddlqyTeg [peIddlqyTeg].NA", "id" => "peIddlqyTeg", "original_url" => "https://www.youtube.com/watch?v=peIddlqyTeg", "playlist_index" => 193, "title" => "youtube video #peIddlqyTeg"} 22:57:33.548 [debug] QUERY OK source="sources" db=0.4ms idle=351.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 (?)) [5] 22:57:33.548 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #0pwKc3PkRK0/youtube video #0pwKc3PkRK0 [0pwKc3PkRK0].NA", "id" => "0pwKc3PkRK0", "original_url" => "https://www.youtube.com/watch?v=0pwKc3PkRK0", "playlist_index" => 194, "title" => "youtube video #0pwKc3PkRK0"} 22:57:33.549 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=351.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" IN (?)) [5] 22:57:33.549 [debug] Current batch of media processed. Will check again in 1000ms 22:57:34.551 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 273, "filename" => "/downloads/Miniscule Season 2/2015-02-12 Minuscule - Valentine's Day ⧸ La Saint Valentin (Season 2)/Minuscule - Valentine's Day ⧸ La Saint Valentin (Season 2) [diIkW1_XW4A].mp4", "id" => "diIkW1_XW4A", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=diIkW1_XW4A", "playlist_index" => 195, "timestamp" => 1423757451, "title" => "Minuscule - Valentine's Day / La Saint Valentin (Season 2)", "upload_date" => "20150212"} 22:57:34.552 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" IN (?)) [5] 22:57:34.553 [debug] QUERY OK source="sources" db=0.4ms idle=1003.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" = ?) [5] 22:57:34.555 [debug] QUERY OK source="media_items" db=1.1ms idle=217.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2015-02-12 16:10:51Z], 5] 22:57:34.559 [debug] QUERY OK source="media_items" db=3.2ms idle=213.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Valentine's Day / La Saint Valentin (Season 2)", "9ab9a6ce-587e-4476-8a9f-e4badc7a9655", "https://www.youtube.com/watch?v=diIkW1_XW4A", "diIkW1_XW4A", 273, false, 195, "/downloads/Miniscule Season 2/2015-02-12 Minuscule - Valentine's Day ⧸ La Saint Valentin (Season 2)/Minuscule - Valentine's Day ⧸ La Saint Valentin (Season 2) [diIkW1_XW4A].mp4", false, false, false, 5, [], 1, ~U[2015-02-12 16:10:51Z], ~U[2026-01-30 05:57:34Z], ~U[2026-01-30 05:57:34Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Valentine's Day / La Saint Valentin (Season 2)", "https://www.youtube.com/watch?v=diIkW1_XW4A", "diIkW1_XW4A", 273, false, "/downloads/Miniscule Season 2/2015-02-12 Minuscule - Valentine's Day ⧸ La Saint Valentin (Season 2)/Minuscule - Valentine's Day ⧸ La Saint Valentin (Season 2) [diIkW1_XW4A].mp4", false, 5, ~U[2015-02-12 16:10:51Z]] 22:57:34.560 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=59.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" = ?) [5] 22:57:34.561 [debug] QUERY OK source="media_profiles" db=0.4ms idle=8.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] 22:57:34.562 [debug] QUERY OK source="media_items" db=0.6ms idle=8.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 [89211] 22:57:34.562 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #y3HUthbHtHM/youtube video #y3HUthbHtHM [y3HUthbHtHM].NA", "id" => "y3HUthbHtHM", "original_url" => "https://www.youtube.com/watch?v=y3HUthbHtHM", "playlist_index" => 196, "title" => "youtube video #y3HUthbHtHM"} 22:57:34.563 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=8.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 (?)) [5] 22:57:34.564 [debug] Current batch of media processed. Will check again in 1000ms 22:57:35.565 [debug] Current batch of media processed. Will check again in 1000ms 22:57:36.566 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.25, "description" => "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "duration" => 368, "filename" => "/downloads/Miniscule Season 2/2014-11-14 Minuscule - The Ants ⧸ Les Fourmis (Season 2)/Minuscule - The Ants ⧸ Les Fourmis (Season 2) [AGek0XLmbLI].mp4", "id" => "AGek0XLmbLI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=AGek0XLmbLI", "playlist_index" => 197, "timestamp" => 1415989901, "title" => "Minuscule - The Ants / Les Fourmis (Season 2)", "upload_date" => "20141114"} 22:57:36.567 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=226.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" IN (?)) [5] 22:57:36.568 [debug] QUERY OK source="sources" db=0.5ms idle=220.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" = ?) [5] 22:57:36.570 [debug] QUERY OK source="media_items" db=1.2ms idle=69.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2014-11-14 18:31:41Z], 5] 22:57:36.574 [debug] QUERY OK source="media_items" db=2.8ms idle=70.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The Ants / Les Fourmis (Season 2)", "b3080d87-c976-4cd3-86fc-c7af98218813", "https://www.youtube.com/watch?v=AGek0XLmbLI", "AGek0XLmbLI", 368, false, 197, "/downloads/Miniscule Season 2/2014-11-14 Minuscule - The Ants ⧸ Les Fourmis (Season 2)/Minuscule - The Ants ⧸ Les Fourmis (Season 2) [AGek0XLmbLI].mp4", false, false, false, 5, [], 1, ~U[2014-11-14 18:31:41Z], ~U[2026-01-30 05:57:36Z], ~U[2026-01-30 05:57:36Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The Ants / Les Fourmis (Season 2)", "https://www.youtube.com/watch?v=AGek0XLmbLI", "AGek0XLmbLI", 368, false, "/downloads/Miniscule Season 2/2014-11-14 Minuscule - The Ants ⧸ Les Fourmis (Season 2)/Minuscule - The Ants ⧸ Les Fourmis (Season 2) [AGek0XLmbLI].mp4", false, 5, ~U[2014-11-14 18:31:41Z]] 22:57:36.575 [debug] QUERY OK source="sources" db=0.5ms idle=74.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" = ?) [5] 22:57:36.576 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=7.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] 22:57:36.577 [debug] QUERY OK source="media_items" db=0.6ms idle=7.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 [89212] 22:57:36.577 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 2/NA youtube video #_9yHkXoV4ZQ/youtube video #_9yHkXoV4ZQ [_9yHkXoV4ZQ].NA", "id" => "_9yHkXoV4ZQ", "original_url" => "https://www.youtube.com/watch?v=_9yHkXoV4ZQ", "playlist_index" => 198, "title" => "youtube video #_9yHkXoV4ZQ"} 22:57:36.578 [debug] QUERY OK source="sources" db=0.5ms 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" FROM "sources" AS s0 WHERE (s0."id" IN (?)) [5] 22:57:36.579 [debug] Current batch of media processed. Will check again in 1000ms 22:57:36.865 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --remux-video mp4 --format-sort res:2160,+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/2c/68/2c6843d272502c06792e34fa696a6f3d328bd814be295575b461fc46111870f3.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 22:57:36.874 [debug] Gracefully stopping file follower 22:57:36.875 [debug] QUERY OK source="sources" db=0.6ms queue=0.1ms idle=300.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" IN (?)) [5] 22:57:36.877 [debug] QUERY OK source="sources" db=0.2ms queue=0.2ms idle=301.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" = ?) [5] 22:57:36.878 [debug] QUERY OK source="media_items" db=1.1ms idle=301.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-24 19:01:00Z], 5] 22:57:36.881 [debug] QUERY OK source="media_items" db=2.2ms idle=301.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Umbrella And Coconut Trees | S02E71\n00:03:33 | Trapped | S02E64\n00:07:16 | The Housing Plant Project | S02E26\n00:10:52 | Pollution | S02E60\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#umbrella #coconut #ladybug #winter #trapped #escape #rescue #insects #Minuscule #nature #ladybugs #animatedseries", "A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation", "2f9aa998-2e51-40a5-93a1-506b017e3d8b", "https://www.youtube.com/watch?v=lLIvNqaXysQ", "lLIvNqaXysQ", 917, false, 3, "/downloads/Miniscule Season 2/2026-01-24 A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation/A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation [lLIvNqaXysQ].mp4", false, false, false, 5, [], 1, ~U[2026-01-24 19:01:00Z], ~U[2026-01-30 05:57:36Z], ~U[2026-01-30 05:57:36Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Umbrella And Coconut Trees | S02E71\n00:03:33 | Trapped | S02E64\n00:07:16 | The Housing Plant Project | S02E26\n00:10:52 | Pollution | S02E60\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#umbrella #coconut #ladybug #winter #trapped #escape #rescue #insects #Minuscule #nature #ladybugs #animatedseries", "A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation", "https://www.youtube.com/watch?v=lLIvNqaXysQ", "lLIvNqaXysQ", 917, false, "/downloads/Miniscule Season 2/2026-01-24 A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation/A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation [lLIvNqaXysQ].mp4", false, 5, ~U[2026-01-24 19:01:00Z]] 22:57:36.882 [debug] QUERY OK source="sources" db=0.3ms idle=303.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" = ?) [5] 22:57:36.884 [debug] QUERY OK source="media_items" db=1.1ms idle=7.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-22 11:00:15Z], 5] 22:57:36.887 [debug] QUERY OK source="media_items" db=2.4ms idle=7.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Fly Swatter | S03E13\n00:01:29 | Mosquito Net | S03E14\n00:02:58 | A Candlelight Christmas | S03E20\n00:04:27 | The Magic Fly | S03E15\n00:05:56 | Like A Cannon Ball | S03E03\n00:07:25 | Glue | S03E06\n00:09:02 | Mad fly | S03E08\n00:10:31 | He Who Laughs Last, laughs Longest | S03E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#mosquito #sting #swatter #crafty #Mosquito #Net #Sleep #Bugs #Minuscule #nature #insects #ladybugs #animatedseries", "Fly Swatter | Minuscule 🍃 15' Compilation", "1dca9ce6-7c72-4371-98eb-4a712763bfd4", "https://www.youtube.com/watch?v=9QYqtNsUz_k", "9QYqtNsUz_k", 739, false, 4, "/downloads/Miniscule Season 2/2026-01-22 Fly Swatter | Minuscule 🍃 15' Compilation/Fly Swatter | Minuscule 🍃 15' Compilation [9QYqtNsUz_k].mp4", false, false, false, 5, [], 1, ~U[2026-01-22 11:00:15Z], ~U[2026-01-30 05:57:36Z], ~U[2026-01-30 05:57:36Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Fly Swatter | S03E13\n00:01:29 | Mosquito Net | S03E14\n00:02:58 | A Candlelight Christmas | S03E20\n00:04:27 | The Magic Fly | S03E15\n00:05:56 | Like A Cannon Ball | S03E03\n00:07:25 | Glue | S03E06\n00:09:02 | Mad fly | S03E08\n00:10:31 | He Who Laughs Last, laughs Longest | S03E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#mosquito #sting #swatter #crafty #Mosquito #Net #Sleep #Bugs #Minuscule #nature #insects #ladybugs #animatedseries", "Fly Swatter | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=9QYqtNsUz_k", "9QYqtNsUz_k", 739, false, "/downloads/Miniscule Season 2/2026-01-22 Fly Swatter | Minuscule 🍃 15' Compilation/Fly Swatter | Minuscule 🍃 15' Compilation [9QYqtNsUz_k].mp4", false, 5, ~U[2026-01-22 11:00:15Z]] 22:57:36.888 [debug] QUERY OK source="sources" db=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:36.889 [debug] QUERY OK source="media_items" db=1.0ms idle=7.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-16 11:01:55Z], 5] 22:57:36.892 [debug] QUERY OK source="media_items" db=2.1ms idle=7.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nA fly and a spider are watching sports on television. They disagree as to which channel they want to watch. It’s duel time for the remote control. Who is going to let go: the spider, the fly… or the TV?\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nBzzaping | S02E03 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Bzzaping #fly #spider #television #Minuscule #nature #insects #ladybugs #animatedseries", "Bzzaping | Minuscule", "626b783e-a030-4cb3-96b2-e1c511e2fcad", "https://www.youtube.com/watch?v=hWfLGSiZZG8", "hWfLGSiZZG8", 45, false, 5, "/downloads/Miniscule Season 2/2026-01-16 Bzzaping | Minuscule/Bzzaping | Minuscule [hWfLGSiZZG8].mp4", false, false, true, 5, [], 1, ~U[2026-01-16 11:01:55Z], ~U[2026-01-30 05:57:36Z], ~U[2026-01-30 05:57:36Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nA fly and a spider are watching sports on television. They disagree as to which channel they want to watch. It’s duel time for the remote control. Who is going to let go: the spider, the fly… or the TV?\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nBzzaping | S02E03 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Bzzaping #fly #spider #television #Minuscule #nature #insects #ladybugs #animatedseries", "Bzzaping | Minuscule", "https://www.youtube.com/watch?v=hWfLGSiZZG8", "hWfLGSiZZG8", 45, false, "/downloads/Miniscule Season 2/2026-01-16 Bzzaping | Minuscule/Bzzaping | Minuscule [hWfLGSiZZG8].mp4", true, 5, ~U[2026-01-16 11:01:55Z]] 22:57:36.893 [debug] QUERY OK source="sources" db=0.3ms idle=9.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" = ?) [5] 22:57:36.895 [debug] QUERY OK source="media_items" db=0.9ms idle=7.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-23 11:01:48Z], 5] 22:57:36.905 [debug] QUERY OK source="media_items" db=9.1ms idle=6.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nA spider is trying out a miniature red toy car when a bus full of flies hits it. The flies are clearly looking for trouble. A ladybug comes to save the day, happy to give a lesson to these troublemakers. She takes control of the car and chases the flies with the poor little spider still hanging on! It’s going to be a rough ride!\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nSpider Driver | S02E36 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver | Minuscule", "5cc98736-234b-4c3a-99c7-666ca477e380", "https://www.youtube.com/watch?v=wK4Zj-bg9Vk", "wK4Zj-bg9Vk", 21, false, 6, "/downloads/Miniscule Season 2/2026-01-23 Spider Driver | Minuscule/Spider Driver | Minuscule [wK4Zj-bg9Vk].mp4", false, false, true, 5, [], 1, ~U[2026-01-23 11:01:48Z], ~U[2026-01-30 05:57:36Z], ~U[2026-01-30 05:57:36Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nA spider is trying out a miniature red toy car when a bus full of flies hits it. The flies are clearly looking for trouble. A ladybug comes to save the day, happy to give a lesson to these troublemakers. She takes control of the car and chases the flies with the poor little spider still hanging on! It’s going to be a rough ride!\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nSpider Driver | S02E36 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver | Minuscule", "https://www.youtube.com/watch?v=wK4Zj-bg9Vk", "wK4Zj-bg9Vk", 21, false, "/downloads/Miniscule Season 2/2026-01-23 Spider Driver | Minuscule/Spider Driver | Minuscule [wK4Zj-bg9Vk].mp4", true, 5, ~U[2026-01-23 11:01:48Z]] 22:57:36.906 [debug] QUERY OK source="sources" db=0.5ms idle=15.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" = ?) [5] 22:57:36.907 [debug] QUERY OK source="media_items" db=1.0ms queue=0.2ms idle=13.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-17 19:00:55Z], 5] 22:57:36.910 [debug] QUERY OK source="media_items" db=2.2ms idle=14.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sleep Walker | S02E68\n00:03:24 | The Long Road | S02E34\n00:07:07 | Thirsty | S02E29\n00:10:39 | Hop On! | S02E25\n00:14:17 | Zzz zzz | S02E44\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Dream #Love #Snail #Sleep #snail #water #journey #hazard #Minuscule #nature #insects #ladybugs #animatedseries", "Sleep Walker | Minuscule | 25' Compilation", "d5244cb0-8c7d-4ff5-b715-b86affbcc95a", "https://www.youtube.com/watch?v=PB4H2_VhhIg", "PB4H2_VhhIg", 1106, false, 7, "/downloads/Miniscule Season 2/2026-01-17 Sleep Walker | Minuscule | 25' Compilation/Sleep Walker | Minuscule | 25' Compilation [PB4H2_VhhIg].mp4", false, false, false, 5, [], 1, ~U[2026-01-17 19:00:55Z], ~U[2026-01-30 05:57:36Z], ~U[2026-01-30 05:57:36Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sleep Walker | S02E68\n00:03:24 | The Long Road | S02E34\n00:07:07 | Thirsty | S02E29\n00:10:39 | Hop On! | S02E25\n00:14:17 | Zzz zzz | S02E44\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Dream #Love #Snail #Sleep #snail #water #journey #hazard #Minuscule #nature #insects #ladybugs #animatedseries", "Sleep Walker | Minuscule | 25' Compilation", "https://www.youtube.com/watch?v=PB4H2_VhhIg", "PB4H2_VhhIg", 1106, false, "/downloads/Miniscule Season 2/2026-01-17 Sleep Walker | Minuscule | 25' Compilation/Sleep Walker | Minuscule | 25' Compilation [PB4H2_VhhIg].mp4", false, 5, ~U[2026-01-17 19:00:55Z]] 22:57:36.911 [debug] QUERY OK source="sources" db=0.4ms idle=16.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" = ?) [5] 22:57:36.913 [debug] QUERY OK source="media_items" db=1.1ms idle=7.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-13 07:01:04Z], 5] 22:57:36.916 [debug] QUERY OK source="media_items" db=2.3ms idle=7.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sausage Predator | S02E06\n00:03:45 | Away all boarders! | S02E41\n00:07:28 | The Hat Of The Medusa | S02E17\n00:11:13 | The Grocery Store Racketeer | S02E50\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Sausage #Predator #ants #barbecue #battle #cottage #pistachios #Minuscule #nature #insects #ladybugs #animatedseries", "Sausage Predator | Minuscule | 20' Compilation", "88cacd4c-689d-49e6-9da6-428254b11d99", "https://www.youtube.com/watch?v=UYDAPXE67aU", "UYDAPXE67aU", 927, false, 8, "/downloads/Miniscule Season 2/2026-01-13 Sausage Predator | Minuscule | 20' Compilation/Sausage Predator | Minuscule | 20' Compilation [UYDAPXE67aU].mp4", false, false, false, 5, [], 1, ~U[2026-01-13 07:01:04Z], ~U[2026-01-30 05:57:36Z], ~U[2026-01-30 05:57:36Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sausage Predator | S02E06\n00:03:45 | Away all boarders! | S02E41\n00:07:28 | The Hat Of The Medusa | S02E17\n00:11:13 | The Grocery Store Racketeer | S02E50\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Sausage #Predator #ants #barbecue #battle #cottage #pistachios #Minuscule #nature #insects #ladybugs #animatedseries", "Sausage Predator | Minuscule | 20' Compilation", "https://www.youtube.com/watch?v=UYDAPXE67aU", "UYDAPXE67aU", 927, false, "/downloads/Miniscule Season 2/2026-01-13 Sausage Predator | Minuscule | 20' Compilation/Sausage Predator | Minuscule | 20' Compilation [UYDAPXE67aU].mp4", false, 5, ~U[2026-01-13 07:01:04Z]] 22:57:36.917 [debug] QUERY OK source="sources" db=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:36.918 [debug] QUERY OK source="media_items" db=0.9ms idle=7.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-09 11:01:56Z], 5] 22:57:36.921 [debug] QUERY OK source="media_items" db=2.2ms idle=7.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nJeering flies are having fun in a miniature bus. That’s before a spider, driving a little car, decides to go after them. A real race starts between both toys.\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nMad fly | S03E08 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly | Minuscule", "a3f237a9-f6f7-4b9c-845f-1ab9f91d57a0", "https://www.youtube.com/watch?v=sB-rORC1UMI", "sB-rORC1UMI", 14, false, 9, "/downloads/Miniscule Season 2/2026-01-09 Mad fly | Minuscule/Mad fly | Minuscule [sB-rORC1UMI].mp4", false, false, true, 5, [], 1, ~U[2026-01-09 11:01:56Z], ~U[2026-01-30 05:57:36Z], ~U[2026-01-30 05:57:36Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nJeering flies are having fun in a miniature bus. That’s before a spider, driving a little car, decides to go after them. A real race starts between both toys.\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nMad fly | S03E08 | Minuscule\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly | Minuscule", "https://www.youtube.com/watch?v=sB-rORC1UMI", "sB-rORC1UMI", 14, false, "/downloads/Miniscule Season 2/2026-01-09 Mad fly | Minuscule/Mad fly | Minuscule [sB-rORC1UMI].mp4", true, 5, ~U[2026-01-09 11:01:56Z]] 22:57:36.922 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=8.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" = ?) [5] 22:57:36.924 [debug] QUERY OK source="media_items" db=0.9ms idle=7.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-10 19:00:13Z], 5] 22:57:37.352 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1769752657351779196,"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"]} 22:57:37.352 [debug] QUERY OK source="media_items" db=0.3ms idle=429.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" = ?) [89022] 22:57:37.353 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:57:37.353 [debug] QUERY OK source="sources" db=0.4ms idle=429.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" = ?) [5] 22:57:37.354 [debug] QUERY OK source="media_profiles" db=0.3ms idle=9.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] 22:57:37.355 [debug] QUERY OK source="media_items" db=0.6ms idle=3.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 [89022] 22:57:37.356 [debug] QUERY OK source="media_metadata" db=0.1ms idle=3.8ms 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" = ?) [89022] 22:57:37.357 [debug] QUERY OK source="media_profiles" db=0.2ms 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] 22:57:37.358 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:57:37.358 [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 [] 22:57:37.359 [debug] Running yt-dlp command for action: get_downloadable_status 22:57:37.375 [debug] QUERY OK source="settings" db=0.2ms idle=17.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 [] 22:57:37.375 [debug] QUERY OK source="settings" db=0.2ms idle=18.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 [] 22:57:37.375 [debug] QUERY OK source="settings" db=0.2ms idle=17.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 [] 22:57:37.376 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/3c/59/3c5933d6880eddbd4daa93ee5096adc0e586f4dfdc4c76a6e2900d082c38cb51.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:57:37.529 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/d1/bc/d1bc929db3c9fbb2377b626e3c18ba3e5a31e4d98f36ca6778dab6e357c9e401.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 22:57:37.529 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 22:57:37.530 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8199182,"event":"job:exception","queue_time":151717,"attempt":6,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:57:37.956 [debug] QUERY OK source="media_items" db=1031.3ms idle=7.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | At Full Speed | S02E27\n00:03:43 | Fly Hunting | S02E24\n00:07:17 | The Iron Monster | S02E33\n00:10:50 | Mission : BBQ | S02E09\n00:14:36 | Ants On The Train | S02E52\n00:18:07 | Zzz In The Metro | S02E53\n00:21:43 | It's a tie! | S02E67\n00:25:23 | Turbo speed | S02E58\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#race #insects #country #wacky #fly #hunting #ladybug #pursuit #Minuscule #nature #ladybugs #animatedseries", "At Full Speed | Minuscule 🍃 40' Compilation", "95e6da1f-2f32-4676-835a-7be0f07c97ec", "https://www.youtube.com/watch?v=Cl8KOpCIEVc", "Cl8KOpCIEVc", 1766, false, 10, "/downloads/Miniscule Season 2/2026-01-10 At Full Speed | Minuscule 🍃 40' Compilation/At Full Speed | Minuscule 🍃 40' Compilation [Cl8KOpCIEVc].mp4", false, false, false, 5, [], 1, ~U[2026-01-10 19:00:13Z], ~U[2026-01-30 05:57:36Z], ~U[2026-01-30 05:57:36Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | At Full Speed | S02E27\n00:03:43 | Fly Hunting | S02E24\n00:07:17 | The Iron Monster | S02E33\n00:10:50 | Mission : BBQ | S02E09\n00:14:36 | Ants On The Train | S02E52\n00:18:07 | Zzz In The Metro | S02E53\n00:21:43 | It's a tie! | S02E67\n00:25:23 | Turbo speed | S02E58\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#race #insects #country #wacky #fly #hunting #ladybug #pursuit #Minuscule #nature #ladybugs #animatedseries", "At Full Speed | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=Cl8KOpCIEVc", "Cl8KOpCIEVc", 1766, false, "/downloads/Miniscule Season 2/2026-01-10 At Full Speed | Minuscule 🍃 40' Compilation/At Full Speed | Minuscule 🍃 40' Compilation [Cl8KOpCIEVc].mp4", false, 5, ~U[2026-01-10 19:00:13Z]] 22:57:37.957 [debug] QUERY OK source="sources" db=0.7ms idle=581.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" = ?) [5] 22:57:37.959 [debug] QUERY OK source="media_items" db=1.0ms idle=582.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-08 11:00:16Z], 5] 22:57:38.156 [debug] QUERY OK source="media_items" db=196.0ms idle=429.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Chocolate Fly | S03E23\n00:01:29 | He Who Laughs Last, laughs Longest | S03E12\n00:02:58 | The Doughnut | S03E16\n00:04:30 | At Full Speed | S03E22\n00:05:51 | Like A Cannon Ball | S03E03\n00:07:20 | The Wicked Web | S03E07\n00:08:49 | Mad fly | S03E08\n00:10:18 | The Magic Fly | S03E15\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Chocolate #Fly #Spider #Dessert #laughs #spider #dangerous #swaddled #Minuscule #nature #insects #ladybugs #animatedseries", "Chocolate Fly | Minuscule 🍃 15' Compilation", "77b05675-ac02-42ce-88c1-af1c29116ab9", "https://www.youtube.com/watch?v=42Cr5HR1m7E", "42Cr5HR1m7E", 726, false, 11, "/downloads/Miniscule Season 2/2026-01-08 Chocolate Fly | Minuscule 🍃 15' Compilation/Chocolate Fly | Minuscule 🍃 15' Compilation [42Cr5HR1m7E].mp4", false, false, false, 5, [], 1, ~U[2026-01-08 11:00:16Z], ~U[2026-01-30 05:57:37Z], ~U[2026-01-30 05:57:37Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Chocolate Fly | S03E23\n00:01:29 | He Who Laughs Last, laughs Longest | S03E12\n00:02:58 | The Doughnut | S03E16\n00:04:30 | At Full Speed | S03E22\n00:05:51 | Like A Cannon Ball | S03E03\n00:07:20 | The Wicked Web | S03E07\n00:08:49 | Mad fly | S03E08\n00:10:18 | The Magic Fly | S03E15\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Chocolate #Fly #Spider #Dessert #laughs #spider #dangerous #swaddled #Minuscule #nature #insects #ladybugs #animatedseries", "Chocolate Fly | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=42Cr5HR1m7E", "42Cr5HR1m7E", 726, false, "/downloads/Miniscule Season 2/2026-01-08 Chocolate Fly | Minuscule 🍃 15' Compilation/Chocolate Fly | Minuscule 🍃 15' Compilation [42Cr5HR1m7E].mp4", false, 5, ~U[2026-01-08 11:00:16Z]] 22:57:38.157 [debug] QUERY OK source="sources" db=0.4ms idle=618.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" = ?) [5] 22:57:38.158 [debug] QUERY OK source="media_items" db=1.0ms idle=201.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-30 07:00:30Z], 5] 22:57:38.306 [debug] QUERY OK source="media_items" db=146.9ms idle=201.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Twelve Angry Snails | S02E66\n00:03:32 | Night of the Gastropods | S02E18\n00:07:18 | The Long Road | S02E34\n00:11:00 | Mission : BBQ | S02E09\n00:14:46 | Thirsty | S02E29\n00:18:18 | Trapped | S02E64\n00:22:01 | Black Slope For Gastropod Skiers | S02E55\n00:25:47 | Patatas Fritas | S02E21\n00:29:33 | Sausage Predator | S02E06\n00:33:18 | The Grocery Store Incident | S02E39\n00:36:49 | The Vegetable Garden | S02E10\n00:40:33 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#snails #escape #gourmet #restaurant #garden #snail #war #salad #Minuscule #nature #insects #ladybugs #animatedseries", "Twelve Angry Snails 🐌 Minuscule | 60' Compilation", "911dff3d-4650-447a-a6ad-bfb6a5f9b030", "https://www.youtube.com/watch?v=boG5r_pUXfs", "boG5r_pUXfs", 2694, false, 12, "/downloads/Miniscule Season 2/2025-12-30 Twelve Angry Snails 🐌 Minuscule | 60' Compilation/Twelve Angry Snails 🐌 Minuscule | 60' Compilation [boG5r_pUXfs].mp4", false, false, false, 5, [], 1, ~U[2025-12-30 07:00:30Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Twelve Angry Snails | S02E66\n00:03:32 | Night of the Gastropods | S02E18\n00:07:18 | The Long Road | S02E34\n00:11:00 | Mission : BBQ | S02E09\n00:14:46 | Thirsty | S02E29\n00:18:18 | Trapped | S02E64\n00:22:01 | Black Slope For Gastropod Skiers | S02E55\n00:25:47 | Patatas Fritas | S02E21\n00:29:33 | Sausage Predator | S02E06\n00:33:18 | The Grocery Store Incident | S02E39\n00:36:49 | The Vegetable Garden | S02E10\n00:40:33 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#snails #escape #gourmet #restaurant #garden #snail #war #salad #Minuscule #nature #insects #ladybugs #animatedseries", "Twelve Angry Snails 🐌 Minuscule | 60' Compilation", "https://www.youtube.com/watch?v=boG5r_pUXfs", "boG5r_pUXfs", 2694, false, "/downloads/Miniscule Season 2/2025-12-30 Twelve Angry Snails 🐌 Minuscule | 60' Compilation/Twelve Angry Snails 🐌 Minuscule | 60' Compilation [boG5r_pUXfs].mp4", false, 5, ~U[2025-12-30 07:00:30Z]] 22:57:38.307 [debug] QUERY OK source="sources" db=0.4ms idle=347.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" = ?) [5] 22:57:38.308 [debug] QUERY OK source="media_items" db=0.8ms idle=151.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-03 19:00:51Z], 5] 22:57:38.311 [debug] QUERY OK source="media_items" db=1.6ms idle=151.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Butterfly Effect | S02E23\n00:03:22 | Metamorphosis | S02E61\n00:06:53 | Hop On! | S02E25\n00:10:30 | The Wing Case | S02E01\n00:14:15 | Turbo speed | S02E58\n00:17:40 | The Grocery Store Incident | S02E39\n00:21:10 | Love Apple | S02E45\n00:24:50 | Woopsy Daysies! | S02E47\n00:28:24 | If Only Lonely | S02E22\n00:32:10 | Fly Hunting | S02E24\n00:35:43 | Snow Fly | S02E51\n00:39:08 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#butterfly #flutter #fields #reaction #transformation #caterpillar #rejection #change #Minuscule #nature #insects #ladybugs #animatedseries", "The Butterfly Effect | Minuscule | 55' Compilation", "f4350dac-b1a3-469a-9ccd-b19eb9fe8774", "https://www.youtube.com/watch?v=pDkGYWpeUPE", "pDkGYWpeUPE", 2583, false, 13, "/downloads/Miniscule Season 2/2026-01-03 The Butterfly Effect | Minuscule | 55' Compilation/The Butterfly Effect | Minuscule | 55' Compilation [pDkGYWpeUPE].mp4", false, false, false, 5, [], 1, ~U[2026-01-03 19:00:51Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Butterfly Effect | S02E23\n00:03:22 | Metamorphosis | S02E61\n00:06:53 | Hop On! | S02E25\n00:10:30 | The Wing Case | S02E01\n00:14:15 | Turbo speed | S02E58\n00:17:40 | The Grocery Store Incident | S02E39\n00:21:10 | Love Apple | S02E45\n00:24:50 | Woopsy Daysies! | S02E47\n00:28:24 | If Only Lonely | S02E22\n00:32:10 | Fly Hunting | S02E24\n00:35:43 | Snow Fly | S02E51\n00:39:08 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#butterfly #flutter #fields #reaction #transformation #caterpillar #rejection #change #Minuscule #nature #insects #ladybugs #animatedseries", "The Butterfly Effect | Minuscule | 55' Compilation", "https://www.youtube.com/watch?v=pDkGYWpeUPE", "pDkGYWpeUPE", 2583, false, "/downloads/Miniscule Season 2/2026-01-03 The Butterfly Effect | Minuscule | 55' Compilation/The Butterfly Effect | Minuscule | 55' Compilation [pDkGYWpeUPE].mp4", false, 5, ~U[2026-01-03 19:00:51Z]] 22:57:38.311 [debug] QUERY OK source="sources" db=0.3ms idle=152.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" = ?) [5] 22:57:38.313 [debug] QUERY OK source="media_items" db=0.7ms idle=6.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-20 19:00:51Z], 5] 22:57:38.315 [debug] QUERY OK source="media_items" db=1.6ms idle=5.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Snow Fly | S02E51\n00:03:24 | Zzz In The Metro | S02E53\n00:07:00 | Down The Chimney | S02E42\n00:10:45 | Honey Fly | S02E08\n00:14:35 | Refrigerated | S02E65\n00:18:10 | Umbrella And Coconut Trees | S02E71\n00:21:43 | White As Snow | S02E63\n00:25:20 | Spider Driver | S02E36\n00:29:01 | Labyrinth | S02E69\n00:32:47 | Summer Hat | S02E48\n00:36:28 | Fly Hunting | S02E24\n00:40:02 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Fly #Cold #Ladybug #ladybug #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Fly 🎅 Minuscule ⛄️ 55' Compilation", "0fc5e8a7-7eb5-4b50-8bc0-eaee04cb3116", "https://www.youtube.com/watch?v=tP2OKQfYKfo", "tP2OKQfYKfo", 2651, false, 14, "/downloads/Miniscule Season 2/2025-12-20 Snow Fly 🎅 Minuscule ⛄️ 55' Compilation/Snow Fly 🎅 Minuscule ⛄️ 55' Compilation [tP2OKQfYKfo].mp4", false, false, false, 5, [], 1, ~U[2025-12-20 19:00:51Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Snow Fly | S02E51\n00:03:24 | Zzz In The Metro | S02E53\n00:07:00 | Down The Chimney | S02E42\n00:10:45 | Honey Fly | S02E08\n00:14:35 | Refrigerated | S02E65\n00:18:10 | Umbrella And Coconut Trees | S02E71\n00:21:43 | White As Snow | S02E63\n00:25:20 | Spider Driver | S02E36\n00:29:01 | Labyrinth | S02E69\n00:32:47 | Summer Hat | S02E48\n00:36:28 | Fly Hunting | S02E24\n00:40:02 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Fly #Cold #Ladybug #ladybug #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Fly 🎅 Minuscule ⛄️ 55' Compilation", "https://www.youtube.com/watch?v=tP2OKQfYKfo", "tP2OKQfYKfo", 2651, false, "/downloads/Miniscule Season 2/2025-12-20 Snow Fly 🎅 Minuscule ⛄️ 55' Compilation/Snow Fly 🎅 Minuscule ⛄️ 55' Compilation [tP2OKQfYKfo].mp4", false, 5, ~U[2025-12-20 19:00:51Z]] 22:57:38.316 [debug] QUERY OK source="sources" db=0.3ms idle=6.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" = ?) [5] 22:57:38.317 [debug] QUERY OK source="media_items" db=0.7ms idle=5.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-25 11:01:41Z], 5] 22:57:38.319 [debug] QUERY OK source="media_items" db=1.6ms idle=5.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | An Acorn Season | S02E05\n00:03:45 | Chewing gum rodeo | S02E14\n00:07:31 | The Annoying Neighbor | S02E28\n00:11:07 | To The Port Now! | S02E43\n00:14:34 | Woopsy Daysies! | S02E47\n00:18:08 | Ladybugland | S02E62\n00:21:36 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:25:21 | The Grocery Store Racketeer | S02E50\n00:28:57 | Fly Hunting | S02E24\n00:32:30 | Acrobatics | S02E16\n00:36:16 | Rascals! | S02E38\n00:39:55 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acorn #Grasshopper #Insects #Justice #gum #grasshopper #insects #ladybird #Minuscule #nature #ladybugs #animatedseries", "An Acorn Season | Minuscule | 55' Compilation", "4103245e-7108-422d-b090-c73dae366193", "https://www.youtube.com/watch?v=tLn8a3TLDZY", "tLn8a3TLDZY", 2657, false, 15, "/downloads/Miniscule Season 2/2025-12-25 An Acorn Season | Minuscule | 55' Compilation/An Acorn Season | Minuscule | 55' Compilation [tLn8a3TLDZY].mp4", false, false, false, 5, [], 1, ~U[2025-12-25 11:01:41Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | An Acorn Season | S02E05\n00:03:45 | Chewing gum rodeo | S02E14\n00:07:31 | The Annoying Neighbor | S02E28\n00:11:07 | To The Port Now! | S02E43\n00:14:34 | Woopsy Daysies! | S02E47\n00:18:08 | Ladybugland | S02E62\n00:21:36 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:25:21 | The Grocery Store Racketeer | S02E50\n00:28:57 | Fly Hunting | S02E24\n00:32:30 | Acrobatics | S02E16\n00:36:16 | Rascals! | S02E38\n00:39:55 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acorn #Grasshopper #Insects #Justice #gum #grasshopper #insects #ladybird #Minuscule #nature #ladybugs #animatedseries", "An Acorn Season | Minuscule | 55' Compilation", "https://www.youtube.com/watch?v=tLn8a3TLDZY", "tLn8a3TLDZY", 2657, false, "/downloads/Miniscule Season 2/2025-12-25 An Acorn Season | Minuscule | 55' Compilation/An Acorn Season | Minuscule | 55' Compilation [tLn8a3TLDZY].mp4", false, 5, ~U[2025-12-25 11:01:41Z]] 22:57:38.320 [debug] QUERY OK source="sources" db=0.3ms idle=7.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" = ?) [5] 22:57:38.321 [debug] QUERY OK source="media_items" db=0.6ms idle=5.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-23 07:00:47Z], 5] 22:57:38.324 [debug] QUERY OK source="media_items" db=1.5ms idle=6.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | If Only Lonely | S02E22\n00:03:45 | The Wing Case | S02E01\n00:07:31 | Ladybugland | S02E62\n00:10:58 | Ants On The Train | S02E52\n00:14:30 | Away all boarders! | S02E41\n00:18:12 | A Butterfly's Nightmare | S02E20\n00:21:29 | Trapped | S02E64\n00:25:11 | Homeless | S02E02\n00:28:59 | Valentine's Day | S02E15\n00:32:44 | Honey Fly | S02E08\n00:36:35 | Fly Hunting | S02E24\n00:40:08 | The Annoying Neighbor | S02E28\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #sibling #anxiety #ants #egg #caterpillar #adoption #Minuscule #nature #insects #ladybugs #animatedseries", "If Only Lonely | Minuscule | 55' Compilation", "63c1d229-66c5-464d-abb3-4f56832da793", "https://www.youtube.com/watch?v=gyJPPysg8bI", "gyJPPysg8bI", 2663, false, 16, "/downloads/Miniscule Season 2/2025-12-23 If Only Lonely | Minuscule | 55' Compilation/If Only Lonely | Minuscule | 55' Compilation [gyJPPysg8bI].mp4", false, false, false, 5, [], 1, ~U[2025-12-23 07:00:47Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | If Only Lonely | S02E22\n00:03:45 | The Wing Case | S02E01\n00:07:31 | Ladybugland | S02E62\n00:10:58 | Ants On The Train | S02E52\n00:14:30 | Away all boarders! | S02E41\n00:18:12 | A Butterfly's Nightmare | S02E20\n00:21:29 | Trapped | S02E64\n00:25:11 | Homeless | S02E02\n00:28:59 | Valentine's Day | S02E15\n00:32:44 | Honey Fly | S02E08\n00:36:35 | Fly Hunting | S02E24\n00:40:08 | The Annoying Neighbor | S02E28\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #sibling #anxiety #ants #egg #caterpillar #adoption #Minuscule #nature #insects #ladybugs #animatedseries", "If Only Lonely | Minuscule | 55' Compilation", "https://www.youtube.com/watch?v=gyJPPysg8bI", "gyJPPysg8bI", 2663, false, "/downloads/Miniscule Season 2/2025-12-23 If Only Lonely | Minuscule | 55' Compilation/If Only Lonely | Minuscule | 55' Compilation [gyJPPysg8bI].mp4", false, 5, ~U[2025-12-23 07:00:47Z]] 22:57:38.325 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.326 [debug] QUERY OK source="media_items" db=0.7ms idle=6.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-27 19:00:39Z], 5] 22:57:38.328 [debug] QUERY OK source="media_items" db=1.6ms idle=6.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Brushing | S02E46\n00:03:32 | Spider from the Depths | S02E31\n00:07:07 | Spider Driver | S02E36\n00:10:48 | The Hat Of The Medusa | S02E17\n00:14:34 | Labyrinth | S02E69\n00:18:19 | Summer Hat | S02E48\n00:22:01 | Refrigerated | S02E65\n00:25:35 | Bzzaping | S02E03\n00:29:22 | Fly Hunting | S02E24\n00:32:56 | Microzilla | S02E07\n00:36:41 | A Pathetic She'Nut'Igan | S02E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Brushing #Fly #Spider #Drunk #spider #prey #fly #pool #Minuscule #nature #insects #ladybugs #animatedseries", "Brushing | Minuscule | 55' Compilation", "89ef2d38-b1b3-41aa-8581-a594c23e3b6b", "https://www.youtube.com/watch?v=bal9pZmYCZI", "bal9pZmYCZI", 2465, false, 17, "/downloads/Miniscule Season 2/2025-12-27 Brushing | Minuscule | 55' Compilation/Brushing | Minuscule | 55' Compilation [bal9pZmYCZI].mp4", false, false, false, 5, [], 1, ~U[2025-12-27 19:00:39Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Brushing | S02E46\n00:03:32 | Spider from the Depths | S02E31\n00:07:07 | Spider Driver | S02E36\n00:10:48 | The Hat Of The Medusa | S02E17\n00:14:34 | Labyrinth | S02E69\n00:18:19 | Summer Hat | S02E48\n00:22:01 | Refrigerated | S02E65\n00:25:35 | Bzzaping | S02E03\n00:29:22 | Fly Hunting | S02E24\n00:32:56 | Microzilla | S02E07\n00:36:41 | A Pathetic She'Nut'Igan | S02E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Brushing #Fly #Spider #Drunk #spider #prey #fly #pool #Minuscule #nature #insects #ladybugs #animatedseries", "Brushing | Minuscule | 55' Compilation", "https://www.youtube.com/watch?v=bal9pZmYCZI", "bal9pZmYCZI", 2465, false, "/downloads/Miniscule Season 2/2025-12-27 Brushing | Minuscule | 55' Compilation/Brushing | Minuscule | 55' Compilation [bal9pZmYCZI].mp4", false, 5, ~U[2025-12-27 19:00:39Z]] 22:57:38.329 [debug] QUERY OK source="sources" db=0.3ms 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" = ?) [5] 22:57:38.330 [debug] QUERY OK source="media_items" db=0.8ms idle=6.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-06 19:00:26Z], 5] 22:57:38.334 [debug] QUERY OK source="media_items" db=2.3ms queue=0.1ms idle=6.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Patatas Fritas | S02E21\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Away all boarders! | S02E41\n00:11:05 | The Grocery Store Incident | S02E39\n00:14:36 | Turbo speed | S02E58\n00:18:01 | Trapped | S02E64\n00:21:43 | Twelve Angry Snails | S02E66\n00:25:16 | The Hat Of The Medusa | S02E17\n00:29:01 | Homeless | S02E02\n00:32:49 | The Chocolate Chase! | S02E19\n00:36:34 | Mission : BBQ | S02E09\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Patatas #Fritas #wasps #universe #Tabasco #wasp #patrol #ladybug #Minuscule #nature #insects #ladybugs #animatedseries", "Patatas Fritas 🍟 Minuscule | 55' Compilation", "660a6fb8-29a9-4741-bd2a-16baba9208e2", "https://www.youtube.com/watch?v=SCmQ8PfbcOQ", "SCmQ8PfbcOQ", 2459, false, 18, "/downloads/Miniscule Season 2/2025-12-06 Patatas Fritas 🍟 Minuscule | 55' Compilation/Patatas Fritas 🍟 Minuscule | 55' Compilation [SCmQ8PfbcOQ].mp4", false, false, false, 5, [], 1, ~U[2025-12-06 19:00:26Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Patatas Fritas | S02E21\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Away all boarders! | S02E41\n00:11:05 | The Grocery Store Incident | S02E39\n00:14:36 | Turbo speed | S02E58\n00:18:01 | Trapped | S02E64\n00:21:43 | Twelve Angry Snails | S02E66\n00:25:16 | The Hat Of The Medusa | S02E17\n00:29:01 | Homeless | S02E02\n00:32:49 | The Chocolate Chase! | S02E19\n00:36:34 | Mission : BBQ | S02E09\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Patatas #Fritas #wasps #universe #Tabasco #wasp #patrol #ladybug #Minuscule #nature #insects #ladybugs #animatedseries", "Patatas Fritas 🍟 Minuscule | 55' Compilation", "https://www.youtube.com/watch?v=SCmQ8PfbcOQ", "SCmQ8PfbcOQ", 2459, false, "/downloads/Miniscule Season 2/2025-12-06 Patatas Fritas 🍟 Minuscule | 55' Compilation/Patatas Fritas 🍟 Minuscule | 55' Compilation [SCmQ8PfbcOQ].mp4", false, 5, ~U[2025-12-06 19:00:26Z]] 22:57:38.335 [debug] QUERY OK source="sources" db=0.3ms idle=8.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" = ?) [5] 22:57:38.336 [debug] QUERY OK source="media_items" db=1.0ms idle=7.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-20 11:02:05Z], 5] 22:57:38.340 [debug] QUERY OK source="media_items" db=2.7ms idle=7.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mad fly | S03E08\n00:01:29 | The Magic Fly | S03E15\n00:02:58 | At Full Speed | S03E22\n00:04:19 | He Who Laughs Last, laughs Longest | S03E12\n00:05:48 | Pea supper | S03E01\n00:07:17 | Webrizon | S03E02\n00:08:46 | A Christmas Apple | S03E04\n00:10:15 | Like A Cannon Ball | S03E03\n00:11:44 | A Pea In The Hand Is Worth... | S03E05\n00:13:17 | Glue | S03E06\n00:14:54 | The Wicked Web | S03E07\n00:16:23 | The Cruel Cow in The Meadow | S03E09\n00:17:53 | Need for Speed | S03E10\n00:19:22 | Sow The Wind And Reap The Storm | S03E11\n00:21:00 | Fly Swatter | S03E13\n00:22:29 | Mosquito Net | S03E14\n00:23:58 | The Doughnut | S03E16\n00:25:31 | Ant On The Rocks | S03E17\n00:27:02 | The Artist | S03E18\n00:28:47 | Telecanetic | S03E19\n00:30:16 | Chocolate Fly | S03E23\n00:31:45 | A Dream Of Speed | S03E24\n00:33:14 | The Sled and the Ant | S03E25\n00:34:43 | Blunder | S03E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Magic #Spider #Fly #Winner #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly 🚕 Minuscule Marathon✨ 50' Compilation", "d2a67434-5120-452c-8a32-b8b7daac94b3", "https://www.youtube.com/watch?v=BdpBsxt6z5I", "BdpBsxt6z5I", 2203, false, 19, "/downloads/Miniscule Season 2/2025-11-20 Mad fly 🚕 Minuscule Marathon✨ 50' Compilation/Mad fly 🚕 Minuscule Marathon✨ 50' Compilation [BdpBsxt6z5I].mp4", false, false, false, 5, [], 1, ~U[2025-11-20 11:02:05Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mad fly | S03E08\n00:01:29 | The Magic Fly | S03E15\n00:02:58 | At Full Speed | S03E22\n00:04:19 | He Who Laughs Last, laughs Longest | S03E12\n00:05:48 | Pea supper | S03E01\n00:07:17 | Webrizon | S03E02\n00:08:46 | A Christmas Apple | S03E04\n00:10:15 | Like A Cannon Ball | S03E03\n00:11:44 | A Pea In The Hand Is Worth... | S03E05\n00:13:17 | Glue | S03E06\n00:14:54 | The Wicked Web | S03E07\n00:16:23 | The Cruel Cow in The Meadow | S03E09\n00:17:53 | Need for Speed | S03E10\n00:19:22 | Sow The Wind And Reap The Storm | S03E11\n00:21:00 | Fly Swatter | S03E13\n00:22:29 | Mosquito Net | S03E14\n00:23:58 | The Doughnut | S03E16\n00:25:31 | Ant On The Rocks | S03E17\n00:27:02 | The Artist | S03E18\n00:28:47 | Telecanetic | S03E19\n00:30:16 | Chocolate Fly | S03E23\n00:31:45 | A Dream Of Speed | S03E24\n00:33:14 | The Sled and the Ant | S03E25\n00:34:43 | Blunder | S03E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Magic #Spider #Fly #Winner #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly 🚕 Minuscule Marathon✨ 50' Compilation", "https://www.youtube.com/watch?v=BdpBsxt6z5I", "BdpBsxt6z5I", 2203, false, "/downloads/Miniscule Season 2/2025-11-20 Mad fly 🚕 Minuscule Marathon✨ 50' Compilation/Mad fly 🚕 Minuscule Marathon✨ 50' Compilation [BdpBsxt6z5I].mp4", false, 5, ~U[2025-11-20 11:02:05Z]] 22:57:38.341 [debug] QUERY OK source="sources" db=0.3ms idle=10.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" = ?) [5] 22:57:38.343 [debug] QUERY OK source="media_items" db=1.0ms idle=8.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-25 07:00:27Z], 5] 22:57:38.347 [debug] QUERY OK source="media_items" db=2.7ms idle=8.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pollution | S02E60\n00:03:45 | Zzz zzz | S02E44\n00:07:16 | Sunburn | S02E40\n00:10:40 | The Annoying Neighbor | S02E28\n00:14:16 | Mission : BBQ | S02E09\n00:18:02 | Acrobatics | S02E16\n00:21:47 | The Mosquito Of The Caribbean | S02E57\n00:25:33 | Trapped | S02E64\n00:29:15 | Zzz In The Metro | S02E53\n00:32:51 | Labyrinth | S02E69\n00:36:36 | The Monster Of The Haunted Swamp | S02E37\n00:40:07 | Gather More to Pollinate More | S02E32\n00:43:52 | Microzilla | S02E07\n00:47:38 | Honey Fly | S02E08\n00:51:28 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pollution #Mosquito #City #Noise #mosquito #bedroom #sleeping #challenge #Minuscule #nature #insects #ladybugs #animatedseries", "Pollution | Minuscule | 70' Compilation", "376483e6-9c55-4a7e-8f65-aa9286202de2", "https://www.youtube.com/watch?v=W4uAWoVZClM", "W4uAWoVZClM", 3337, false, 20, "/downloads/Miniscule Season 2/2025-11-25 Pollution | Minuscule | 70' Compilation/Pollution | Minuscule | 70' Compilation [W4uAWoVZClM].mp4", false, false, false, 5, [], 1, ~U[2025-11-25 07:00:27Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pollution | S02E60\n00:03:45 | Zzz zzz | S02E44\n00:07:16 | Sunburn | S02E40\n00:10:40 | The Annoying Neighbor | S02E28\n00:14:16 | Mission : BBQ | S02E09\n00:18:02 | Acrobatics | S02E16\n00:21:47 | The Mosquito Of The Caribbean | S02E57\n00:25:33 | Trapped | S02E64\n00:29:15 | Zzz In The Metro | S02E53\n00:32:51 | Labyrinth | S02E69\n00:36:36 | The Monster Of The Haunted Swamp | S02E37\n00:40:07 | Gather More to Pollinate More | S02E32\n00:43:52 | Microzilla | S02E07\n00:47:38 | Honey Fly | S02E08\n00:51:28 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pollution #Mosquito #City #Noise #mosquito #bedroom #sleeping #challenge #Minuscule #nature #insects #ladybugs #animatedseries", "Pollution | Minuscule | 70' Compilation", "https://www.youtube.com/watch?v=W4uAWoVZClM", "W4uAWoVZClM", 3337, false, "/downloads/Miniscule Season 2/2025-11-25 Pollution | Minuscule | 70' Compilation/Pollution | Minuscule | 70' Compilation [W4uAWoVZClM].mp4", false, 5, ~U[2025-11-25 07:00:27Z]] 22:57:38.348 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.349 [debug] QUERY OK source="media_items" db=0.9ms idle=6.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-13 11:01:42Z], 5] 22:57:38.352 [debug] QUERY OK source="media_items" db=2.4ms idle=6.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Gather More to Pollinate More | S02E32\n00:03:45 | The Chocolate Chase! | S02E19\n00:07:31 | Fly Hunting | S02E24\n00:11:04 | Turbo speed | S02E58\n00:14:29 | The Annoying Neighbor | S02E28\n00:18:05 | Away all boarders! | S02E41\n00:21:47 | Trapped | S02E64\n00:25:30 | The Grocery Store Incident | S02E39\n00:29:00 | Mission : BBQ | S02E09\n00:32:46 | The Butterfly Effect | S02E23\n00:36:08 | At Full Speed | S02E27\n00:39:52 | Hop On! | S02E25\n00:43:29 | If Only Lonely | S02E22\n00:47:15 | Zzz In The Metro | S02E53\n00:50:50 | Honey Fly | S02E08\n00:54:40 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#gather #pollinate #productivity #competition #chocolate #centipede #bees #wasps #Minuscule #nature #insects #ladybugs #animatedseries", "Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation", "085b51c2-7187-4986-a6cb-1cc1ce95642a", "https://www.youtube.com/watch?v=ooZmfVoI3SY", "ooZmfVoI3SY", 3530, false, 21, "/downloads/Miniscule Season 2/2025-11-13 Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation/Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation [ooZmfVoI3SY].mp4", false, false, false, 5, [], 1, ~U[2025-11-13 11:01:42Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Gather More to Pollinate More | S02E32\n00:03:45 | The Chocolate Chase! | S02E19\n00:07:31 | Fly Hunting | S02E24\n00:11:04 | Turbo speed | S02E58\n00:14:29 | The Annoying Neighbor | S02E28\n00:18:05 | Away all boarders! | S02E41\n00:21:47 | Trapped | S02E64\n00:25:30 | The Grocery Store Incident | S02E39\n00:29:00 | Mission : BBQ | S02E09\n00:32:46 | The Butterfly Effect | S02E23\n00:36:08 | At Full Speed | S02E27\n00:39:52 | Hop On! | S02E25\n00:43:29 | If Only Lonely | S02E22\n00:47:15 | Zzz In The Metro | S02E53\n00:50:50 | Honey Fly | S02E08\n00:54:40 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#gather #pollinate #productivity #competition #chocolate #centipede #bees #wasps #Minuscule #nature #insects #ladybugs #animatedseries", "Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation", "https://www.youtube.com/watch?v=ooZmfVoI3SY", "ooZmfVoI3SY", 3530, false, "/downloads/Miniscule Season 2/2025-11-13 Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation/Gather More to Pollinate More 🐝 Minuscule 🍃 75' Compilation [ooZmfVoI3SY].mp4", false, 5, ~U[2025-11-13 11:01:42Z]] 22:57:38.354 [debug] QUERY OK source="sources" db=0.8ms queue=0.3ms 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" = ?) [5] 22:57:38.355 [debug] QUERY OK source="media_items" db=1.0ms idle=6.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-16 07:00:17Z], 5] 22:57:38.358 [debug] QUERY OK source="media_items" db=1.7ms idle=6.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Yule log | S02E35\n00:03:45 | Rascals! | S02E38\n00:07:25 | Sand Castle | S02E49\n00:10:51 | White As Snow | S02E63\n00:14:28 | Down The Chimney | S02E42\n00:18:13 | To The Port Now! | S02E43\n00:21:41 | Ants On The Train | S02E52\n00:25:12 | Sausage Predator | S02E06\n00:28:58 | The Chocolate Chase! | S02E19\n00:32:43 | Mission : BBQ | S02E09\n00:36:29 | An Acorn Season | S02E05\n00:40:14 | It's a tie! | S02E67\n00:43:55 | Ladybugland | S02E62\n00:47:22 | Snow Fly | S02E51\n00:50:47 | Snow Carrot | S02E59\n00:54:25 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Yule #Christmas #fire #ants #battle #steal #leader #Minuscule #nature #insects #ladybugs #animatedseries", "The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️", "11af81ec-cda1-477a-87cb-3bc109475be1", "https://www.youtube.com/watch?v=Lu76r0t06JQ", "Lu76r0t06JQ", 3527, false, 22, "/downloads/Miniscule Season 2/2025-12-16 The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️/The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️ [Lu76r0t06JQ].mp4", false, false, false, 5, [], 1, ~U[2025-12-16 07:00:17Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Yule log | S02E35\n00:03:45 | Rascals! | S02E38\n00:07:25 | Sand Castle | S02E49\n00:10:51 | White As Snow | S02E63\n00:14:28 | Down The Chimney | S02E42\n00:18:13 | To The Port Now! | S02E43\n00:21:41 | Ants On The Train | S02E52\n00:25:12 | Sausage Predator | S02E06\n00:28:58 | The Chocolate Chase! | S02E19\n00:32:43 | Mission : BBQ | S02E09\n00:36:29 | An Acorn Season | S02E05\n00:40:14 | It's a tie! | S02E67\n00:43:55 | Ladybugland | S02E62\n00:47:22 | Snow Fly | S02E51\n00:50:47 | Snow Carrot | S02E59\n00:54:25 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Yule #Christmas #fire #ants #battle #steal #leader #Minuscule #nature #insects #ladybugs #animatedseries", "The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️", "https://www.youtube.com/watch?v=Lu76r0t06JQ", "Lu76r0t06JQ", 3527, false, "/downloads/Miniscule Season 2/2025-12-16 The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️/The Yule log | Minuscule 🍃🎄 75' Christmas Compilation 🎅❄️ [Lu76r0t06JQ].mp4", false, 5, ~U[2025-12-16 07:00:17Z]] 22:57:38.359 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.360 [debug] QUERY OK source="media_items" db=0.9ms idle=5.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-06 11:01:52Z], 5] 22:57:38.364 [debug] QUERY OK source="media_items" db=2.6ms idle=5.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Pathetic She'Nut'Igan | S02E12\n00:03:45 | Summer Hat | S02E48\n00:07:27 | The Stubborn Spider | S02E04\n00:11:12 | Brushing | S02E46\n00:14:44 | The Grocery Store Racketeer | S02E50\n00:18:20 | The Hat Of The Medusa | S02E17\n00:22:06 | Honey Fly | S02E08\n00:25:56 | Ladybugland | S02E62\n00:29:23 | Refrigerated | S02E65\n00:32:58 | Microzilla | S02E07\n00:36:43 | Fly Hunting | S02E24\n00:40:17 | Spider Driver | S02E36\n00:43:58 | To The Port Now! | S02E43\n00:47:26 | The Chocolate Chase! | S02E19\n00:51:11 | If Only Lonely | S02E22\n00:54:57 | Ants On The Train | S02E52\n00:58:28 | Labyrinth | S02E69\n01:02:14 | Spider from the Depths | S02E31\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pathetic #Spider #Invent #Strategies #summer #hat #fly #spider #Minuscule #nature #insects #ladybugs #animatedseries", "A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation", "d51208b0-2d3d-4870-ae81-1dc8eb81a4ad", "https://www.youtube.com/watch?v=yOHwnMxTeok", "yOHwnMxTeok", 3987, false, 23, "/downloads/Miniscule Season 2/2025-11-06 A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation/A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation [yOHwnMxTeok].mp4", false, false, false, 5, [], 1, ~U[2025-11-06 11:01:52Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Pathetic She'Nut'Igan | S02E12\n00:03:45 | Summer Hat | S02E48\n00:07:27 | The Stubborn Spider | S02E04\n00:11:12 | Brushing | S02E46\n00:14:44 | The Grocery Store Racketeer | S02E50\n00:18:20 | The Hat Of The Medusa | S02E17\n00:22:06 | Honey Fly | S02E08\n00:25:56 | Ladybugland | S02E62\n00:29:23 | Refrigerated | S02E65\n00:32:58 | Microzilla | S02E07\n00:36:43 | Fly Hunting | S02E24\n00:40:17 | Spider Driver | S02E36\n00:43:58 | To The Port Now! | S02E43\n00:47:26 | The Chocolate Chase! | S02E19\n00:51:11 | If Only Lonely | S02E22\n00:54:57 | Ants On The Train | S02E52\n00:58:28 | Labyrinth | S02E69\n01:02:14 | Spider from the Depths | S02E31\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pathetic #Spider #Invent #Strategies #summer #hat #fly #spider #Minuscule #nature #insects #ladybugs #animatedseries", "A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation", "https://www.youtube.com/watch?v=yOHwnMxTeok", "yOHwnMxTeok", 3987, false, "/downloads/Miniscule Season 2/2025-11-06 A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation/A Pathetic She'Nut'Igan | Minuscule 🍃 85' Compilation [yOHwnMxTeok].mp4", false, 5, ~U[2025-11-06 11:01:52Z]] 22:57:38.365 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.366 [debug] QUERY OK source="media_items" db=1.0ms idle=7.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-04 07:00:53Z], 5] 22:57:38.370 [debug] QUERY OK source="media_items" db=2.5ms idle=8.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Black Slope For Gastropod Skiers | S02E55\n00:03:45 | Night of the Gastropods | S02E18\n00:07:31 | Snow Carrot | S02E59\n00:11:09 | Twelve Angry Snails | S02E66\n00:14:42 | Thirsty | S02E29\n00:18:14 | The Long Road | S02E34\n00:21:57 | Snow Fly | S02E51\n00:25:21 | It's a tie! | S02E67\n00:29:02 | The Vegetable Garden | S02E10\n00:32:46 | Away all boarders! | S02E41\n00:36:29 | Down The Chimney | S02E42\n00:40:14 | White As Snow | S02E63\n00:43:51 | Sleep Walker | S02E68\n00:47:15 | Sand Castle | S02E49\n00:50:42 | At Full Speed | S02E27\n00:54:25 | Homeless | S02E02\n00:58:13 | The Hat Of The Medusa | S02E17\n01:01:59 | Metamorphosis | S02E61\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Black #Slope #Skiers #Gastropod #garden #snail #war #salad #Minuscule #nature #insects #ladybugs #animatedseries", "Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation", "76e0f53e-66f4-4afc-b0ab-613833974ae1", "https://www.youtube.com/watch?v=yTR3JnYV6Tk", "yTR3JnYV6Tk", 3968, false, 24, "/downloads/Miniscule Season 2/2025-11-04 Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation/Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation [yTR3JnYV6Tk].mp4", false, false, false, 5, [], 1, ~U[2025-11-04 07:00:53Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Black Slope For Gastropod Skiers | S02E55\n00:03:45 | Night of the Gastropods | S02E18\n00:07:31 | Snow Carrot | S02E59\n00:11:09 | Twelve Angry Snails | S02E66\n00:14:42 | Thirsty | S02E29\n00:18:14 | The Long Road | S02E34\n00:21:57 | Snow Fly | S02E51\n00:25:21 | It's a tie! | S02E67\n00:29:02 | The Vegetable Garden | S02E10\n00:32:46 | Away all boarders! | S02E41\n00:36:29 | Down The Chimney | S02E42\n00:40:14 | White As Snow | S02E63\n00:43:51 | Sleep Walker | S02E68\n00:47:15 | Sand Castle | S02E49\n00:50:42 | At Full Speed | S02E27\n00:54:25 | Homeless | S02E02\n00:58:13 | The Hat Of The Medusa | S02E17\n01:01:59 | Metamorphosis | S02E61\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Black #Slope #Skiers #Gastropod #garden #snail #war #salad #Minuscule #nature #insects #ladybugs #animatedseries", "Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation", "https://www.youtube.com/watch?v=yTR3JnYV6Tk", "yTR3JnYV6Tk", 3968, false, "/downloads/Miniscule Season 2/2025-11-04 Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation/Black Slope For Gastropod Skiers | Minuscule 🍃 85' Compilation [yTR3JnYV6Tk].mp4", false, 5, ~U[2025-11-04 07:00:53Z]] 22:57:38.371 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.372 [debug] QUERY OK source="media_items" db=0.7ms idle=7.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-08 19:00:26Z], 5] 22:57:38.376 [debug] QUERY OK source="media_items" db=2.4ms idle=7.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Hop On! | S02E25\n00:03:37 | Zzz In The Metro | S02E53\n00:07:12 | Honey Fly | S02E08\n00:11:02 | Fly Hunting | S02E24\n00:14:36 | The Butterfly Effect | S02E23\n00:17:58 | Valentine's Day | S02E15\n00:21:44 | Snow Fly | S02E51\n00:25:08 | Turbo speed | S02E58\n00:28:33 | Metamorphosis | S02E61\n00:32:03 | At Full Speed | S02E27\n00:35:47 | Trapped | S02E64\n00:39:30 | The Chocolate Chase! | S02E19\n00:43:15 | Sleep Walker | S02E68\n00:46:40 | Down The Chimney | S02E42\n00:50:25 | If Only Lonely | S02E22\n00:54:11 | The Long Road | S02E34\n00:57:54 | The Wing Case | S02E01\n01:01:39 | Love Apple | S02E45\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #butterfly #traffic #crossroad #ladybug #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Hop On! | Minuscule 🍃 85' Compilation", "9a128977-9cc8-4f0e-8cd3-e38ecde68f71", "https://www.youtube.com/watch?v=Es5UBeusgdQ", "Es5UBeusgdQ", 3957, false, 25, "/downloads/Miniscule Season 2/2025-11-08 Hop On! | Minuscule 🍃 85' Compilation/Hop On! | Minuscule 🍃 85' Compilation [Es5UBeusgdQ].mp4", false, false, false, 5, [], 1, ~U[2025-11-08 19:00:26Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Hop On! | S02E25\n00:03:37 | Zzz In The Metro | S02E53\n00:07:12 | Honey Fly | S02E08\n00:11:02 | Fly Hunting | S02E24\n00:14:36 | The Butterfly Effect | S02E23\n00:17:58 | Valentine's Day | S02E15\n00:21:44 | Snow Fly | S02E51\n00:25:08 | Turbo speed | S02E58\n00:28:33 | Metamorphosis | S02E61\n00:32:03 | At Full Speed | S02E27\n00:35:47 | Trapped | S02E64\n00:39:30 | The Chocolate Chase! | S02E19\n00:43:15 | Sleep Walker | S02E68\n00:46:40 | Down The Chimney | S02E42\n00:50:25 | If Only Lonely | S02E22\n00:54:11 | The Long Road | S02E34\n00:57:54 | The Wing Case | S02E01\n01:01:39 | Love Apple | S02E45\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #butterfly #traffic #crossroad #ladybug #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Hop On! | Minuscule 🍃 85' Compilation", "https://www.youtube.com/watch?v=Es5UBeusgdQ", "Es5UBeusgdQ", 3957, false, "/downloads/Miniscule Season 2/2025-11-08 Hop On! | Minuscule 🍃 85' Compilation/Hop On! | Minuscule 🍃 85' Compilation [Es5UBeusgdQ].mp4", false, 5, ~U[2025-11-08 19:00:26Z]] 22:57:38.377 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.378 [debug] QUERY OK source="media_items" db=0.7ms idle=7.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-22 19:01:03Z], 5] 22:57:38.389 [debug] QUERY OK source="media_items" db=10.1ms idle=7.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Romeo and Antiet | S03E27\n00:12:21 | Night Of The Mandibles | S03E28\n00:39:06 | Ant On The Rocks | S03E17\n00:40:37 | Sow The Wind And Reap The Storm | S03E11\n00:42:15 | A Pea In The Hand Is Worth... | S03E05\n00:43:47 | The Magic Fly | S03E15\n00:45:16 | Blunder | S03E26\n00:46:56 | The Sled and the Ant | S03E25\n00:48:25 | Telecanetic | S03E19\n00:49:54 | The Artist | S03E18\n00:51:39 | A Dream Of Speed | S03E24\n00:53:09 | Mosquito Net | S03E14\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #conflict #spying #leadership #insects #entomologist #capture #ladybird #Minuscule #nature #ladybugs #animatedseries", "Romeo and Antiet | Minuscule Specials | 60' Compilation", "c66a91a2-32d6-44c5-a52c-d08afafebfdd", "https://www.youtube.com/watch?v=wo0P_r_WzPU", "wo0P_r_WzPU", 3297, false, 26, "/downloads/Miniscule Season 2/2025-11-22 Romeo and Antiet | Minuscule Specials | 60' Compilation/Romeo and Antiet | Minuscule Specials | 60' Compilation [wo0P_r_WzPU].mp4", false, false, false, 5, [], 1, ~U[2025-11-22 19:01:03Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Romeo and Antiet | S03E27\n00:12:21 | Night Of The Mandibles | S03E28\n00:39:06 | Ant On The Rocks | S03E17\n00:40:37 | Sow The Wind And Reap The Storm | S03E11\n00:42:15 | A Pea In The Hand Is Worth... | S03E05\n00:43:47 | The Magic Fly | S03E15\n00:45:16 | Blunder | S03E26\n00:46:56 | The Sled and the Ant | S03E25\n00:48:25 | Telecanetic | S03E19\n00:49:54 | The Artist | S03E18\n00:51:39 | A Dream Of Speed | S03E24\n00:53:09 | Mosquito Net | S03E14\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #conflict #spying #leadership #insects #entomologist #capture #ladybird #Minuscule #nature #ladybugs #animatedseries", "Romeo and Antiet | Minuscule Specials | 60' Compilation", "https://www.youtube.com/watch?v=wo0P_r_WzPU", "wo0P_r_WzPU", 3297, false, "/downloads/Miniscule Season 2/2025-11-22 Romeo and Antiet | Minuscule Specials | 60' Compilation/Romeo and Antiet | Minuscule Specials | 60' Compilation [wo0P_r_WzPU].mp4", false, 5, ~U[2025-11-22 19:01:03Z]] 22:57:38.390 [debug] QUERY OK source="sources" db=0.3ms idle=17.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" = ?) [5] 22:57:38.392 [debug] QUERY OK source="media_items" db=1.0ms idle=15.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-28 15:02:07Z], 5] 22:57:38.395 [debug] QUERY OK source="media_items" db=2.6ms idle=15.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Homeless | S02E02\n00:03:47 | The Housing Plant Project | S02E26\n00:07:24 | The Annoying Neighbor | S02E28\n00:11:00 | Love Apple | S02E45\n00:14:39 | Trapped | S02E64\n00:18:22 | A Butterfly's Nightmare | S02E20\n00:21:39 | The Iron Monster | S02E33\n00:25:12 | Metamorphosis | S02E61\n00:28:43 | Beehive On A Troll | S02E56\n00:32:13 | The Wing Case | S02E01\n00:35:59 | The Vegetable Garden | S02E10\n00:39:43 | Away all boarders! | S02E41\n00:43:26 | If Only Lonely | S02E22\n00:47:11 | The Hat Of The Medusa | S02E17\n00:50:57 | An Acorn Season | S02E05\n00:54:42 | Patatas Fritas | S02E21\n00:58:28 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Caterpillar #Refuge #Insects #Homeless #caterpillar #plant #winter #competition #Minuscule #nature #insects #ladybugs #animatedseries", "Homeless 🎃 Minuscule 🍃 80' Compilation", "57abb055-570a-45d4-8073-7ff2cf8292b3", "https://www.youtube.com/watch?v=xQPQfuEUDH0", "xQPQfuEUDH0", 3772, false, 27, "/downloads/Miniscule Season 2/2025-10-28 Homeless 🎃 Minuscule 🍃 80' Compilation/Homeless 🎃 Minuscule 🍃 80' Compilation [xQPQfuEUDH0].mp4", false, false, false, 5, [], 1, ~U[2025-10-28 15:02:07Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Homeless | S02E02\n00:03:47 | The Housing Plant Project | S02E26\n00:07:24 | The Annoying Neighbor | S02E28\n00:11:00 | Love Apple | S02E45\n00:14:39 | Trapped | S02E64\n00:18:22 | A Butterfly's Nightmare | S02E20\n00:21:39 | The Iron Monster | S02E33\n00:25:12 | Metamorphosis | S02E61\n00:28:43 | Beehive On A Troll | S02E56\n00:32:13 | The Wing Case | S02E01\n00:35:59 | The Vegetable Garden | S02E10\n00:39:43 | Away all boarders! | S02E41\n00:43:26 | If Only Lonely | S02E22\n00:47:11 | The Hat Of The Medusa | S02E17\n00:50:57 | An Acorn Season | S02E05\n00:54:42 | Patatas Fritas | S02E21\n00:58:28 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Caterpillar #Refuge #Insects #Homeless #caterpillar #plant #winter #competition #Minuscule #nature #insects #ladybugs #animatedseries", "Homeless 🎃 Minuscule 🍃 80' Compilation", "https://www.youtube.com/watch?v=xQPQfuEUDH0", "xQPQfuEUDH0", 3772, false, "/downloads/Miniscule Season 2/2025-10-28 Homeless 🎃 Minuscule 🍃 80' Compilation/Homeless 🎃 Minuscule 🍃 80' Compilation [xQPQfuEUDH0].mp4", false, 5, ~U[2025-10-28 15:02:07Z]] 22:57:38.396 [debug] QUERY OK source="sources" db=0.3ms idle=17.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" = ?) [5] 22:57:38.398 [debug] QUERY OK source="media_items" db=1.0ms idle=7.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-01 19:00:34Z], 5] 22:57:38.401 [debug] QUERY OK source="media_items" db=1.8ms idle=8.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | High voltage | S02E30\n00:03:34 | Spider Driver | S02E36\n00:07:15 | Labyrinth | S02E69\n00:11:01 | Bzzaping | S02E03\n00:14:48 | Spider from the Depths | S02E31\n00:18:22 | Refrigerated | S02E65\n00:21:57 | Brushing | S02E46\n00:25:29 | Ladybugland | S02E62\n00:28:57 | Ants On The Train | S02E52\n00:32:28 | Snow Fly | S02E51\n00:35:53 | The Stubborn Spider | S02E04\n00:39:38 | A Pathetic She'Nut'Igan | S02E12\n00:43:24 | Fly Hunting | S02E24\n00:46:57 | Turbo speed | S02E58\n00:50:22 | The Iron Monster | S02E33\n00:53:55 | Summer Hat | S02E48\n00:57:37 | Microzilla | S02E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#electricity #spider #fly #danger #flies #ladybug #car #Minuscule #nature #insects #ladybugs #animatedseries", "High voltage | Minuscule 🍃 80' Compilation", "37080ab1-7839-4e6a-b5b2-e4ec4a9e8f1d", "https://www.youtube.com/watch?v=UXxEZXNs1RM", "UXxEZXNs1RM", 3721, false, 28, "/downloads/Miniscule Season 2/2025-11-01 High voltage | Minuscule 🍃 80' Compilation/High voltage | Minuscule 🍃 80' Compilation [UXxEZXNs1RM].mp4", false, false, false, 5, [], 1, ~U[2025-11-01 19:00:34Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | High voltage | S02E30\n00:03:34 | Spider Driver | S02E36\n00:07:15 | Labyrinth | S02E69\n00:11:01 | Bzzaping | S02E03\n00:14:48 | Spider from the Depths | S02E31\n00:18:22 | Refrigerated | S02E65\n00:21:57 | Brushing | S02E46\n00:25:29 | Ladybugland | S02E62\n00:28:57 | Ants On The Train | S02E52\n00:32:28 | Snow Fly | S02E51\n00:35:53 | The Stubborn Spider | S02E04\n00:39:38 | A Pathetic She'Nut'Igan | S02E12\n00:43:24 | Fly Hunting | S02E24\n00:46:57 | Turbo speed | S02E58\n00:50:22 | The Iron Monster | S02E33\n00:53:55 | Summer Hat | S02E48\n00:57:37 | Microzilla | S02E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#electricity #spider #fly #danger #flies #ladybug #car #Minuscule #nature #insects #ladybugs #animatedseries", "High voltage | Minuscule 🍃 80' Compilation", "https://www.youtube.com/watch?v=UXxEZXNs1RM", "UXxEZXNs1RM", 3721, false, "/downloads/Miniscule Season 2/2025-11-01 High voltage | Minuscule 🍃 80' Compilation/High voltage | Minuscule 🍃 80' Compilation [UXxEZXNs1RM].mp4", false, 5, ~U[2025-11-01 19:00:34Z]] 22:57:38.402 [debug] QUERY OK source="sources" db=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.403 [debug] QUERY OK source="media_items" db=1.0ms idle=7.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-23 10:00:48Z], 5] 22:57:38.407 [debug] QUERY OK source="media_items" db=2.4ms idle=7.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Monster Of The Haunted Swamp | S02E37\n00:03:30 | The Iron Monster | S02E33\n00:07:04 | The Mosquito Of The Caribbean | S02E57\n00:10:49 | Microzilla | S02E07\n00:14:35 | The Hat Of The Medusa | S02E17\n00:18:20 | Zzz zzz | S02E44\n00:21:51 | Ladybugland | S02E62\n00:25:18 | Mission : BBQ | S02E09\n00:29:04 | Homeless | S02E02\n00:32:51 | Spider from the Depths | S02E31\n00:36:26 | Night of the Gastropods | S02E18\n00:40:11 | Sausage Predator | S02E06\n00:43:57 | The Annoying Neighbor | S02E28\n00:47:33 | Summer Hat | S02E48\n00:51:14 | An Acorn Season | S02E05\n00:55:00 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Monster #Swamp #Insects #Sounds #Iron #Panic #Minuscule #nature #insects #ladybugs #animatedseries", "The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation", "d574a9b0-ef07-4ebc-b3bc-f2f937741e61", "https://www.youtube.com/watch?v=N5cGHceTqJU", "N5cGHceTqJU", 3564, false, 29, "/downloads/Miniscule Season 2/2025-10-23 The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation/The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation [N5cGHceTqJU].mp4", false, false, false, 5, [], 1, ~U[2025-10-23 10:00:48Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Monster Of The Haunted Swamp | S02E37\n00:03:30 | The Iron Monster | S02E33\n00:07:04 | The Mosquito Of The Caribbean | S02E57\n00:10:49 | Microzilla | S02E07\n00:14:35 | The Hat Of The Medusa | S02E17\n00:18:20 | Zzz zzz | S02E44\n00:21:51 | Ladybugland | S02E62\n00:25:18 | Mission : BBQ | S02E09\n00:29:04 | Homeless | S02E02\n00:32:51 | Spider from the Depths | S02E31\n00:36:26 | Night of the Gastropods | S02E18\n00:40:11 | Sausage Predator | S02E06\n00:43:57 | The Annoying Neighbor | S02E28\n00:47:33 | Summer Hat | S02E48\n00:51:14 | An Acorn Season | S02E05\n00:55:00 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Monster #Swamp #Insects #Sounds #Iron #Panic #Minuscule #nature #insects #ladybugs #animatedseries", "The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation", "https://www.youtube.com/watch?v=N5cGHceTqJU", "N5cGHceTqJU", 3564, false, "/downloads/Miniscule Season 2/2025-10-23 The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation/The Monster Of The Haunted Swamp 🎃 Minuscule 🍃 75' Compilation [N5cGHceTqJU].mp4", false, 5, ~U[2025-10-23 10:00:48Z]] 22:57:38.408 [debug] QUERY OK source="sources" db=0.4ms queue=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.409 [debug] QUERY OK source="media_items" db=0.9ms idle=8.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-14 06:00:53Z], 5] 22:57:38.413 [debug] QUERY OK source="media_items" db=2.6ms idle=8.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Umbrella And Coconut Trees | S02E71\n00:03:33 | Down The Chimney | S02E42\n00:07:19 | Trapped | S02E64\n00:11:01 | Zzz In The Metro | S02E53\n00:14:37 | Away all boarders! | S02E41\n00:18:19 | Summer Hat | S02E48\n00:22:01 | Metamorphosis | S02E61\n00:25:31 | Beehive On A Troll | S02E56\n00:29:02 | Snow Carrot | S02E59\n00:32:40 | Ladybugland | S02E62\n00:36:08 | The Wing Case | S02E01\n00:39:53 | If Only Lonely | S02E22\n00:43:39 | Turbo speed | S02E58\n00:47:03 | Snow Fly | S02E51\n00:50:28 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#umbrella #coconut #ladybug #winter #ladybugs #chimney #Christmas #Minuscule #nature #insects #animatedseries", "Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation", "5493a39c-db77-4a97-8ec3-36c4e90b96a5", "https://www.youtube.com/watch?v=wJ_yF5dN89w", "wJ_yF5dN89w", 3283, false, 31, "/downloads/Miniscule Season 2/2025-10-14 Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation/Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation [wJ_yF5dN89w].mp4", false, false, false, 5, [], 1, ~U[2025-10-14 06:00:53Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Umbrella And Coconut Trees | S02E71\n00:03:33 | Down The Chimney | S02E42\n00:07:19 | Trapped | S02E64\n00:11:01 | Zzz In The Metro | S02E53\n00:14:37 | Away all boarders! | S02E41\n00:18:19 | Summer Hat | S02E48\n00:22:01 | Metamorphosis | S02E61\n00:25:31 | Beehive On A Troll | S02E56\n00:29:02 | Snow Carrot | S02E59\n00:32:40 | Ladybugland | S02E62\n00:36:08 | The Wing Case | S02E01\n00:39:53 | If Only Lonely | S02E22\n00:43:39 | Turbo speed | S02E58\n00:47:03 | Snow Fly | S02E51\n00:50:28 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#umbrella #coconut #ladybug #winter #ladybugs #chimney #Christmas #Minuscule #nature #insects #animatedseries", "Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation", "https://www.youtube.com/watch?v=wJ_yF5dN89w", "wJ_yF5dN89w", 3283, false, "/downloads/Miniscule Season 2/2025-10-14 Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation/Umbrella And Coconut Trees ☂️ Minuscule 🍃 70' Compilation [wJ_yF5dN89w].mp4", false, 5, ~U[2025-10-14 06:00:53Z]] 22:57:38.414 [debug] QUERY OK source="sources" db=0.3ms queue=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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.415 [debug] QUERY OK source="media_items" db=0.9ms idle=7.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-11 18:00:52Z], 5] 22:57:38.421 [debug] QUERY OK source="media_items" db=5.1ms idle=7.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Acrobatics | S02E16\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Go Blue Go! | S02E54\n00:11:04 | Chewing gum rodeo | S02E14\n00:14:50 | The Chocolate Chase! | S02E19\n00:18:35 | Mission : BBQ | S02E09\n00:22:21 | Honey Fly | S02E08\n00:26:11 | Zzz In The Metro | S02E53\n00:29:46 | It's a tie! | S02E67\n00:33:27 | Turbo speed | S02E58\n00:36:51 | The Annoying Neighbor | S02E28\n00:40:27 | An Acorn Season | S02E05\n00:44:13 | Fly Hunting | S02E24\n00:47:46 | Trapped | S02E64\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acrobatics #Wasps #Ladybird #Competition #Tabasco #wasp #patrol #ladybug #Minuscule #nature #insects #ladybugs #animatedseries", "Acrobatics 🎃 Minuscule 🍃 70' Compilation", "4a40b540-fc63-4951-a537-46482f136b43", "https://www.youtube.com/watch?v=u9kg6go3tPc", "u9kg6go3tPc", 3128, false, 32, "/downloads/Miniscule Season 2/2025-10-11 Acrobatics 🎃 Minuscule 🍃 70' Compilation/Acrobatics 🎃 Minuscule 🍃 70' Compilation [u9kg6go3tPc].mp4", false, false, false, 5, [], 1, ~U[2025-10-11 18:00:52Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Acrobatics | S02E16\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Go Blue Go! | S02E54\n00:11:04 | Chewing gum rodeo | S02E14\n00:14:50 | The Chocolate Chase! | S02E19\n00:18:35 | Mission : BBQ | S02E09\n00:22:21 | Honey Fly | S02E08\n00:26:11 | Zzz In The Metro | S02E53\n00:29:46 | It's a tie! | S02E67\n00:33:27 | Turbo speed | S02E58\n00:36:51 | The Annoying Neighbor | S02E28\n00:40:27 | An Acorn Season | S02E05\n00:44:13 | Fly Hunting | S02E24\n00:47:46 | Trapped | S02E64\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acrobatics #Wasps #Ladybird #Competition #Tabasco #wasp #patrol #ladybug #Minuscule #nature #insects #ladybugs #animatedseries", "Acrobatics 🎃 Minuscule 🍃 70' Compilation", "https://www.youtube.com/watch?v=u9kg6go3tPc", "u9kg6go3tPc", 3128, false, "/downloads/Miniscule Season 2/2025-10-11 Acrobatics 🎃 Minuscule 🍃 70' Compilation/Acrobatics 🎃 Minuscule 🍃 70' Compilation [u9kg6go3tPc].mp4", false, 5, ~U[2025-10-11 18:00:52Z]] 22:57:38.422 [debug] QUERY OK source="sources" db=0.3ms idle=12.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" = ?) [5] 22:57:38.424 [debug] QUERY OK source="media_items" db=1.0ms idle=10.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-07 06:00:44Z], 5] 22:57:38.427 [debug] QUERY OK source="media_items" db=2.5ms idle=10.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mission : BBQ | S02E09\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Ladybugland | S02E62\n00:10:50 | Trapped | S02E64\n00:14:33 | Fly Hunting | S02E24\n00:18:06 | The Chocolate Chase! | S02E19\n00:21:52 | Patatas Fritas | S02E21\n00:25:38 | Spider Driver | S02E36\n00:29:19 | The Grocery Store Incident | S02E39\n00:32:50 | Turbo speed | S02E58\n00:36:14 | Sausage Predator | S02E06\n00:40:00 | Chewing gum rodeo | S02E14\n00:43:45 | Acrobatics | S02E16\n00:47:31 | Zzz In The Metro | S02E53\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Tabasco #wasp #patrol #ladybug #BBQ #garden #insects #wasps #Minuscule #nature #ladybugs #animatedseries", "Mission : BBQ 🎃 Minuscule 🍃 65' Compilation", "a6bfe22d-3ff7-4910-803c-effaa1922339", "https://www.youtube.com/watch?v=mRDF4eQMrp0", "mRDF4eQMrp0", 3105, false, 33, "/downloads/Miniscule Season 2/2025-10-07 Mission : BBQ 🎃 Minuscule 🍃 65' Compilation/Mission : BBQ 🎃 Minuscule 🍃 65' Compilation [mRDF4eQMrp0].mp4", false, false, false, 5, [], 1, ~U[2025-10-07 06:00:44Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mission : BBQ | S02E09\n00:03:45 | Top Tabasco | S02E70\n00:07:23 | Ladybugland | S02E62\n00:10:50 | Trapped | S02E64\n00:14:33 | Fly Hunting | S02E24\n00:18:06 | The Chocolate Chase! | S02E19\n00:21:52 | Patatas Fritas | S02E21\n00:25:38 | Spider Driver | S02E36\n00:29:19 | The Grocery Store Incident | S02E39\n00:32:50 | Turbo speed | S02E58\n00:36:14 | Sausage Predator | S02E06\n00:40:00 | Chewing gum rodeo | S02E14\n00:43:45 | Acrobatics | S02E16\n00:47:31 | Zzz In The Metro | S02E53\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Tabasco #wasp #patrol #ladybug #BBQ #garden #insects #wasps #Minuscule #nature #ladybugs #animatedseries", "Mission : BBQ 🎃 Minuscule 🍃 65' Compilation", "https://www.youtube.com/watch?v=mRDF4eQMrp0", "mRDF4eQMrp0", 3105, false, "/downloads/Miniscule Season 2/2025-10-07 Mission : BBQ 🎃 Minuscule 🍃 65' Compilation/Mission : BBQ 🎃 Minuscule 🍃 65' Compilation [mRDF4eQMrp0].mp4", false, 5, ~U[2025-10-07 06:00:44Z]] 22:57:38.428 [debug] QUERY OK source="sources" db=0.3ms idle=12.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" = ?) [5] 22:57:38.430 [debug] QUERY OK source="media_items" db=1.0ms idle=7.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-25 10:00:02Z], 5] 22:57:38.433 [debug] QUERY OK source="media_items" db=2.5ms idle=8.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Mosquito Of The Caribbean | S02E57\n00:03:45 | Zzz zzz | S02E44\n00:07:16 | Sunburn | S02E40\n00:10:40 | Zzz In The Metro | S02E53\n00:14:16 | Trapped | S02E64\n00:17:58 | Summer Hat | S02E48\n00:21:40 | The Hat Of The Medusa | S02E17\n00:25:25 | The Monster Of The Haunted Swamp | S02E37\n00:28:56 | Mission : BBQ | S02E09\n00:32:41 | Labyrinth | S02E69\n00:36:27 | Refrigerated | S02E65\n00:40:01 | Microzilla | S02E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#mosquito #Caribbean #suitcase #rollercoaster #bedroom #sleeping #challenge #Minuscule #nature #insects #ladybugs #animatedseries", "The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation", "e970a0e9-88e1-42b8-a195-d2c7f904bf30", "https://www.youtube.com/watch?v=0uh8G_bFGd4", "0uh8G_bFGd4", 2666, false, 34, "/downloads/Miniscule Season 2/2025-09-25 The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation/The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation [0uh8G_bFGd4].mp4", false, false, false, 5, [], 1, ~U[2025-09-25 10:00:02Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Mosquito Of The Caribbean | S02E57\n00:03:45 | Zzz zzz | S02E44\n00:07:16 | Sunburn | S02E40\n00:10:40 | Zzz In The Metro | S02E53\n00:14:16 | Trapped | S02E64\n00:17:58 | Summer Hat | S02E48\n00:21:40 | The Hat Of The Medusa | S02E17\n00:25:25 | The Monster Of The Haunted Swamp | S02E37\n00:28:56 | Mission : BBQ | S02E09\n00:32:41 | Labyrinth | S02E69\n00:36:27 | Refrigerated | S02E65\n00:40:01 | Microzilla | S02E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#mosquito #Caribbean #suitcase #rollercoaster #bedroom #sleeping #challenge #Minuscule #nature #insects #ladybugs #animatedseries", "The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation", "https://www.youtube.com/watch?v=0uh8G_bFGd4", "0uh8G_bFGd4", 2666, false, "/downloads/Miniscule Season 2/2025-09-25 The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation/The Mosquito Of The Caribbean | Minuscule 🍃 60' Compilation [0uh8G_bFGd4].mp4", false, 5, ~U[2025-09-25 10:00:02Z]] 22:57:38.434 [debug] QUERY OK source="sources" db=0.3ms idle=10.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" = ?) [5] 22:57:38.436 [debug] QUERY OK source="media_items" db=0.9ms idle=7.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-23 06:00:10Z], 5] 22:57:38.439 [debug] QUERY OK source="media_items" db=2.5ms idle=7.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Go Blue Go! | S02E54\n00:03:41 | Bzzaping | S02E03\n00:07:28 | It's a tie! | S02E67\n00:11:09 | Turbo speed | S02E58\n00:14:33 | An Acorn Season | S02E05\n00:18:19 | Spider Driver | S02E36\n00:22:00 | Acrobatics | S02E16\n00:25:46 | At Full Speed | S02E27\n00:29:29 | Away all boarders! | S02E41\n00:33:12 | Snow Fly | S02E51\n00:36:36 | Spider from the Depths | S02E31\n00:40:11 | Fly Hunting | S02E24\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#dragonflies #fight #pond #insects #Bzzaping #fly #spider #television #Minuscule #nature #ladybugs #animatedseries", "Go Blue Go! | Minuscule 🍃 55' Compilation", "a0cb8a5f-ea33-40f3-949d-458fc4ecb213", "https://www.youtube.com/watch?v=CejWzxTmiZI", "CejWzxTmiZI", 2663, false, 35, "/downloads/Miniscule Season 2/2025-09-23 Go Blue Go! | Minuscule 🍃 55' Compilation/Go Blue Go! | Minuscule 🍃 55' Compilation [CejWzxTmiZI].mp4", false, false, false, 5, [], 1, ~U[2025-09-23 06:00:10Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Go Blue Go! | S02E54\n00:03:41 | Bzzaping | S02E03\n00:07:28 | It's a tie! | S02E67\n00:11:09 | Turbo speed | S02E58\n00:14:33 | An Acorn Season | S02E05\n00:18:19 | Spider Driver | S02E36\n00:22:00 | Acrobatics | S02E16\n00:25:46 | At Full Speed | S02E27\n00:29:29 | Away all boarders! | S02E41\n00:33:12 | Snow Fly | S02E51\n00:36:36 | Spider from the Depths | S02E31\n00:40:11 | Fly Hunting | S02E24\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#dragonflies #fight #pond #insects #Bzzaping #fly #spider #television #Minuscule #nature #ladybugs #animatedseries", "Go Blue Go! | Minuscule 🍃 55' Compilation", "https://www.youtube.com/watch?v=CejWzxTmiZI", "CejWzxTmiZI", 2663, false, "/downloads/Miniscule Season 2/2025-09-23 Go Blue Go! | Minuscule 🍃 55' Compilation/Go Blue Go! | Minuscule 🍃 55' Compilation [CejWzxTmiZI].mp4", false, 5, ~U[2025-09-23 06:00:10Z]] 22:57:38.440 [debug] QUERY OK source="sources" db=0.3ms idle=10.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" = ?) [5] 22:57:38.442 [debug] QUERY OK source="media_items" db=1.0ms idle=7.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-11 10:00:21Z], 5] 22:57:38.445 [debug] QUERY OK source="media_items" db=2.4ms idle=8.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Thievish As A Magpie | S02E11\n00:03:45 | The Chocolate Chase! | S02E19\n00:07:31 | Valentine's Day | S02E15\n00:11:16 | The Hat Of The Medusa | S02E17\n00:15:02 | Thirsty | S02E29\n00:18:34 | Ladybugland | S02E62\n00:22:02 | Away all boarders! | S02E41\n00:25:44 | Spider from the Depths | S02E31\n00:29:19 | Mission : BBQ | S02E09\n00:33:04 | Summer Hat | S02E48\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#thief #beach #treasures #panic #chocolate #centipede #bees #wasps #Minuscule #nature #insects #ladybugs #animatedseries", "Thievish As A Magpie | Minuscule 🍃 50' Compilation", "d84b9c41-9a0d-434d-866c-776daba0f9ee", "https://www.youtube.com/watch?v=Fmdn7GZo03E", "Fmdn7GZo03E", 2244, false, 36, "/downloads/Miniscule Season 2/2025-09-11 Thievish As A Magpie | Minuscule 🍃 50' Compilation/Thievish As A Magpie | Minuscule 🍃 50' Compilation [Fmdn7GZo03E].mp4", false, false, false, 5, [], 1, ~U[2025-09-11 10:00:21Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Thievish As A Magpie | S02E11\n00:03:45 | The Chocolate Chase! | S02E19\n00:07:31 | Valentine's Day | S02E15\n00:11:16 | The Hat Of The Medusa | S02E17\n00:15:02 | Thirsty | S02E29\n00:18:34 | Ladybugland | S02E62\n00:22:02 | Away all boarders! | S02E41\n00:25:44 | Spider from the Depths | S02E31\n00:29:19 | Mission : BBQ | S02E09\n00:33:04 | Summer Hat | S02E48\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#thief #beach #treasures #panic #chocolate #centipede #bees #wasps #Minuscule #nature #insects #ladybugs #animatedseries", "Thievish As A Magpie | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=Fmdn7GZo03E", "Fmdn7GZo03E", 2244, false, "/downloads/Miniscule Season 2/2025-09-11 Thievish As A Magpie | Minuscule 🍃 50' Compilation/Thievish As A Magpie | Minuscule 🍃 50' Compilation [Fmdn7GZo03E].mp4", false, 5, ~U[2025-09-11 10:00:21Z]] 22:57:38.446 [debug] QUERY OK source="sources" db=0.4ms idle=10.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" = ?) [5] 22:57:38.447 [debug] QUERY OK source="media_items" db=0.7ms idle=7.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-09 06:00:28Z], 5] 22:57:38.451 [debug] QUERY OK source="media_items" db=2.4ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grocery Store Racketeer | S02E50\n00:03:35 | The Grocery Store Incident | S02E39\n00:07:06 | The Stubborn Spider | S02E04\n00:10:51 | Spider from the Depths | S02E31\n00:14:26 | Spider Driver | S02E36\n00:18:07 | Rascals! | S02E38\n00:21:46 | Sausage Predator | S02E06\n00:25:32 | An Acorn Season | S02E05\n00:29:18 | A Pathetic She'Nut'Igan | S02E12\n00:33:03 | Ladybugland | S02E62\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Grocery #Spider #Bullying #Revenge #ladybug #flies #chase #supermarket #Minuscule #nature #insects #ladybugs #animatedseries", "The Grocery Store Racketeer | Minuscule 🍃 50' Compilation", "4a15d9ba-dbd4-4403-960d-67bc45e0bbe6", "https://www.youtube.com/watch?v=M8b3joyk5Vc", "M8b3joyk5Vc", 2229, false, 37, "/downloads/Miniscule Season 2/2025-09-09 The Grocery Store Racketeer | Minuscule 🍃 50' Compilation/The Grocery Store Racketeer | Minuscule 🍃 50' Compilation [M8b3joyk5Vc].mp4", false, false, false, 5, [], 1, ~U[2025-09-09 06:00:28Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grocery Store Racketeer | S02E50\n00:03:35 | The Grocery Store Incident | S02E39\n00:07:06 | The Stubborn Spider | S02E04\n00:10:51 | Spider from the Depths | S02E31\n00:14:26 | Spider Driver | S02E36\n00:18:07 | Rascals! | S02E38\n00:21:46 | Sausage Predator | S02E06\n00:25:32 | An Acorn Season | S02E05\n00:29:18 | A Pathetic She'Nut'Igan | S02E12\n00:33:03 | Ladybugland | S02E62\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Grocery #Spider #Bullying #Revenge #ladybug #flies #chase #supermarket #Minuscule #nature #insects #ladybugs #animatedseries", "The Grocery Store Racketeer | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=M8b3joyk5Vc", "M8b3joyk5Vc", 2229, false, "/downloads/Miniscule Season 2/2025-09-09 The Grocery Store Racketeer | Minuscule 🍃 50' Compilation/The Grocery Store Racketeer | Minuscule 🍃 50' Compilation [M8b3joyk5Vc].mp4", false, 5, ~U[2025-09-09 06:00:28Z]] 22:57:38.452 [debug] QUERY OK source="sources" db=0.3ms idle=9.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" = ?) [5] 22:57:38.453 [debug] QUERY OK source="media_items" db=0.9ms idle=7.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-13 18:00:31Z], 5] 22:57:38.457 [debug] QUERY OK source="media_items" db=2.3ms idle=7.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Butterfly's Nightmare | S02E20\n00:03:16 | Metamorphosis | S02E61\n00:06:47 | The Butterfly Effect | S02E23\n00:10:09 | The Annoying Neighbor | S02E28\n00:13:45 | Homeless | S02E02\n00:17:33 | The Wing Case | S02E01\n00:21:18 | The Housing Plant Project | S02E26\n00:24:55 | If Only Lonely | S02E22\n00:28:40 | Love Apple | S02E45\n00:32:20 | Trapped | S02E64\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Butterfly #Caterpillar #Nightmare #Cocoon #transformation #caterpillar #rejection #change #Minuscule #nature #insects #ladybugs #animatedseries", "A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation", "387075b3-d551-4cf3-9b4f-b6276cfff5e2", "https://www.youtube.com/watch?v=OT9yM4KWpsE", "OT9yM4KWpsE", 2201, false, 38, "/downloads/Miniscule Season 2/2025-09-13 A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation/A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation [OT9yM4KWpsE].mp4", false, false, false, 5, [], 1, ~U[2025-09-13 18:00:31Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Butterfly's Nightmare | S02E20\n00:03:16 | Metamorphosis | S02E61\n00:06:47 | The Butterfly Effect | S02E23\n00:10:09 | The Annoying Neighbor | S02E28\n00:13:45 | Homeless | S02E02\n00:17:33 | The Wing Case | S02E01\n00:21:18 | The Housing Plant Project | S02E26\n00:24:55 | If Only Lonely | S02E22\n00:28:40 | Love Apple | S02E45\n00:32:20 | Trapped | S02E64\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Butterfly #Caterpillar #Nightmare #Cocoon #transformation #caterpillar #rejection #change #Minuscule #nature #insects #ladybugs #animatedseries", "A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation", "https://www.youtube.com/watch?v=OT9yM4KWpsE", "OT9yM4KWpsE", 2201, false, "/downloads/Miniscule Season 2/2025-09-13 A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation/A Butterfly's Nightmare 🍎 Minuscule 🍃 45' Compilation [OT9yM4KWpsE].mp4", false, 5, ~U[2025-09-13 18:00:31Z]] 22:57:38.458 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=9.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" = ?) [5] 22:57:38.459 [debug] QUERY OK source="media_items" db=1.0ms idle=7.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-06 18:00:38Z], 5] 22:57:38.463 [debug] QUERY OK source="media_items" db=2.4ms idle=8.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Vegetable Garden | S02E10\n00:03:44 | Ants On The Train | S02E52\n00:07:16 | Away all boarders! | S02E41\n00:10:58 | Ladybugland | S02E62\n00:14:26 | Turbo speed | S02E58\n00:17:50 | Chewing gum rodeo | S02E14\n00:21:36 | Homeless | S02E02\n00:25:23 | Woopsy Daysies! | S02E47\n00:28:57 | Night of the Gastropods | S02E18\n00:32:43 | Mission : BBQ | S02E09\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#vegetable #garden #insects #gardener #ants #train #spider #Minuscule #nature #ladybugs #animatedseries", "The Vegetable Garden | Minuscule 🍃 50' Compilation", "d43d1292-cc0f-44e2-b664-550e29234d6e", "https://www.youtube.com/watch?v=XQtJAsx-RbU", "XQtJAsx-RbU", 2227, false, 39, "/downloads/Miniscule Season 2/2025-09-06 The Vegetable Garden | Minuscule 🍃 50' Compilation/The Vegetable Garden | Minuscule 🍃 50' Compilation [XQtJAsx-RbU].mp4", false, false, false, 5, [], 1, ~U[2025-09-06 18:00:38Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Vegetable Garden | S02E10\n00:03:44 | Ants On The Train | S02E52\n00:07:16 | Away all boarders! | S02E41\n00:10:58 | Ladybugland | S02E62\n00:14:26 | Turbo speed | S02E58\n00:17:50 | Chewing gum rodeo | S02E14\n00:21:36 | Homeless | S02E02\n00:25:23 | Woopsy Daysies! | S02E47\n00:28:57 | Night of the Gastropods | S02E18\n00:32:43 | Mission : BBQ | S02E09\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#vegetable #garden #insects #gardener #ants #train #spider #Minuscule #nature #ladybugs #animatedseries", "The Vegetable Garden | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=XQtJAsx-RbU", "XQtJAsx-RbU", 2227, false, "/downloads/Miniscule Season 2/2025-09-06 The Vegetable Garden | Minuscule 🍃 50' Compilation/The Vegetable Garden | Minuscule 🍃 50' Compilation [XQtJAsx-RbU].mp4", false, 5, ~U[2025-09-06 18:00:38Z]] 22:57:38.464 [debug] QUERY OK source="sources" db=0.3ms idle=10.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" = ?) [5] 22:57:38.465 [debug] QUERY OK source="media_items" db=0.9ms idle=8.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-04 10:00:38Z], 5] 22:57:38.469 [debug] QUERY OK source="media_items" db=2.3ms idle=8.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Turbo speed | S02E58\n00:03:24 | At Full Speed | S02E27\n00:07:08 | Fly Hunting | S02E24\n00:10:41 | Spider Driver | S02E36\n00:14:23 | Mission : BBQ | S02E09\n00:18:08 | Zzz In The Metro | S02E53\n00:21:44 | Trapped | S02E64\n00:25:26 | Ladybugland | S02E62\n00:28:54 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Turbo #Dragonflies #Beans #Ladybird #race #insects #country #wacky #Minuscule #nature #ladybugs #animatedseries", "Turbo speed | Minuscule 🍃 45' Compilation", "17643d91-7051-439b-a825-63bfd3e0317f", "https://www.youtube.com/watch?v=NMhU-D734N0", "NMhU-D734N0", 1983, false, 40, "/downloads/Miniscule Season 2/2025-09-04 Turbo speed | Minuscule 🍃 45' Compilation/Turbo speed | Minuscule 🍃 45' Compilation [NMhU-D734N0].mp4", false, false, false, 5, [], 1, ~U[2025-09-04 10:00:38Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Turbo speed | S02E58\n00:03:24 | At Full Speed | S02E27\n00:07:08 | Fly Hunting | S02E24\n00:10:41 | Spider Driver | S02E36\n00:14:23 | Mission : BBQ | S02E09\n00:18:08 | Zzz In The Metro | S02E53\n00:21:44 | Trapped | S02E64\n00:25:26 | Ladybugland | S02E62\n00:28:54 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Turbo #Dragonflies #Beans #Ladybird #race #insects #country #wacky #Minuscule #nature #ladybugs #animatedseries", "Turbo speed | Minuscule 🍃 45' Compilation", "https://www.youtube.com/watch?v=NMhU-D734N0", "NMhU-D734N0", 1983, false, "/downloads/Miniscule Season 2/2025-09-04 Turbo speed | Minuscule 🍃 45' Compilation/Turbo speed | Minuscule 🍃 45' Compilation [NMhU-D734N0].mp4", false, 5, ~U[2025-09-04 10:00:38Z]] 22:57:38.470 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=9.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" = ?) [5] 22:57:38.471 [debug] QUERY OK source="media_items" db=1.2ms idle=7.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-30 18:00:31Z], 5] 22:57:38.475 [debug] QUERY OK source="media_items" db=2.4ms idle=7.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:03:45 | Woopsy Daysies! | S02E47\n00:07:19 | Chewing gum rodeo | S02E14\n00:11:05 | If Only Lonely | S02E22\n00:14:50 | The Wing Case | S02E01\n00:18:36 | Fly Hunting | S02E24\n00:22:09 | Ladybugland | S02E62\n00:25:37 | An Acorn Season | S02E05\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #babies #leap #outcast #leaps #calculation #house #Minuscule #nature #insects #ladybugs #animatedseries", "The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation", "654fef6e-66ed-40db-b41f-5a89d0c38d3a", "https://www.youtube.com/watch?v=PKmKoMbaCQU", "PKmKoMbaCQU", 1801, false, 41, "/downloads/Miniscule Season 2/2025-08-30 The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation/The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation [PKmKoMbaCQU].mp4", false, false, false, 5, [], 1, ~U[2025-08-30 18:00:31Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:03:45 | Woopsy Daysies! | S02E47\n00:07:19 | Chewing gum rodeo | S02E14\n00:11:05 | If Only Lonely | S02E22\n00:14:50 | The Wing Case | S02E01\n00:18:36 | Fly Hunting | S02E24\n00:22:09 | Ladybugland | S02E62\n00:25:37 | An Acorn Season | S02E05\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #babies #leap #outcast #leaps #calculation #house #Minuscule #nature #insects #ladybugs #animatedseries", "The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=PKmKoMbaCQU", "PKmKoMbaCQU", 1801, false, "/downloads/Miniscule Season 2/2025-08-30 The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation/The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 40' Compilation [PKmKoMbaCQU].mp4", false, 5, ~U[2025-08-30 18:00:31Z]] 22:57:38.476 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=9.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" = ?) [5] 22:57:38.477 [debug] QUERY OK source="media_items" db=1.0ms idle=7.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-21 10:01:03Z], 5] 22:57:38.481 [debug] QUERY OK source="media_items" db=2.3ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Beehive On A Troll | S02E56\n00:03:30 | Honey Fly | S02E08\n00:07:20 | Trapped | S02E64\n00:11:03 | Gather More to Pollinate More | S02E32\n00:14:48 | The Housing Plant Project | S02E26\n00:18:25 | Homeless | S02E02\n00:22:12 | The Annoying Neighbor | S02E28\n00:25:49 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Beehive #Pollen #Troll #Shelter #Honey #Fly #Bees #Admiration #Minuscule #nature #insects #ladybugs #animatedseries", "Beehive On A Troll | Minuscule 🍃 40' Compilation", "7deaa843-10b4-4581-9afe-c805c40bbe9d", "https://www.youtube.com/watch?v=YvYdCFLchVw", "YvYdCFLchVw", 1810, false, 42, "/downloads/Miniscule Season 2/2025-08-21 Beehive On A Troll | Minuscule 🍃 40' Compilation/Beehive On A Troll | Minuscule 🍃 40' Compilation [YvYdCFLchVw].mp4", false, false, false, 5, [], 1, ~U[2025-08-21 10:01:03Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Beehive On A Troll | S02E56\n00:03:30 | Honey Fly | S02E08\n00:07:20 | Trapped | S02E64\n00:11:03 | Gather More to Pollinate More | S02E32\n00:14:48 | The Housing Plant Project | S02E26\n00:18:25 | Homeless | S02E02\n00:22:12 | The Annoying Neighbor | S02E28\n00:25:49 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Beehive #Pollen #Troll #Shelter #Honey #Fly #Bees #Admiration #Minuscule #nature #insects #ladybugs #animatedseries", "Beehive On A Troll | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=YvYdCFLchVw", "YvYdCFLchVw", 1810, false, "/downloads/Miniscule Season 2/2025-08-21 Beehive On A Troll | Minuscule 🍃 40' Compilation/Beehive On A Troll | Minuscule 🍃 40' Compilation [YvYdCFLchVw].mp4", false, 5, ~U[2025-08-21 10:01:03Z]] 22:57:38.481 [debug] QUERY OK source="sources" db=0.4ms idle=9.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" = ?) [5] 22:57:38.483 [debug] QUERY OK source="media_items" db=1.0ms idle=7.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-26 06:00:17Z], 5] 22:57:38.486 [debug] QUERY OK source="media_items" db=2.3ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Refrigerated | S02E65\n00:03:34 | Microzilla | S02E07\n00:07:20 | Brushing | S02E46\n00:10:52 | Snow Fly | S02E51\n00:14:17 | Summer Hat | S02E48\n00:17:58 | Bzzaping | S02E03\n00:21:45 | Spider from the Depths | S02E31\n00:25:20 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Refrigerated #spider #fly #ice #Microzilla #microwave #Minuscule #nature #insects #ladybugs #animatedseries", "Refrigerated | Minuscule 🍃 40' Compilation", "95fb0165-0c59-46ca-8e01-58eefc960193", "https://www.youtube.com/watch?v=BG3zv1AFadA", "BG3zv1AFadA", 1784, false, 43, "/downloads/Miniscule Season 2/2025-08-26 Refrigerated | Minuscule 🍃 40' Compilation/Refrigerated | Minuscule 🍃 40' Compilation [BG3zv1AFadA].mp4", false, false, false, 5, [], 1, ~U[2025-08-26 06:00:17Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Refrigerated | S02E65\n00:03:34 | Microzilla | S02E07\n00:07:20 | Brushing | S02E46\n00:10:52 | Snow Fly | S02E51\n00:14:17 | Summer Hat | S02E48\n00:17:58 | Bzzaping | S02E03\n00:21:45 | Spider from the Depths | S02E31\n00:25:20 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Refrigerated #spider #fly #ice #Microzilla #microwave #Minuscule #nature #insects #ladybugs #animatedseries", "Refrigerated | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=BG3zv1AFadA", "BG3zv1AFadA", 1784, false, "/downloads/Miniscule Season 2/2025-08-26 Refrigerated | Minuscule 🍃 40' Compilation/Refrigerated | Minuscule 🍃 40' Compilation [BG3zv1AFadA].mp4", false, 5, ~U[2025-08-26 06:00:17Z]] 22:57:38.487 [debug] QUERY OK source="sources" db=0.4ms queue=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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.489 [debug] QUERY OK source="media_items" db=0.7ms idle=7.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-07 10:00:46Z], 5] 22:57:38.492 [debug] QUERY OK source="media_items" db=2.5ms idle=7.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | To The Port Now! | S02E43\n00:03:27 | Rascals! | S02E38\n00:07:06 | White As Snow | S02E63\n00:10:43 | The Yule log | S02E35\n00:14:28 | An Acorn Season | S02E05\n00:18:14 | Sausage Predator | S02E06\n00:22:00 | Sand Castle | S02E49\n00:25:26 | Ants On The Train | S02E52\n00:28:58 | The Chocolate Chase! | S02E19\n00:32:43 | Snow Carrot | S02E59\n00:36:22 | A Pathetic She'Nut'Igan | S02E12\n00:40:07 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ant #trap #booty #walnut #ants #battle #steal #leader #Minuscule #nature #insects #ladybugs #animatedseries", "To The Port Now! | Minuscule 🍃 60' Compilation", "19b67e49-28bc-44b2-a456-2c4299aefd67", "https://www.youtube.com/watch?v=KbWIJP2TEkE", "KbWIJP2TEkE", 2668, false, 44, "/downloads/Miniscule Season 2/2025-08-07 To The Port Now! | Minuscule 🍃 60' Compilation/To The Port Now! | Minuscule 🍃 60' Compilation [KbWIJP2TEkE].mp4", false, false, false, 5, [], 1, ~U[2025-08-07 10:00:46Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | To The Port Now! | S02E43\n00:03:27 | Rascals! | S02E38\n00:07:06 | White As Snow | S02E63\n00:10:43 | The Yule log | S02E35\n00:14:28 | An Acorn Season | S02E05\n00:18:14 | Sausage Predator | S02E06\n00:22:00 | Sand Castle | S02E49\n00:25:26 | Ants On The Train | S02E52\n00:28:58 | The Chocolate Chase! | S02E19\n00:32:43 | Snow Carrot | S02E59\n00:36:22 | A Pathetic She'Nut'Igan | S02E12\n00:40:07 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ant #trap #booty #walnut #ants #battle #steal #leader #Minuscule #nature #insects #ladybugs #animatedseries", "To The Port Now! | Minuscule 🍃 60' Compilation", "https://www.youtube.com/watch?v=KbWIJP2TEkE", "KbWIJP2TEkE", 2668, false, "/downloads/Miniscule Season 2/2025-08-07 To The Port Now! | Minuscule 🍃 60' Compilation/To The Port Now! | Minuscule 🍃 60' Compilation [KbWIJP2TEkE].mp4", false, 5, ~U[2025-08-07 10:00:46Z]] 22:57:38.493 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.495 [debug] QUERY OK source="media_items" db=1.0ms idle=7.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-16 18:00:45Z], 5] 22:57:38.498 [debug] QUERY OK source="media_items" db=2.3ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sleep Walker | S02E68\n00:03:24 | The Long Road | S02E34\n00:07:07 | Night of the Gastropods | S02E18\n00:10:52 | Thirsty | S02E29\n00:14:25 | Hop On! | S02E25\n00:18:02 | Zzz zzz | S02E44\n00:21:33 | Spider from the Depths | S02E31\n00:25:07 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Dream #Love #Snail #Sleep #snail #water #journey #hazard #Minuscule #nature #insects #ladybugs #animatedseries", "Sleep Walker | Minuscule 🍃 40' Compilation", "fd6f6ae1-9e0f-43cc-8bc1-7933ad49aef2", "https://www.youtube.com/watch?v=nT-gIL_wrbs", "nT-gIL_wrbs", 1742, false, 45, "/downloads/Miniscule Season 2/2025-08-16 Sleep Walker | Minuscule 🍃 40' Compilation/Sleep Walker | Minuscule 🍃 40' Compilation [nT-gIL_wrbs].mp4", false, false, false, 5, [], 1, ~U[2025-08-16 18:00:45Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sleep Walker | S02E68\n00:03:24 | The Long Road | S02E34\n00:07:07 | Night of the Gastropods | S02E18\n00:10:52 | Thirsty | S02E29\n00:14:25 | Hop On! | S02E25\n00:18:02 | Zzz zzz | S02E44\n00:21:33 | Spider from the Depths | S02E31\n00:25:07 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Dream #Love #Snail #Sleep #snail #water #journey #hazard #Minuscule #nature #insects #ladybugs #animatedseries", "Sleep Walker | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=nT-gIL_wrbs", "nT-gIL_wrbs", 1742, false, "/downloads/Miniscule Season 2/2025-08-16 Sleep Walker | Minuscule 🍃 40' Compilation/Sleep Walker | Minuscule 🍃 40' Compilation [nT-gIL_wrbs].mp4", false, 5, ~U[2025-08-16 18:00:45Z]] 22:57:38.499 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.500 [debug] QUERY OK source="media_items" db=1.0ms idle=7.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-09 18:00:38Z], 5] 22:57:38.504 [debug] QUERY OK source="media_items" db=2.4ms idle=7.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Hat Of The Medusa | S02E17\n00:03:45 | Summer Hat | S02E48\n00:07:27 | Labyrinth | S02E69\n00:11:12 | Spider from the Depths | S02E31\n00:14:47 | Brushing | S02E46\n00:18:19 | Honey Fly | S02E08\n00:22:09 | Thievish As A Magpie | S02E11\n00:25:55 | A Pathetic She'Nut'Igan | S02E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#hat #fly #spider #ocean #summer #Minuscule #nature #insects #ladybugs #animatedseries", "The Hat Of The Medusa | Minuscule | 40' Compilation", "7a7306a3-8bb4-4805-b789-1fc1d0f978c0", "https://www.youtube.com/watch?v=cXt8BCh7-7A", "cXt8BCh7-7A", 1819, false, 46, "/downloads/Miniscule Season 2/2025-08-09 The Hat Of The Medusa | Minuscule | 40' Compilation/The Hat Of The Medusa | Minuscule | 40' Compilation [cXt8BCh7-7A].mp4", false, false, false, 5, [], 1, ~U[2025-08-09 18:00:38Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Hat Of The Medusa | S02E17\n00:03:45 | Summer Hat | S02E48\n00:07:27 | Labyrinth | S02E69\n00:11:12 | Spider from the Depths | S02E31\n00:14:47 | Brushing | S02E46\n00:18:19 | Honey Fly | S02E08\n00:22:09 | Thievish As A Magpie | S02E11\n00:25:55 | A Pathetic She'Nut'Igan | S02E12\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#hat #fly #spider #ocean #summer #Minuscule #nature #insects #ladybugs #animatedseries", "The Hat Of The Medusa | Minuscule | 40' Compilation", "https://www.youtube.com/watch?v=cXt8BCh7-7A", "cXt8BCh7-7A", 1819, false, "/downloads/Miniscule Season 2/2025-08-09 The Hat Of The Medusa | Minuscule | 40' Compilation/The Hat Of The Medusa | Minuscule | 40' Compilation [cXt8BCh7-7A].mp4", false, 5, ~U[2025-08-09 18:00:38Z]] 22:57:38.505 [debug] QUERY OK source="sources" db=0.3ms idle=9.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" = ?) [5] 22:57:38.506 [debug] QUERY OK source="media_items" db=1.0ms idle=7.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-24 10:00:04Z], 5] 22:57:38.510 [debug] QUERY OK source="media_items" db=2.4ms idle=8.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Snow Carrot | S02E59\n00:03:38 | Sand Castle | S02E49\n00:07:05 | Ants On The Train | S02E52\n00:10:36 | The Yule log | S02E35\n00:14:22 | Away all boarders! | S02E41\n00:18:04 | Snow Fly | S02E51\n00:21:29 | It's a tie! | S02E67\n00:25:09 | Sausage Predator | S02E06\n00:28:55 | The Chocolate Chase! | S02E19\n00:32:40 | Black Slope For Gastropod Skiers | S02E55\n00:36:26 | White As Snow | S02E63\n00:40:02 | Rascals! | S02E38\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Carrot #Ants #Ski #Chocolate #Beach #Castle #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Carrot | Minuscule 🍃 55' Compilation", "51f74a87-0aaf-4f15-a09b-e434282efae9", "https://www.youtube.com/watch?v=33Gq2gdWIFQ", "33Gq2gdWIFQ", 2661, false, 48, "/downloads/Miniscule Season 2/2025-07-24 Snow Carrot | Minuscule 🍃 55' Compilation/Snow Carrot | Minuscule 🍃 55' Compilation [33Gq2gdWIFQ].mp4", false, false, false, 5, [], 1, ~U[2025-07-24 10:00:04Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Snow Carrot | S02E59\n00:03:38 | Sand Castle | S02E49\n00:07:05 | Ants On The Train | S02E52\n00:10:36 | The Yule log | S02E35\n00:14:22 | Away all boarders! | S02E41\n00:18:04 | Snow Fly | S02E51\n00:21:29 | It's a tie! | S02E67\n00:25:09 | Sausage Predator | S02E06\n00:28:55 | The Chocolate Chase! | S02E19\n00:32:40 | Black Slope For Gastropod Skiers | S02E55\n00:36:26 | White As Snow | S02E63\n00:40:02 | Rascals! | S02E38\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Carrot #Ants #Ski #Chocolate #Beach #Castle #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Carrot | Minuscule 🍃 55' Compilation", "https://www.youtube.com/watch?v=33Gq2gdWIFQ", "33Gq2gdWIFQ", 2661, false, "/downloads/Miniscule Season 2/2025-07-24 Snow Carrot | Minuscule 🍃 55' Compilation/Snow Carrot | Minuscule 🍃 55' Compilation [33Gq2gdWIFQ].mp4", false, 5, ~U[2025-07-24 10:00:04Z]] 22:57:38.511 [debug] QUERY OK source="sources" db=0.3ms idle=10.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" = ?) [5] 22:57:38.512 [debug] QUERY OK source="media_items" db=0.9ms idle=7.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-08 06:00:57Z], 5] 22:57:38.523 [debug] QUERY OK source="media_items" db=9.5ms idle=8.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Iron Monster | S02E33\n00:03:33 | The Monster Of The Haunted Swamp | S02E37\n00:07:04 | Ants On The Train | S02E52\n00:10:35 | Microzilla | S02E07\n00:14:21 | Trapped | S02E64\n00:18:03 | Sausage Predator | S02E06\n00:21:49 | Spider Driver | S02E36\n00:25:30 | Away all boarders! | S02E41\n00:29:13 | The Grocery Store Incident | S02E39\n00:32:43 | Night of the Gastropods | S02E18\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Iron #Monster #Insects #Panic #Swamp #Sounds #Minuscule #nature #insects #ladybugs #animatedseries", "The Iron Monster | Minuscule 🍃 50' Compilation", "a928cfe6-9f09-4dc0-b707-0a454db37ab1", "https://www.youtube.com/watch?v=yk2iwHDT7Ds", "yk2iwHDT7Ds", 2228, false, 49, "/downloads/Miniscule Season 2/2025-07-08 The Iron Monster | Minuscule 🍃 50' Compilation/The Iron Monster | Minuscule 🍃 50' Compilation [yk2iwHDT7Ds].mp4", false, false, false, 5, [], 1, ~U[2025-07-08 06:00:57Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Iron Monster | S02E33\n00:03:33 | The Monster Of The Haunted Swamp | S02E37\n00:07:04 | Ants On The Train | S02E52\n00:10:35 | Microzilla | S02E07\n00:14:21 | Trapped | S02E64\n00:18:03 | Sausage Predator | S02E06\n00:21:49 | Spider Driver | S02E36\n00:25:30 | Away all boarders! | S02E41\n00:29:13 | The Grocery Store Incident | S02E39\n00:32:43 | Night of the Gastropods | S02E18\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Iron #Monster #Insects #Panic #Swamp #Sounds #Minuscule #nature #insects #ladybugs #animatedseries", "The Iron Monster | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=yk2iwHDT7Ds", "yk2iwHDT7Ds", 2228, false, "/downloads/Miniscule Season 2/2025-07-08 The Iron Monster | Minuscule 🍃 50' Compilation/The Iron Monster | Minuscule 🍃 50' Compilation [yk2iwHDT7Ds].mp4", false, 5, ~U[2025-07-08 06:00:57Z]] 22:57:38.524 [debug] QUERY OK source="sources" db=0.3ms idle=17.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" = ?) [5] 22:57:38.525 [debug] QUERY OK source="media_items" db=0.7ms idle=14.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-17 10:00:21Z], 5] 22:57:38.528 [debug] QUERY OK source="media_items" db=1.6ms idle=14.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Love Apple | S02E45\n00:03:39 | Homeless | S02E02\n00:07:27 | Metamorphosis | S02E61\n00:10:57 | The Wing Case | S02E01\n00:14:43 | Hop On! | S02E25\n00:18:20 | Valentine's Day | S02E15\n00:22:05 | A Butterfly's Nightmare | S02E20\n00:25:22 | Trapped | S02E64\n00:29:05 | Away all boarders! | S02E41\n00:32:47 | If Only Lonely | S02E22\n00:36:33 | The Annoying Neighbor | S02E28\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #apple #caterpillars #separation #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "Love Apple | Minuscule 🍃 55' Compilation", "18f55455-d41f-4b21-95e7-dfdf44beef1e", "https://www.youtube.com/watch?v=6qeIwbnhMqo", "6qeIwbnhMqo", 2447, false, 50, "/downloads/Miniscule Season 2/2025-07-17 Love Apple | Minuscule 🍃 55' Compilation/Love Apple | Minuscule 🍃 55' Compilation [6qeIwbnhMqo].mp4", false, false, false, 5, [], 1, ~U[2025-07-17 10:00:21Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Love Apple | S02E45\n00:03:39 | Homeless | S02E02\n00:07:27 | Metamorphosis | S02E61\n00:10:57 | The Wing Case | S02E01\n00:14:43 | Hop On! | S02E25\n00:18:20 | Valentine's Day | S02E15\n00:22:05 | A Butterfly's Nightmare | S02E20\n00:25:22 | Trapped | S02E64\n00:29:05 | Away all boarders! | S02E41\n00:32:47 | If Only Lonely | S02E22\n00:36:33 | The Annoying Neighbor | S02E28\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#love #apple #caterpillars #separation #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "Love Apple | Minuscule 🍃 55' Compilation", "https://www.youtube.com/watch?v=6qeIwbnhMqo", "6qeIwbnhMqo", 2447, false, "/downloads/Miniscule Season 2/2025-07-17 Love Apple | Minuscule 🍃 55' Compilation/Love Apple | Minuscule 🍃 55' Compilation [6qeIwbnhMqo].mp4", false, 5, ~U[2025-07-17 10:00:21Z]] 22:57:38.529 [debug] QUERY OK source="sources" db=0.3ms idle=16.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" = ?) [5] 22:57:38.530 [debug] QUERY OK source="media_items" db=0.7ms idle=6.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-15 06:00:58Z], 5] 22:57:38.533 [debug] QUERY OK source="media_items" db=1.5ms queue=0.1ms idle=6.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Long Road | S02E34\n00:03:42 | Thirsty | S02E29\n00:07:15 | Labyrinth | S02E69\n00:11:00 | The Annoying Neighbor | S02E28\n00:14:36 | Night of the Gastropods | S02E18\n00:18:22 | The Butterfly Effect | S02E23\n00:21:44 | Love Apple | S02E45\n00:25:24 | Honey Fly | S02E08\n00:29:14 | Zzz In The Metro | S02E53\n00:32:50 | A Butterfly's Nightmare | S02E20\n00:36:06 | White As Snow | S02E63\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#snail #water #journey #hazard #thirsty #heatwave #Minuscule #nature #insects #ladybugs #animatedseries", "The Long Road | Minuscule 🍃 50' Compilation", "c6386853-88df-4cb3-956f-b9d7dcc46bd5", "https://www.youtube.com/watch?v=zzdfZs9qUn4", "zzdfZs9qUn4", 2421, false, 51, "/downloads/Miniscule Season 2/2025-07-15 The Long Road | Minuscule 🍃 50' Compilation/The Long Road | Minuscule 🍃 50' Compilation [zzdfZs9qUn4].mp4", false, false, false, 5, [], 1, ~U[2025-07-15 06:00:58Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Long Road | S02E34\n00:03:42 | Thirsty | S02E29\n00:07:15 | Labyrinth | S02E69\n00:11:00 | The Annoying Neighbor | S02E28\n00:14:36 | Night of the Gastropods | S02E18\n00:18:22 | The Butterfly Effect | S02E23\n00:21:44 | Love Apple | S02E45\n00:25:24 | Honey Fly | S02E08\n00:29:14 | Zzz In The Metro | S02E53\n00:32:50 | A Butterfly's Nightmare | S02E20\n00:36:06 | White As Snow | S02E63\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#snail #water #journey #hazard #thirsty #heatwave #Minuscule #nature #insects #ladybugs #animatedseries", "The Long Road | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=zzdfZs9qUn4", "zzdfZs9qUn4", 2421, false, "/downloads/Miniscule Season 2/2025-07-15 The Long Road | Minuscule 🍃 50' Compilation/The Long Road | Minuscule 🍃 50' Compilation [zzdfZs9qUn4].mp4", false, 5, ~U[2025-07-15 06:00:58Z]] 22:57:38.534 [debug] QUERY OK source="sources" db=0.3ms idle=8.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" = ?) [5] 22:57:38.535 [debug] QUERY OK source="media_items" db=0.6ms idle=6.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-10 10:01:53Z], 5] 22:57:38.537 [debug] QUERY OK source="media_items" db=1.7ms queue=0.1ms idle=6.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Stubborn Spider | S02E04\n00:03:45 | A Pathetic She'Nut'Igan | S02E12\n00:07:30 | Labyrinth | S02E69\n00:11:16 | Zzz In The Metro | S02E53\n00:14:51 | Go Blue Go! | S02E54\n00:18:33 | Honey Fly | S02E08\n00:22:23 | Brushing | S02E46\n00:25:56 | Spider from the Depths | S02E31\n00:29:30 | The Hat Of The Medusa | S02E17\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#stubborn #spider #determination #house #Pathetic #Spider #Invent #Strategies #Minuscule #nature #insects #ladybugs #animatedseries", "The Stubborn Spider | Minuscule 🍃 45' Compilation", "3b41501b-8826-4571-888e-d84b2fefda9d", "https://www.youtube.com/watch?v=1TMeERmmHeE", "1TMeERmmHeE", 2034, false, 52, "/downloads/Miniscule Season 2/2025-07-10 The Stubborn Spider | Minuscule 🍃 45' Compilation/The Stubborn Spider | Minuscule 🍃 45' Compilation [1TMeERmmHeE].mp4", false, false, false, 5, [], 1, ~U[2025-07-10 10:01:53Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Stubborn Spider | S02E04\n00:03:45 | A Pathetic She'Nut'Igan | S02E12\n00:07:30 | Labyrinth | S02E69\n00:11:16 | Zzz In The Metro | S02E53\n00:14:51 | Go Blue Go! | S02E54\n00:18:33 | Honey Fly | S02E08\n00:22:23 | Brushing | S02E46\n00:25:56 | Spider from the Depths | S02E31\n00:29:30 | The Hat Of The Medusa | S02E17\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#stubborn #spider #determination #house #Pathetic #Spider #Invent #Strategies #Minuscule #nature #insects #ladybugs #animatedseries", "The Stubborn Spider | Minuscule 🍃 45' Compilation", "https://www.youtube.com/watch?v=1TMeERmmHeE", "1TMeERmmHeE", 2034, false, "/downloads/Miniscule Season 2/2025-07-10 The Stubborn Spider | Minuscule 🍃 45' Compilation/The Stubborn Spider | Minuscule 🍃 45' Compilation [1TMeERmmHeE].mp4", false, 5, ~U[2025-07-10 10:01:53Z]] 22:57:38.538 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:38.539 [debug] QUERY OK source="media_items" db=0.7ms idle=5.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-26 10:00:07Z], 5] 22:57:38.542 [debug] QUERY OK source="media_items" db=1.6ms idle=5.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pollution | S02E60\n00:03:45 | The Annoying Neighbor | S02E28\n00:07:21 | Mission : BBQ | S02E09\n00:11:07 | Acrobatics | S02E16\n00:14:52 | The Mosquito Of The Caribbean | S02E57\n00:18:38 | Zzz zzz | S02E44\n00:22:08 | Sunburn | S02E40\n00:25:33 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pollution #Mosquito #City #Noise #caterpillar #noisy #neighbor #apple #Minuscule #nature #insects #ladybugs #animatedseries", "Pollution | Minuscule 🍃 40' Compilation", "ea2bdadc-712f-4b89-882a-288ffa88d7c5", "https://www.youtube.com/watch?v=5cSqpA_gNqs", "5cSqpA_gNqs", 1782, false, 53, "/downloads/Miniscule Season 2/2025-06-26 Pollution | Minuscule 🍃 40' Compilation/Pollution | Minuscule 🍃 40' Compilation [5cSqpA_gNqs].mp4", false, false, false, 5, [], 1, ~U[2025-06-26 10:00:07Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pollution | S02E60\n00:03:45 | The Annoying Neighbor | S02E28\n00:07:21 | Mission : BBQ | S02E09\n00:11:07 | Acrobatics | S02E16\n00:14:52 | The Mosquito Of The Caribbean | S02E57\n00:18:38 | Zzz zzz | S02E44\n00:22:08 | Sunburn | S02E40\n00:25:33 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Pollution #Mosquito #City #Noise #caterpillar #noisy #neighbor #apple #Minuscule #nature #insects #ladybugs #animatedseries", "Pollution | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=5cSqpA_gNqs", "5cSqpA_gNqs", 1782, false, "/downloads/Miniscule Season 2/2025-06-26 Pollution | Minuscule 🍃 40' Compilation/Pollution | Minuscule 🍃 40' Compilation [5cSqpA_gNqs].mp4", false, 5, ~U[2025-06-26 10:00:07Z]] 22:57:38.543 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=7.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" = ?) [5] 22:57:38.544 [debug] QUERY OK source="media_items" db=0.7ms queue=0.2ms idle=5.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-28 18:00:50Z], 5] 22:57:40.971 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/3c/59/3c5933d6880eddbd4daa93ee5096adc0e586f4dfdc4c76a6e2900d082c38cb51.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 22:57:40.972 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 22:57:42.978 [error] Task #PID<0.8644.0> started from #PID<0.2350.0> terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = 'retryable', "errors" = json_insert(o0."errors", '$[#]', ?), "scheduled_at" = ? WHERE (o0."id" = ?) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:200: Oban.Engines.Lite.error_job/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/queue/executor.ex:238: Oban.Queue.Executor.ack_event/1 (oban 2.19.4) lib/oban/queue/executor.ex:224: Oban.Queue.Executor.report_finished/1 (oban 2.19.4) lib/oban/queue/executor.ex:84: anonymous fn/1 in Oban.Queue.Executor.call/1 Process Label: Pinchflat.Downloading.MediaDownloadWorker Function: &Oban.Queue.Executor.call/1 Args: [%Oban.Queue.Executor{ack: true, conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"58 7 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, error: nil, job: %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, "oban_jobs">, id: 2981, state: "executing", queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", args: %{"id" => 89022}, meta: %{}, tags: ["media_item", "media_fetching", "show_in_dashboard"], errors: [%{"at" => "2026-01-30T05:55:51.634885Z", "attempt" => 1, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:56:13.635819Z", "attempt" => 2, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:56:37.737482Z", "attempt" => 3, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:57:05.882286Z", "attempt" => 4, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}], attempt: 5, attempted_by: ["pinchflat@5df437b600ed"], max_attempts: 20, priority: 5, attempted_at: ~U[2026-01-30 05:57:37.350079Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2026-01-30 05:55:48.000000Z], scheduled_at: ~U[2026-01-30 05:57:36.882318Z], conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"58 7 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, conflict?: false, replace: nil, unique: nil, unsaved_error: nil}, meta: %{args: %{"id" => 89022}, id: 2981, max_attempts: 20, queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", prefix: false, conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"58 7 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, attempt: 5, job: %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, "oban_jobs">, id: 2981, state: "executing", queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", args: %{"id" => 89022}, meta: %{}, tags: ["media_item", "media_fetching", "show_in_dashboard"], errors: [%{"at" => "2026-01-30T05:55:51.634885Z", "attempt" => 1, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:56:13.635819Z", "attempt" => 2, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:56:37.737482Z", "attempt" => 3, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:57:05.882286Z", "attempt" => 4, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}], attempt: 5, attempted_by: ["pinchflat@5df437b600ed"], max_attempts: 20, priority: 5, attempted_at: ~U[2026-01-30 05:57:37.350079Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2026-01-30 05:55:48.000000Z], scheduled_at: ~U[2026-01-30 05:57:36.882318Z], conf: nil, conflict?: false, replace: nil, unique: nil, unsaved_error: nil}, tags: ["media_item", "media_fetching", "show_in_dashboard"]}, pid: #PID<0.2350.0>, result: nil, snooze: nil, start_mono: -576381598167103853, start_time: 1769752657351779196, stop_mono: nil, timer: nil, worker: nil, safe: true, duration: 0, kind: :error, queue_time: 0, stacktrace: [], state: :unset}] 22:57:42.980 [error] GenServer {Oban.Registry, {Oban, {:producer, "media_fetching"}}} terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = ?, "attempted_at" = ?, "attempted_by" = ?, "attempt" = "attempt" + ? WHERE (o0."id" IN (SELECT so0."id" FROM "oban_jobs" AS so0 WHERE (so0."state" = 'available') AND (so0."queue" = ?) AND (so0."attempt" < so0."max_attempts") ORDER BY so0."priority", so0."scheduled_at", so0."id" LIMIT ?)) RETURNING "id", "state", "queue", "worker", "args", "meta", "tags", "errors", "attempt", "attempted_by", "max_attempts", "priority", "attempted_at", "cancelled_at", "completed_at", "discarded_at", "inserted_at", "scheduled_at" (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (ecto 3.12.5) lib/ecto/repo/queryable.ex:232: Ecto.Repo.Queryable.execute/4 (oban 2.19.4) lib/oban/engines/lite.ex:110: Oban.Engines.Lite.fetch_jobs/3 (oban 2.19.4) lib/oban/engine.ex:252: anonymous fn/4 in Oban.Engine.fetch_jobs/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/queue/producer.ex:253: Oban.Queue.Producer.start_jobs/1 Last message: :dispatch State: %Oban.Queue.Producer{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"58 7 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, foreman: {:via, Registry, {Oban.Registry, {Oban, {:foreman, "media_fetching"}}}}, meta: %{name: Oban, node: "pinchflat@5df437b600ed", queue: "media_fetching", started_at: ~U[2026-01-29 07:59:09.597536Z], limit: 2, uuid: "f2cc300c-5fc2-4162-8d95-5f18d4188dfa", updated_at: ~U[2026-01-30 05:57:27.115098Z], paused: false, refresh_interval: 30000, shutdown_started_at: nil}, name: {:via, Registry, {Oban.Registry, {Oban, {:producer, "media_fetching"}}}}, dispatch_timer: #Reference<0.3329649675.954466306.53638>, refresh_timer: #Reference<0.3329649675.954466306.51368>, dispatch_cooldown: 5, running: %{#Reference<0.0.300803.3329649675.954531842.52598> => {#PID<0.8644.0>, %Oban.Queue.Executor{ack: true, conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"58 7 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, error: nil, job: %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, "oban_jobs">, id: 2981, state: "executing", queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", args: %{"id" => 89022}, meta: %{}, tags: ["media_item", "media_fetching", "show_in_dashboard"], errors: [%{"at" => "2026-01-30T05:55:51.634885Z", "attempt" => 1, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:56:13.635819Z", "attempt" => 2, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:56:37.737482Z", "attempt" => 3, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:57:05.882286Z", "attempt" => 4, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}], attempt: 5, attempted_by: ["pinchflat@5df437b600ed"], max_attempts: 20, priority: 5, attempted_at: ~U[2026-01-30 05:57:37.350079Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2026-01-30 05:55:48.000000Z], scheduled_at: ~U[2026-01-30 05:57:36.882318Z], conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{...}, ...]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [...], ...], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, ...}, conflict?: false, replace: nil, unique: nil, unsaved_error: nil}, meta: %{args: %{"id" => 89022}, id: 2981, max_attempts: 20, queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", prefix: false, conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"58 7 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, attempt: 5, job: %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, "oban_jobs">, id: 2981, state: "executing", queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", args: %{"id" => 89022}, meta: %{}, tags: ["media_item", "media_fetching", "show_in_dashboard"], errors: [%{"at" => "2026-01-30T05:55:51.634885Z", "attempt" => 1, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:56:13.635819Z", "attempt" => 2, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:56:37.737482Z", "attempt" => 3, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T05:57:05.882286Z", "attempt" => 4, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}], attempt: 5, attempted_by: ["pinchflat@5df437b600ed"], max_attempts: 20, priority: 5, attempted_at: ~U[2026-01-30 05:57:37.350079Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2026-01-30 05:55:48.000000Z], scheduled_at: ~U[2026-01-30 05:57:36.882318Z], conf: nil, conflict?: false, replace: nil, unique: nil, unsaved_error: nil}, tags: ["media_item", "media_fetching", "show_in_dashboard"]}, pid: #PID<0.2350.0>, result: nil, snooze: nil, start_mono: -576381598167103853, start_time: 1769752657351779196, stop_mono: nil, timer: nil, worker: nil, safe: true, duration: 0, kind: :error, queue_time: 0, (truncated) 22:57:45.215 [debug] QUERY OK source="media_items" db=6670.5ms idle=5.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Broom's Sweep | S03E21\n00:01:29 | The Sled and the Ant | S03E25\n00:02:58 | The Wicked Web | S03E07\n00:04:27 | Sow The Wind And Reap The Storm | S03E11\n00:06:05 | Like A Cannon Ball | S03E03\n00:07:34 | A Pea In The Hand Is Worth... | S03E05\n00:09:06 | The Cruel Cow in The Meadow | S03E09\n00:10:36 | The Doughnut | S03E16\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#broom #carrot #wasps #centipede #spider #pine #transportation #snowy #Minuscule #nature #insects #ladybugs #animatedseries", "Broom's Sweep | Minuscule 🍃 15' Compilation", "9389d969-5f85-423e-86ff-3af24821dd81", "https://www.youtube.com/watch?v=wiTbTtZA7us", "wiTbTtZA7us", 747, false, 54, "/downloads/Miniscule Season 2/2025-06-28 Broom's Sweep | Minuscule 🍃 15' Compilation/Broom's Sweep | Minuscule 🍃 15' Compilation [wiTbTtZA7us].mp4", false, false, false, 5, [], 1, ~U[2025-06-28 18:00:50Z], ~U[2026-01-30 05:57:38Z], ~U[2026-01-30 05:57:38Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Broom's Sweep | S03E21\n00:01:29 | The Sled and the Ant | S03E25\n00:02:58 | The Wicked Web | S03E07\n00:04:27 | Sow The Wind And Reap The Storm | S03E11\n00:06:05 | Like A Cannon Ball | S03E03\n00:07:34 | A Pea In The Hand Is Worth... | S03E05\n00:09:06 | The Cruel Cow in The Meadow | S03E09\n00:10:36 | The Doughnut | S03E16\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#broom #carrot #wasps #centipede #spider #pine #transportation #snowy #Minuscule #nature #insects #ladybugs #animatedseries", "Broom's Sweep | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=wiTbTtZA7us", "wiTbTtZA7us", 747, false, "/downloads/Miniscule Season 2/2025-06-28 Broom's Sweep | Minuscule 🍃 15' Compilation/Broom's Sweep | Minuscule 🍃 15' Compilation [wiTbTtZA7us].mp4", false, 5, ~U[2025-06-28 18:00:50Z]] 22:57:45.216 [debug] QUERY OK source="sources" db=0.3ms idle=1235.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" = ?) [5] 22:57:45.217 [debug] QUERY OK source="media_items" db=0.7ms idle=1228.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-07-01 06:00:21Z], 5] 22:57:45.273 [debug] QUERY OK source="media_items" db=55.0ms idle=234.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Down The Chimney | S02E42\n00:03:45 | Umbrella And Coconut Trees | S02E71\n00:07:19 | The Yule log | S02E35\n00:11:04 | Away all boarders! | S02E41\n00:14:47 | The Housing Plant Project | S02E26\n00:18:23 | Ladybugland | S02E62\n00:21:51 | If Only Lonely | S02E22\n00:25:36 | Snow Fly | S02E51\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybugs #chimney #Christmas #winter #umbrella #coconut #ladybug #Minuscule #nature #insects #animatedseries", "Down The Chimney | Minuscule 🍃 40' Compilation", "77528aef-3791-4907-b0e9-a5c923ae5eed", "https://www.youtube.com/watch?v=TyXg5k2lZA4", "TyXg5k2lZA4", 1779, false, 55, "/downloads/Miniscule Season 2/2025-07-01 Down The Chimney | Minuscule 🍃 40' Compilation/Down The Chimney | Minuscule 🍃 40' Compilation [TyXg5k2lZA4].mp4", false, false, false, 5, [], 1, ~U[2025-07-01 06:00:21Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Down The Chimney | S02E42\n00:03:45 | Umbrella And Coconut Trees | S02E71\n00:07:19 | The Yule log | S02E35\n00:11:04 | Away all boarders! | S02E41\n00:14:47 | The Housing Plant Project | S02E26\n00:18:23 | Ladybugland | S02E62\n00:21:51 | If Only Lonely | S02E22\n00:25:36 | Snow Fly | S02E51\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybugs #chimney #Christmas #winter #umbrella #coconut #ladybug #Minuscule #nature #insects #animatedseries", "Down The Chimney | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=TyXg5k2lZA4", "TyXg5k2lZA4", 1779, false, "/downloads/Miniscule Season 2/2025-07-01 Down The Chimney | Minuscule 🍃 40' Compilation/Down The Chimney | Minuscule 🍃 40' Compilation [TyXg5k2lZA4].mp4", false, 5, ~U[2025-07-01 06:00:21Z]] 22:57:45.274 [debug] QUERY OK source="sources" db=0.4ms idle=282.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" = ?) [5] 22:57:45.276 [debug] QUERY OK source="media_items" db=1.3ms queue=0.1ms idle=60.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-21 18:01:01Z], 5] 22:57:45.279 [debug] QUERY OK source="media_items" db=2.3ms idle=60.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | It's a tie! | S02E67\n00:03:40 | At Full Speed | S02E27\n00:07:24 | The Housing Plant Project | S02E26\n00:11:00 | White As Snow | S02E63\n00:14:37 | Chewing gum rodeo | S02E14\n00:18:22 | An Acorn Season | S02E05\n00:22:08 | Ants On The Train | S02E52\n00:25:39 | Snow Fly | S02E51\n00:29:04 | Bzzaping | S02E03\n00:32:51 | Go Blue Go! | S02E54\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#insects #games #competition #referee #race #country #wacky #Minuscule #nature #ladybugs #animatedseries", "It's a tie! | Minuscule 🍃 50' Compilation", "996d36be-c071-40ca-9bd8-2044536c6d6d", "https://www.youtube.com/watch?v=uxyo_7irQn8", "uxyo_7irQn8", 2231, false, 56, "/downloads/Miniscule Season 2/2025-06-21 It's a tie! | Minuscule 🍃 50' Compilation/It's a tie! | Minuscule 🍃 50' Compilation [uxyo_7irQn8].mp4", false, false, false, 5, [], 1, ~U[2025-06-21 18:01:01Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | It's a tie! | S02E67\n00:03:40 | At Full Speed | S02E27\n00:07:24 | The Housing Plant Project | S02E26\n00:11:00 | White As Snow | S02E63\n00:14:37 | Chewing gum rodeo | S02E14\n00:18:22 | An Acorn Season | S02E05\n00:22:08 | Ants On The Train | S02E52\n00:25:39 | Snow Fly | S02E51\n00:29:04 | Bzzaping | S02E03\n00:32:51 | Go Blue Go! | S02E54\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#insects #games #competition #referee #race #country #wacky #Minuscule #nature #ladybugs #animatedseries", "It's a tie! | Minuscule 🍃 50' Compilation", "https://www.youtube.com/watch?v=uxyo_7irQn8", "uxyo_7irQn8", 2231, false, "/downloads/Miniscule Season 2/2025-06-21 It's a tie! | Minuscule 🍃 50' Compilation/It's a tie! | Minuscule 🍃 50' Compilation [uxyo_7irQn8].mp4", false, 5, ~U[2025-06-21 18:01:01Z]] 22:57:45.280 [debug] QUERY OK source="sources" db=0.4ms idle=62.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" = ?) [5] 22:57:45.281 [debug] QUERY OK source="media_items" db=0.8ms idle=7.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-19 10:01:44Z], 5] 22:57:45.284 [debug] QUERY OK source="media_items" db=1.6ms idle=7.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Away all boarders! | S02E41\n00:03:42 | Twelve Angry Snails | S02E66\n00:07:15 | Top Tabasco | S02E70\n00:10:52 | Turbo speed | S02E58\n00:14:17 | Sand Castle | S02E49\n00:17:43 | White As Snow | S02E63\n00:21:20 | Metamorphosis | S02E61\n00:24:50 | Ants On The Train | S02E52\n00:28:22 | The Monster Of The Haunted Swamp | S02E37\n00:31:52 | Patatas Fritas | S02E21\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#battle #ants #cottage #pistachios #snails #escape #gourmet #restaurant #Minuscule #nature #insects #ladybugs #animatedseries", "Away all boarders! | Minuscule 🍃 45' Compilation", "5c895cf7-e458-419f-89f1-840ec3ba930c", "https://www.youtube.com/watch?v=G4SP8ouB0Yk", "G4SP8ouB0Yk", 2177, false, 57, "/downloads/Miniscule Season 2/2025-06-19 Away all boarders! | Minuscule 🍃 45' Compilation/Away all boarders! | Minuscule 🍃 45' Compilation [G4SP8ouB0Yk].mp4", false, false, false, 5, [], 1, ~U[2025-06-19 10:01:44Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Away all boarders! | S02E41\n00:03:42 | Twelve Angry Snails | S02E66\n00:07:15 | Top Tabasco | S02E70\n00:10:52 | Turbo speed | S02E58\n00:14:17 | Sand Castle | S02E49\n00:17:43 | White As Snow | S02E63\n00:21:20 | Metamorphosis | S02E61\n00:24:50 | Ants On The Train | S02E52\n00:28:22 | The Monster Of The Haunted Swamp | S02E37\n00:31:52 | Patatas Fritas | S02E21\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#battle #ants #cottage #pistachios #snails #escape #gourmet #restaurant #Minuscule #nature #insects #ladybugs #animatedseries", "Away all boarders! | Minuscule 🍃 45' Compilation", "https://www.youtube.com/watch?v=G4SP8ouB0Yk", "G4SP8ouB0Yk", 2177, false, "/downloads/Miniscule Season 2/2025-06-19 Away all boarders! | Minuscule 🍃 45' Compilation/Away all boarders! | Minuscule 🍃 45' Compilation [G4SP8ouB0Yk].mp4", false, 5, ~U[2025-06-19 10:01:44Z]] 22:57:45.285 [debug] QUERY OK source="sources" db=0.3ms idle=8.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" = ?) [5] 22:57:45.286 [debug] QUERY OK source="media_items" db=0.8ms idle=5.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-24 18:01:03Z], 5] 22:57:45.288 [debug] QUERY OK source="media_items" db=1.7ms idle=6.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Spider Driver | S02E36\n00:03:41 | Fly Hunting | S02E24\n00:07:15 | The Grocery Store Incident | S02E39\n00:10:45 | Brushing | S02E46\n00:14:18 | Ladybugland | S02E62\n00:17:45 | Labyrinth | S02E69\n00:21:31 | Refrigerated | S02E65\n00:25:05 | Spider from the Depths | S02E31\n00:28:40 | A Pathetic She'Nut'Igan | S02E12\n00:32:25 | The Stubborn Spider | S02E04\n00:36:11 | Bzzaping | S02E03\n00:39:58 | The Hat Of The Medusa | S02E17\n00:43:43 | The Butterfly Effect | S02E23\n00:47:06 | Summer Hat | S02E48\n00:50:47 | The Grocery Store Racketeer | S02E50\n00:54:23 | High voltage | S02E30\n00:57:57 | Microzilla | S02E07\n01:01:42 | Away all boarders! | S02E41\n01:05:25 | Zzz zzz | S02E44\n01:08:55 | Trapped | S02E64\n01:12:38 | The Vegetable Garden | S02E10\n01:16:23 | Rascals! | S02E38\n01:20:02 | The Monster Of The Haunted Swamp | S02E37\n01:23:33 | At Full Speed | S02E27\n01:27:16 | The Mosquito Of The Caribbean | S02E57\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #fly #hunting #pursuit #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation", "408dabf0-9548-43f2-8a57-a0417ca69cad", "https://www.youtube.com/watch?v=Hdt7fIPDP0Q", "Hdt7fIPDP0Q", 5501, false, 59, "/downloads/Miniscule Season 2/2025-05-24 Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation/Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation [Hdt7fIPDP0Q].mp4", false, false, false, 5, [], 1, ~U[2025-05-24 18:01:03Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Spider Driver | S02E36\n00:03:41 | Fly Hunting | S02E24\n00:07:15 | The Grocery Store Incident | S02E39\n00:10:45 | Brushing | S02E46\n00:14:18 | Ladybugland | S02E62\n00:17:45 | Labyrinth | S02E69\n00:21:31 | Refrigerated | S02E65\n00:25:05 | Spider from the Depths | S02E31\n00:28:40 | A Pathetic She'Nut'Igan | S02E12\n00:32:25 | The Stubborn Spider | S02E04\n00:36:11 | Bzzaping | S02E03\n00:39:58 | The Hat Of The Medusa | S02E17\n00:43:43 | The Butterfly Effect | S02E23\n00:47:06 | Summer Hat | S02E48\n00:50:47 | The Grocery Store Racketeer | S02E50\n00:54:23 | High voltage | S02E30\n00:57:57 | Microzilla | S02E07\n01:01:42 | Away all boarders! | S02E41\n01:05:25 | Zzz zzz | S02E44\n01:08:55 | Trapped | S02E64\n01:12:38 | The Vegetable Garden | S02E10\n01:16:23 | Rascals! | S02E38\n01:20:02 | The Monster Of The Haunted Swamp | S02E37\n01:23:33 | At Full Speed | S02E27\n01:27:16 | The Mosquito Of The Caribbean | S02E57\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #fly #hunting #pursuit #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation", "https://www.youtube.com/watch?v=Hdt7fIPDP0Q", "Hdt7fIPDP0Q", 5501, false, "/downloads/Miniscule Season 2/2025-05-24 Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation/Spider Driver 🕷️ Minuscule 🕸️ 120' Compilation [Hdt7fIPDP0Q].mp4", false, 5, ~U[2025-05-24 18:01:03Z]] 22:57:45.289 [debug] QUERY OK source="sources" db=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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:45.290 [debug] QUERY OK source="media_items" db=0.8ms idle=5.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-03 06:00:48Z], 5] 22:57:45.293 [debug] QUERY OK source="media_items" db=1.4ms idle=5.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Dream Of Speed | S03E24\n00:01:29 | A Candlelight Christmas | S03E20\n00:02:58 | Telecanetic | S03E19\n00:04:27 | Glue | S03E06\n00:06:04 | Like A Cannon Ball | S03E03\n00:07:33 | Webrizon | S03E02\n00:09:02 | At Full Speed | S03E22\n00:10:23 | Blunder | S03E26\n00:12:04 | Fly Swatter | S03E13\n00:13:33 | Broom's Sweep | S03E21\n00:15:02 | Ant On The Rocks | S03E17\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#dream #speed #snail #awakening #candlelight #Christmas #mosquito #sting #Minuscule #nature #insects #ladybugs #animatedseries", "A Dream Of Speed | Minuscule 🍃 20' Compilation", "c7028ff5-d287-45a7-995c-329b88979e5a", "https://www.youtube.com/watch?v=DvJa--G8oTo", "DvJa--G8oTo", 1012, false, 60, "/downloads/Miniscule Season 2/2025-06-03 A Dream Of Speed | Minuscule 🍃 20' Compilation/A Dream Of Speed | Minuscule 🍃 20' Compilation [DvJa--G8oTo].mp4", false, false, false, 5, [], 1, ~U[2025-06-03 06:00:48Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Dream Of Speed | S03E24\n00:01:29 | A Candlelight Christmas | S03E20\n00:02:58 | Telecanetic | S03E19\n00:04:27 | Glue | S03E06\n00:06:04 | Like A Cannon Ball | S03E03\n00:07:33 | Webrizon | S03E02\n00:09:02 | At Full Speed | S03E22\n00:10:23 | Blunder | S03E26\n00:12:04 | Fly Swatter | S03E13\n00:13:33 | Broom's Sweep | S03E21\n00:15:02 | Ant On The Rocks | S03E17\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#dream #speed #snail #awakening #candlelight #Christmas #mosquito #sting #Minuscule #nature #insects #ladybugs #animatedseries", "A Dream Of Speed | Minuscule 🍃 20' Compilation", "https://www.youtube.com/watch?v=DvJa--G8oTo", "DvJa--G8oTo", 1012, false, "/downloads/Miniscule Season 2/2025-06-03 A Dream Of Speed | Minuscule 🍃 20' Compilation/A Dream Of Speed | Minuscule 🍃 20' Compilation [DvJa--G8oTo].mp4", false, 5, ~U[2025-06-03 06:00:48Z]] 22:57:45.293 [debug] QUERY OK source="sources" db=0.2ms idle=6.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" = ?) [5] 22:57:45.294 [debug] QUERY OK source="media_items" db=0.8ms idle=5.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-13 06:00:49Z], 5] 22:57:45.297 [debug] QUERY OK source="media_items" db=1.5ms idle=5.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Chocolate Chase! | S02E19\n00:03:45 | Gather More to Pollinate More | S02E32\n00:07:31 | Trapped | S02E64\n00:11:13 | Top Tabasco | S02E70\n00:14:51 | Beehive On A Troll | S02E56\n00:18:21 | The Grocery Store Incident | S02E39\n00:21:52 | The Long Road | S02E34\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#chocolate #centipede #bees #wasps #gather #pollinate #productivity #competition #Minuscule #nature #insects #ladybugs #animatedseries", "The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation", "af6eb026-f84e-4c13-984e-e782c3d82577", "https://www.youtube.com/watch?v=qwA42qr00U4", "qwA42qr00U4", 1573, false, 61, "/downloads/Miniscule Season 2/2025-05-13 The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation/The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation [qwA42qr00U4].mp4", false, false, false, 5, [], 1, ~U[2025-05-13 06:00:49Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Chocolate Chase! | S02E19\n00:03:45 | Gather More to Pollinate More | S02E32\n00:07:31 | Trapped | S02E64\n00:11:13 | Top Tabasco | S02E70\n00:14:51 | Beehive On A Troll | S02E56\n00:18:21 | The Grocery Store Incident | S02E39\n00:21:52 | The Long Road | S02E34\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#chocolate #centipede #bees #wasps #gather #pollinate #productivity #competition #Minuscule #nature #insects #ladybugs #animatedseries", "The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation", "https://www.youtube.com/watch?v=qwA42qr00U4", "qwA42qr00U4", 1573, false, "/downloads/Miniscule Season 2/2025-05-13 The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation/The Chocolate Chase! 🍫 Minuscule 🍃 35' Compilation [qwA42qr00U4].mp4", false, 5, ~U[2025-05-13 06:00:49Z]] 22:57:45.297 [debug] QUERY OK source="sources" db=0.2ms queue=0.3ms 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" = ?) [5] 22:57:45.298 [debug] QUERY OK source="media_items" db=0.6ms idle=5.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-29 10:01:48Z], 5] 22:57:45.301 [debug] QUERY OK source="media_items" db=1.7ms idle=5.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Wing Case | S02E01\n00:03:45 | Homeless | S02E02\n00:07:33 | Bzzaping | S02E03\n00:11:20 | The Stubborn Spider | S02E04\n00:15:05 | An Acorn Season | S02E05\n00:18:51 | Sausage Predator | S02E06\n00:22:36 | Microzilla | S02E07\n00:26:22 | Honey Fly | S02E08\n00:30:12 | Mission : BBQ | S02E09\n00:33:57 | The Vegetable Garden | S02E10\n00:37:42 | Thievish As A Magpie | S02E11\n00:41:27 | A Pathetic She'Nut'Igan | S02E12\n00:45:13 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:48:58 | Chewing gum rodeo | S02E14\n00:52:44 | Valentine's Day | S02E15\n00:56:29 | Acrobatics | S02E16\n01:00:15 | The Hat Of The Medusa | S02E17\n01:04:00 | Night of the Gastropods | S02E18\n01:07:46 | The Chocolate Chase! | S02E19\n01:11:31 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #egg #caterpillar #adoption #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "The Wing Case | Minuscule 🍃 100' Compilation", "acaf4c92-a595-44d5-9cfe-e32dc2fde6ef", "https://www.youtube.com/watch?v=OEih9-JDEP8", "OEih9-JDEP8", 4527, false, 62, "/downloads/Miniscule Season 2/2025-05-29 The Wing Case | Minuscule 🍃 100' Compilation/The Wing Case | Minuscule 🍃 100' Compilation [OEih9-JDEP8].mp4", false, false, false, 5, [], 1, ~U[2025-05-29 10:01:48Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Wing Case | S02E01\n00:03:45 | Homeless | S02E02\n00:07:33 | Bzzaping | S02E03\n00:11:20 | The Stubborn Spider | S02E04\n00:15:05 | An Acorn Season | S02E05\n00:18:51 | Sausage Predator | S02E06\n00:22:36 | Microzilla | S02E07\n00:26:22 | Honey Fly | S02E08\n00:30:12 | Mission : BBQ | S02E09\n00:33:57 | The Vegetable Garden | S02E10\n00:37:42 | Thievish As A Magpie | S02E11\n00:41:27 | A Pathetic She'Nut'Igan | S02E12\n00:45:13 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:48:58 | Chewing gum rodeo | S02E14\n00:52:44 | Valentine's Day | S02E15\n00:56:29 | Acrobatics | S02E16\n01:00:15 | The Hat Of The Medusa | S02E17\n01:04:00 | Night of the Gastropods | S02E18\n01:07:46 | The Chocolate Chase! | S02E19\n01:11:31 | A Butterfly's Nightmare | S02E20\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #egg #caterpillar #adoption #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "The Wing Case | Minuscule 🍃 100' Compilation", "https://www.youtube.com/watch?v=OEih9-JDEP8", "OEih9-JDEP8", 4527, false, "/downloads/Miniscule Season 2/2025-05-29 The Wing Case | Minuscule 🍃 100' Compilation/The Wing Case | Minuscule 🍃 100' Compilation [OEih9-JDEP8].mp4", false, 5, ~U[2025-05-29 10:01:48Z]] 22:57:45.301 [debug] QUERY OK source="sources" db=0.2ms 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" = ?) [5] 22:57:45.302 [debug] QUERY OK source="media_items" db=0.6ms idle=5.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-06-07 18:00:58Z], 5] 22:57:45.305 [debug] QUERY OK source="media_items" db=1.6ms idle=5.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Woopsy Daysies! | S02E47\n00:03:34 | Summer Hat | S02E48\n00:07:15 | Sand Castle | S02E49\n00:10:42 | The Grocery Store Racketeer | S02E50\n00:14:17 | Snow Fly | S02E51\n00:17:42 | Ants On The Train | S02E52\n00:21:13 | Zzz In The Metro | S02E53\n00:24:49 | Go Blue Go! | S02E54\n00:28:30 | Black Slope For Gastropod Skiers | S02E55\n00:32:16 | Beehive On A Troll | S02E56\n00:35:46 | The Mosquito Of The Caribbean | S02E57\n00:39:32 | Turbo speed | S02E58\n00:42:56 | Snow Carrot | S02E59\n00:46:35 | Pollution | S02E60\n00:50:21 | Metamorphosis | S02E61\n00:53:51 | Ladybugland | S02E62\n00:57:19 | White As Snow | S02E63\n01:00:55 | Trapped | S02E64\n01:04:38 | Refrigerated | S02E65\n01:08:12 | Twelve Angry Snails | S02E66\n01:11:45 | It's a tie! | S02E67\n01:15:25 | Sleep Walker | S02E68\n01:18:50 | Labyrinth | S02E69\n01:22:35 | Top Tabasco | S02E70\n01:26:13 | Umbrella And Coconut Trees | S02E71\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #leaps #calculation #house #summer #hat #fly #spider #Minuscule #nature #insects #ladybugs #animatedseries", "Woopsy Daysies! | Minuscule 🍃 120' Compilation", "ab1191e5-afc4-470e-8dfc-8ccd0ccb8c8a", "https://www.youtube.com/watch?v=45oxcbI-NZ8", "45oxcbI-NZ8", 5425, false, 63, "/downloads/Miniscule Season 2/2025-06-07 Woopsy Daysies! | Minuscule 🍃 120' Compilation/Woopsy Daysies! | Minuscule 🍃 120' Compilation [45oxcbI-NZ8].mp4", false, false, false, 5, [], 1, ~U[2025-06-07 18:00:58Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Woopsy Daysies! | S02E47\n00:03:34 | Summer Hat | S02E48\n00:07:15 | Sand Castle | S02E49\n00:10:42 | The Grocery Store Racketeer | S02E50\n00:14:17 | Snow Fly | S02E51\n00:17:42 | Ants On The Train | S02E52\n00:21:13 | Zzz In The Metro | S02E53\n00:24:49 | Go Blue Go! | S02E54\n00:28:30 | Black Slope For Gastropod Skiers | S02E55\n00:32:16 | Beehive On A Troll | S02E56\n00:35:46 | The Mosquito Of The Caribbean | S02E57\n00:39:32 | Turbo speed | S02E58\n00:42:56 | Snow Carrot | S02E59\n00:46:35 | Pollution | S02E60\n00:50:21 | Metamorphosis | S02E61\n00:53:51 | Ladybugland | S02E62\n00:57:19 | White As Snow | S02E63\n01:00:55 | Trapped | S02E64\n01:04:38 | Refrigerated | S02E65\n01:08:12 | Twelve Angry Snails | S02E66\n01:11:45 | It's a tie! | S02E67\n01:15:25 | Sleep Walker | S02E68\n01:18:50 | Labyrinth | S02E69\n01:22:35 | Top Tabasco | S02E70\n01:26:13 | Umbrella And Coconut Trees | S02E71\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #leaps #calculation #house #summer #hat #fly #spider #Minuscule #nature #insects #ladybugs #animatedseries", "Woopsy Daysies! | Minuscule 🍃 120' Compilation", "https://www.youtube.com/watch?v=45oxcbI-NZ8", "45oxcbI-NZ8", 5425, false, "/downloads/Miniscule Season 2/2025-06-07 Woopsy Daysies! | Minuscule 🍃 120' Compilation/Woopsy Daysies! | Minuscule 🍃 120' Compilation [45oxcbI-NZ8].mp4", false, 5, ~U[2025-06-07 18:00:58Z]] 22:57:45.306 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:45.307 [debug] QUERY OK source="media_items" db=1.0ms idle=5.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-10 18:00:47Z], 5] 22:57:45.310 [debug] QUERY OK source="media_items" db=2.0ms idle=5.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | High voltage | S02E30\n00:03:34 | Summer Hat | S02E48\n00:07:15 | Ladybugland | S02E62\n00:10:43 | Refrigerated | S02E65\n00:14:17 | Spider from the Depths | S02E31\n00:17:52 | Snow Fly | S02E51\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#electricity #spider #fly #danger #summer #hat #Minuscule #nature #insects #ladybugs #animatedseries", "High voltage⚡️Minuscule 🍃 30' Compilation", "381ae829-334e-4c8f-9938-bfa3f5a4b7c6", "https://www.youtube.com/watch?v=gwZ-ik4BqbY", "gwZ-ik4BqbY", 1315, false, 64, "/downloads/Miniscule Season 2/2025-05-10 High voltage⚡️Minuscule 🍃 30' Compilation/High voltage⚡️Minuscule 🍃 30' Compilation [gwZ-ik4BqbY].mp4", false, false, false, 5, [], 1, ~U[2025-05-10 18:00:47Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | High voltage | S02E30\n00:03:34 | Summer Hat | S02E48\n00:07:15 | Ladybugland | S02E62\n00:10:43 | Refrigerated | S02E65\n00:14:17 | Spider from the Depths | S02E31\n00:17:52 | Snow Fly | S02E51\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#electricity #spider #fly #danger #summer #hat #Minuscule #nature #insects #ladybugs #animatedseries", "High voltage⚡️Minuscule 🍃 30' Compilation", "https://www.youtube.com/watch?v=gwZ-ik4BqbY", "gwZ-ik4BqbY", 1315, false, "/downloads/Miniscule Season 2/2025-05-10 High voltage⚡️Minuscule 🍃 30' Compilation/High voltage⚡️Minuscule 🍃 30' Compilation [gwZ-ik4BqbY].mp4", false, 5, ~U[2025-05-10 18:00:47Z]] 22:57:45.310 [debug] QUERY OK source="sources" db=0.5ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:45.312 [debug] QUERY OK source="media_items" db=1.0ms idle=6.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-06 06:00:59Z], 5] 22:57:45.315 [debug] QUERY OK source="media_items" db=2.2ms idle=6.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Pea In The Hand Is Worth... | S03E05\n00:01:32 | Sow The Wind And Reap The Storm | S03E11\n00:03:10 | The Doughnut | S03E16\n00:04:42 | Pea supper | S03E01\n00:06:11 | The Magic Fly | S03E15\n00:07:40 | The Sled and the Ant | S03E25\n00:09:09 | He Who Laughs Last, laughs Longest | S03E12\n00:10:38 | Chocolate Fly | S03E23\n00:12:07 | A Christmas Apple | S03E04\n00:13:37 | The Wicked Web | S03E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#pea #ant #fly #ladybird #sow #wind #grasshopper #ladybirds #Minuscule #nature #insects #ladybugs #animatedseries", "A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation", "bdeb06c3-1330-44c1-87fe-132bb3f48874", "https://www.youtube.com/watch?v=7uKsDZC7uCc", "7uKsDZC7uCc", 925, false, 65, "/downloads/Miniscule Season 2/2025-05-06 A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation/A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation [7uKsDZC7uCc].mp4", false, false, false, 5, [], 1, ~U[2025-05-06 06:00:59Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | A Pea In The Hand Is Worth... | S03E05\n00:01:32 | Sow The Wind And Reap The Storm | S03E11\n00:03:10 | The Doughnut | S03E16\n00:04:42 | Pea supper | S03E01\n00:06:11 | The Magic Fly | S03E15\n00:07:40 | The Sled and the Ant | S03E25\n00:09:09 | He Who Laughs Last, laughs Longest | S03E12\n00:10:38 | Chocolate Fly | S03E23\n00:12:07 | A Christmas Apple | S03E04\n00:13:37 | The Wicked Web | S03E07\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#pea #ant #fly #ladybird #sow #wind #grasshopper #ladybirds #Minuscule #nature #insects #ladybugs #animatedseries", "A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation", "https://www.youtube.com/watch?v=7uKsDZC7uCc", "7uKsDZC7uCc", 925, false, "/downloads/Miniscule Season 2/2025-05-06 A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation/A Pea In The Hand Is Worth... | Minuscule 🍃 20' Compilation [7uKsDZC7uCc].mp4", false, 5, ~U[2025-05-06 06:00:59Z]] 22:57:45.316 [debug] QUERY OK source="sources" db=0.5ms idle=8.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" = ?) [5] 22:57:45.317 [debug] QUERY OK source="media_items" db=0.9ms idle=6.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-31 18:00:53Z], 5] 22:57:45.321 [debug] QUERY OK source="media_items" db=2.6ms idle=7.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Patatas Fritas | S02E21\n00:03:45 | If Only Lonely | S02E22\n00:07:31 | The Butterfly Effect | S02E23\n00:10:53 | Fly Hunting | S02E24\n00:14:27 | Hop On! | S02E25\n00:18:04 | The Housing Plant Project | S02E26\n00:21:41 | At Full Speed | S02E27\n00:25:24 | The Annoying Neighbor | S02E28\n00:29:00 | Thirsty | S02E29\n00:32:33 | High voltage | S02E30\n00:36:07 | Spider from the Depths | S02E31\n00:39:42 | Gather More to Pollinate More | S02E32\n00:43:27 | The Iron Monster | S02E33\n00:47:01 | The Long Road | S02E34\n00:50:43 | The Yule log | S02E35\n00:54:29 | Spider Driver | S02E36\n00:58:10 | The Monster Of The Haunted Swamp | S02E37\n01:01:41 | Rascals! | S02E38\n01:05:20 | The Grocery Store Incident | S02E39\n01:08:51 | Sunburn | S02E40\n01:12:15 | Away all boarders! | S02E41\n01:15:58 | Down The Chimney | S02E42\n01:19:43 | To The Port Now! | S02E43\n01:23:11 | Zzz zzz | S02E44\n01:26:41 | Love Apple | S02E45\n01:30:21 | Brushing | S02E46\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Patatas #Fritas #wasps #universe #ladybug #sibling #anxiety #ants #Minuscule #nature #insects #ladybugs #animatedseries", "Patatas Fritas 🍟 Minuscule 🍃 125' Compilation", "07b71f1d-14ea-4e8c-a0d4-4bba486c0911", "https://www.youtube.com/watch?v=cFMH5uWhQhg", "cFMH5uWhQhg", 5672, false, 66, "/downloads/Miniscule Season 2/2025-05-31 Patatas Fritas 🍟 Minuscule 🍃 125' Compilation/Patatas Fritas 🍟 Minuscule 🍃 125' Compilation [cFMH5uWhQhg].mp4", false, false, false, 5, [], 1, ~U[2025-05-31 18:00:53Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Patatas Fritas | S02E21\n00:03:45 | If Only Lonely | S02E22\n00:07:31 | The Butterfly Effect | S02E23\n00:10:53 | Fly Hunting | S02E24\n00:14:27 | Hop On! | S02E25\n00:18:04 | The Housing Plant Project | S02E26\n00:21:41 | At Full Speed | S02E27\n00:25:24 | The Annoying Neighbor | S02E28\n00:29:00 | Thirsty | S02E29\n00:32:33 | High voltage | S02E30\n00:36:07 | Spider from the Depths | S02E31\n00:39:42 | Gather More to Pollinate More | S02E32\n00:43:27 | The Iron Monster | S02E33\n00:47:01 | The Long Road | S02E34\n00:50:43 | The Yule log | S02E35\n00:54:29 | Spider Driver | S02E36\n00:58:10 | The Monster Of The Haunted Swamp | S02E37\n01:01:41 | Rascals! | S02E38\n01:05:20 | The Grocery Store Incident | S02E39\n01:08:51 | Sunburn | S02E40\n01:12:15 | Away all boarders! | S02E41\n01:15:58 | Down The Chimney | S02E42\n01:19:43 | To The Port Now! | S02E43\n01:23:11 | Zzz zzz | S02E44\n01:26:41 | Love Apple | S02E45\n01:30:21 | Brushing | S02E46\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Patatas #Fritas #wasps #universe #ladybug #sibling #anxiety #ants #Minuscule #nature #insects #ladybugs #animatedseries", "Patatas Fritas 🍟 Minuscule 🍃 125' Compilation", "https://www.youtube.com/watch?v=cFMH5uWhQhg", "cFMH5uWhQhg", 5672, false, "/downloads/Miniscule Season 2/2025-05-31 Patatas Fritas 🍟 Minuscule 🍃 125' Compilation/Patatas Fritas 🍟 Minuscule 🍃 125' Compilation [cFMH5uWhQhg].mp4", false, 5, ~U[2025-05-31 18:00:53Z]] 22:57:45.322 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=9.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" = ?) [5] 22:57:45.323 [debug] QUERY OK source="media_items" db=0.9ms idle=7.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-05-01 10:01:32Z], 5] 22:57:45.326 [debug] QUERY OK source="media_items" db=2.0ms idle=7.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | An Acorn Season | S02E05\n00:03:45 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:07:31 | Chewing gum rodeo | S02E14\n00:11:16 | The Vegetable Garden | S02E10\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acorn #Grasshopper #Insects #Justice #grasshopper #babies #leap #outcast #Minuscule #nature #insects #ladybugs #animatedseries", "An Acorn Season | Minuscule 🍃 20' Compilation", "0a2a595b-8b4a-4159-a450-d7bd25cc5495", "https://www.youtube.com/watch?v=bpMUUv-x_VM", "bpMUUv-x_VM", 939, false, 67, "/downloads/Miniscule Season 2/2025-05-01 An Acorn Season | Minuscule 🍃 20' Compilation/An Acorn Season | Minuscule 🍃 20' Compilation [bpMUUv-x_VM].mp4", false, false, false, 5, [], 1, ~U[2025-05-01 10:01:32Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | An Acorn Season | S02E05\n00:03:45 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:07:31 | Chewing gum rodeo | S02E14\n00:11:16 | The Vegetable Garden | S02E10\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acorn #Grasshopper #Insects #Justice #grasshopper #babies #leap #outcast #Minuscule #nature #insects #ladybugs #animatedseries", "An Acorn Season | Minuscule 🍃 20' Compilation", "https://www.youtube.com/watch?v=bpMUUv-x_VM", "bpMUUv-x_VM", 939, false, "/downloads/Miniscule Season 2/2025-05-01 An Acorn Season | Minuscule 🍃 20' Compilation/An Acorn Season | Minuscule 🍃 20' Compilation [bpMUUv-x_VM].mp4", false, 5, ~U[2025-05-01 10:01:32Z]] 22:57:45.327 [debug] QUERY OK source="sources" db=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:45.328 [debug] QUERY OK source="media_items" db=0.9ms idle=6.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-17 10:01:36Z], 5] 22:57:45.331 [debug] QUERY OK source="media_items" db=2.1ms idle=6.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Bzzaping | S02E03\n00:03:47 | The Stubborn Spider | S02E04\n00:07:32 | Microzilla | S02E07\n00:11:18 | Brushing | S02E46\n00:14:50 | High voltage | S02E30\n00:18:24 | Fly Hunting | S02E24\n00:21:58 | The Hat Of The Medusa | S02E17\n00:25:43 | The Monster Of The Haunted Swamp | S02E37\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Bzzaping #fly #spider #television #stubborn #determination #house #Minuscule #nature #insects #ladybugs #animatedseries", "Bzzaping | Minuscule 🍃 40' Compilation", "a3029d68-c8ef-4e0a-8339-00d694595b33", "https://www.youtube.com/watch?v=YSP79Cg0w6Q", "YSP79Cg0w6Q", 1793, false, 69, "/downloads/Miniscule Season 2/2025-04-17 Bzzaping | Minuscule 🍃 40' Compilation/Bzzaping | Minuscule 🍃 40' Compilation [YSP79Cg0w6Q].mp4", false, false, false, 5, [], 1, ~U[2025-04-17 10:01:36Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Bzzaping | S02E03\n00:03:47 | The Stubborn Spider | S02E04\n00:07:32 | Microzilla | S02E07\n00:11:18 | Brushing | S02E46\n00:14:50 | High voltage | S02E30\n00:18:24 | Fly Hunting | S02E24\n00:21:58 | The Hat Of The Medusa | S02E17\n00:25:43 | The Monster Of The Haunted Swamp | S02E37\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Bzzaping #fly #spider #television #stubborn #determination #house #Minuscule #nature #insects #ladybugs #animatedseries", "Bzzaping | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=YSP79Cg0w6Q", "YSP79Cg0w6Q", 1793, false, "/downloads/Miniscule Season 2/2025-04-17 Bzzaping | Minuscule 🍃 40' Compilation/Bzzaping | Minuscule 🍃 40' Compilation [YSP79Cg0w6Q].mp4", false, 5, ~U[2025-04-17 10:01:36Z]] 22:57:45.332 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 22:57:45.334 [debug] QUERY OK source="media_items" db=0.9ms idle=6.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-07 10:31:11Z], 5] 22:57:45.338 [debug] QUERY OK source="media_items" db=3.6ms idle=6.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Wing Case | S02E01\n00:04:16 | Homeless | S02E02\n00:08:03 | Bzzaping | S02E03\n00:11:50 | The Stubborn Spider | S02E04\n00:15:36 | An Acorn Season | S02E05\n00:19:21 | Sausage Predator | S02E06\n00:23:07 | Microzilla | S02E07\n00:26:52 | Honey Fly | S02E08\n00:30:42 | Mission : BBQ | S02E09\n00:34:28 | The Vegetable Garden | S02E10\n00:38:12 | Thievish As A Magpie | S02E11\n00:41:58 | A Pathetic She'Nut'Igan | S02E12\n00:45:43 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:49:29 | Chewing gum rodeo | S02E14\n00:53:14 | Valentine's Day | S02E15\n00:57:00 | Acrobatics | S02E16\n01:00:45 | The Hat Of The Medusa | S02E17\n01:04:31 | Night of the Gastropods | S02E18\n01:08:16 | The Chocolate Chase! | S02E19\n01:12:02 | A Butterfly's Nightmare | S02E20\n01:15:18 | Patatas Fritas | S02E21\n01:19:04 | If Only Lonely | S02E22\n01:22:50 | The Butterfly Effect | S02E23\n01:26:12 | Fly Hunting | S02E24\n01:29:46 | Hop On! | S02E25\n01:33:23 | The Housing Plant Project | S02E26\n01:37:00 | At Full Speed | S02E27\n01:40:43 | The Annoying Neighbor | S02E28\n01:44:19 | Thirsty | S02E29\n01:47:52 | High voltage | S02E30\n01:51:26 | Spider from the Depths | S02E31\n01:55:00 | Gather More to Pollinate More | S02E32\n01:58:46 | The Iron Monster | S02E33\n02:02:19 | The Long Road | S02E34\n02:06:02 | The Yule log | S02E35\n02:09:48 | Spider Driver | S02E36\n02:13:29 | The Monster Of The Haunted Swamp | S02E37\n02:17:00 | Rascals! | S02E38\n02:20:39 | The Grocery Store Incident | S02E39\n02:24:10 | Sunburn | S02E40\n02:27:34 | Away all boarders! | S02E41\n02:31:17 | Down The Chimney | S02E42\n02:35:02 | To The Port Now! | S02E43\n02:38:30 | Zzz zzz | S02E44\n02:42:00 | Love Apple | S02E45\n02:45:40 | Brushing | S02E46\n02:49:12 | Woopsy Daysies! | S02E47\n02:52:46 | Summer Hat | S02E48\n02:56:28 | Sand Castle | S02E49\n02:59:54 | The Grocery Store Racketeer | S02E50\n03:03:30 | Snow Fly | S02E51\n03:06:55 | Ants On The Train | S02E52\n03:10:26 | Zzz In The Metro | S02E53\n03:14:02 | Go Blue Go! | S02E54\n03:17:43 | Black Slope For Gastropod Skiers | S02E55\n03:21:29 | Beehive On A Troll | S02E56\n03:24:59 | The Mosquito Of The Caribbean | S02E57\n03:28:45 | Turbo speed | S02E58\n03:32:09 | Snow Carrot | S02E59\n03:35:48 | Pollution | S02E60\n03:39:33 | Metamorphosis | S02E61\n03:43:04 | Ladybugland | S02E62\n03:46:31 | White As Snow | S02E63\n03:50:08 | Trapped | S02E64\n03:53:50 | Refrigerated | S02E65\n03:57:25 | Twelve Angry Snails | S02E66\n04:00:57 | It's a tie! | S02E67\n04:04:38 | Sleep Walker | S02E68\n04:08:03 | Labyrinth | S02E69\n04:11:48 | Top Tabasco | S02E70\n04:15:26 | Umbrella And Coconut Trees | S02E71\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #egg #caterpillar #adoption #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybugs #animatedseries", "🔴 Live 🔴 Minuscule 🍃 Season 2", "ad90f755-216e-4178-84c7-90dd63d9f8be", "https://www.youtube.com/watch?v=nu-0hFsz_PM", "nu-0hFsz_PM", 327186, true, 71, "/downloads/Miniscule Season 2/2025-04-07 🔴 Live 🔴 Minuscule 🍃 Season 2/🔴 Live 🔴 Minuscule 🍃 Season 2 [nu-0hFsz_PM].NA", false, false, false, 5, [], 1, ~U[2025-04-07 10:31:11Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Wing Case | S02E01\n00:04:16 | Homeless | S02E02\n00:08:03 | Bzzaping | S02E03\n00:11:50 | The Stubborn Spider | S02E04\n00:15:36 | An Acorn Season | S02E05\n00:19:21 | Sausage Predator | S02E06\n00:23:07 | Microzilla | S02E07\n00:26:52 | Honey Fly | S02E08\n00:30:42 | Mission : BBQ | S02E09\n00:34:28 | The Vegetable Garden | S02E10\n00:38:12 | Thievish As A Magpie | S02E11\n00:41:58 | A Pathetic She'Nut'Igan | S02E12\n00:45:43 | The Grasshopper Who Didn't Know How To Leap | S02E13\n00:49:29 | Chewing gum rodeo | S02E14\n00:53:14 | Valentine's Day | S02E15\n00:57:00 | Acrobatics | S02E16\n01:00:45 | The Hat Of The Medusa | S02E17\n01:04:31 | Night of the Gastropods | S02E18\n01:08:16 | The Chocolate Chase! | S02E19\n01:12:02 | A Butterfly's Nightmare | S02E20\n01:15:18 | Patatas Fritas | S02E21\n01:19:04 | If Only Lonely | S02E22\n01:22:50 | The Butterfly Effect | S02E23\n01:26:12 | Fly Hunting | S02E24\n01:29:46 | Hop On! | S02E25\n01:33:23 | The Housing Plant Project | S02E26\n01:37:00 | At Full Speed | S02E27\n01:40:43 | The Annoying Neighbor | S02E28\n01:44:19 | Thirsty | S02E29\n01:47:52 | High voltage | S02E30\n01:51:26 | Spider from the Depths | S02E31\n01:55:00 | Gather More to Pollinate More | S02E32\n01:58:46 | The Iron Monster | S02E33\n02:02:19 | The Long Road | S02E34\n02:06:02 | The Yule log | S02E35\n02:09:48 | Spider Driver | S02E36\n02:13:29 | The Monster Of The Haunted Swamp | S02E37\n02:17:00 | Rascals! | S02E38\n02:20:39 | The Grocery Store Incident | S02E39\n02:24:10 | Sunburn | S02E40\n02:27:34 | Away all boarders! | S02E41\n02:31:17 | Down The Chimney | S02E42\n02:35:02 | To The Port Now! | S02E43\n02:38:30 | Zzz zzz | S02E44\n02:42:00 | Love Apple | S02E45\n02:45:40 | Brushing | S02E46\n02:49:12 | Woopsy Daysies! | S02E47\n02:52:46 | Summer Hat | S02E48\n02:56:28 | Sand Castle | S02E49\n02:59:54 | The Grocery Store Racketeer | S02E50\n03:03:30 | Snow Fly | S02E51\n03:06:55 | Ants On The Train | S02E52\n03:10:26 | Zzz In The Metro | S02E53\n03:14:02 | Go Blue Go! | S02E54\n03:17:43 | Black Slope For Gastropod Skiers | S02E55\n03:21:29 | Beehive On A Troll | S02E56\n03:24:59 | The Mosquito Of The Caribbean | S02E57\n03:28:45 | Turbo speed | S02E58\n03:32:09 | Snow Carrot | S02E59\n03:35:48 | Pollution | S02E60\n03:39:33 | Metamorphosis | S02E61\n03:43:04 | Ladybugland | S02E62\n03:46:31 | White As Snow | S02E63\n03:50:08 | Trapped | S02E64\n03:53:50 | Refrigerated | S02E65\n03:57:25 | Twelve Angry Snails | S02E66\n04:00:57 | It's a tie! | S02E67\n04:04:38 | Sleep Walker | S02E68\n04:08:03 | Labyrinth | S02E69\n04:11:48 | Top Tabasco | S02E70\n04:15:26 | Umbrella And Coconut Trees | S02E71\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #egg #caterpillar #adoption #Caterpillar #Refuge #Insects #Homeless #Minuscule #nature #insects #ladybu (truncated) 22:57:45.340 [debug] QUERY OK source="sources" db=0.5ms idle=10.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" = ?) [5] 22:57:45.341 [debug] QUERY OK source="media_items" db=0.9ms idle=8.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-22 06:00:52Z], 5] 22:57:45.344 [debug] QUERY OK source="media_items" db=2.1ms idle=9.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Homeless | S02E02\n00:03:47 | The Annoying Neighbor | S02E28\n00:07:23 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Caterpillar #Refuge #Insects #Homeless #caterpillar #noisy #neighbor #apple #Minuscule #nature #insects #ladybugs #animatedseries", "Homeless | Minuscule 🍃 15' Compilation", "4dc237b8-fdbc-448b-b4ef-fa395120d7e8", "https://www.youtube.com/watch?v=6QpMZlFOxwk", "6QpMZlFOxwk", 698, false, 72, "/downloads/Miniscule Season 2/2025-04-22 Homeless | Minuscule 🍃 15' Compilation/Homeless | Minuscule 🍃 15' Compilation [6QpMZlFOxwk].mp4", false, false, false, 5, [], 1, ~U[2025-04-22 06:00:52Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Homeless | S02E02\n00:03:47 | The Annoying Neighbor | S02E28\n00:07:23 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Caterpillar #Refuge #Insects #Homeless #caterpillar #noisy #neighbor #apple #Minuscule #nature #insects #ladybugs #animatedseries", "Homeless | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=6QpMZlFOxwk", "6QpMZlFOxwk", 698, false, "/downloads/Miniscule Season 2/2025-04-22 Homeless | Minuscule 🍃 15' Compilation/Homeless | Minuscule 🍃 15' Compilation [6QpMZlFOxwk].mp4", false, 5, ~U[2025-04-22 06:00:52Z]] 22:57:45.345 [debug] QUERY OK source="sources" db=0.4ms idle=10.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" = ?) [5] 22:57:45.346 [debug] QUERY OK source="media_items" db=0.8ms idle=7.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-12 18:01:00Z], 5] 22:57:45.355 [debug] QUERY OK source="media_items" db=8.8ms idle=6.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Labyrinth | S02E69\n00:03:45 | Refrigerated | S02E65\n00:07:20 | Spider from the Depths | S02E31\n00:10:54 | Ladybugland | S02E62\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Labyrinth #spider #fly #exit #Refrigerated #ice #Minuscule #nature #insects #ladybugs #animatedseries", "Labyrinth | Minuscule 🍃🕷️ 20' Compilation", "fdc72607-6802-4fce-96ce-59828a2a6c17", "https://www.youtube.com/watch?v=lKFrUfigr-k", "lKFrUfigr-k", 900, false, 73, "/downloads/Miniscule Season 2/2025-04-12 Labyrinth | Minuscule 🍃🕷️ 20' Compilation/Labyrinth | Minuscule 🍃🕷️ 20' Compilation [lKFrUfigr-k].mp4", false, false, false, 5, [], 1, ~U[2025-04-12 18:01:00Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Labyrinth | S02E69\n00:03:45 | Refrigerated | S02E65\n00:07:20 | Spider from the Depths | S02E31\n00:10:54 | Ladybugland | S02E62\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Labyrinth #spider #fly #exit #Refrigerated #ice #Minuscule #nature #insects #ladybugs #animatedseries", "Labyrinth | Minuscule 🍃🕷️ 20' Compilation", "https://www.youtube.com/watch?v=lKFrUfigr-k", "lKFrUfigr-k", 900, false, "/downloads/Miniscule Season 2/2025-04-12 Labyrinth | Minuscule 🍃🕷️ 20' Compilation/Labyrinth | Minuscule 🍃🕷️ 20' Compilation [lKFrUfigr-k].mp4", false, 5, ~U[2025-04-12 18:01:00Z]] 22:57:45.356 [debug] QUERY OK source="sources" db=0.4ms idle=15.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" = ?) [5] 22:57:45.358 [debug] QUERY OK source="media_items" db=0.9ms idle=13.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-10 10:01:30Z], 5] 22:57:45.361 [debug] QUERY OK source="media_items" db=2.3ms idle=13.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Acrobatics | S02E16\n00:03:45 | A Pathetic She'Nut'Igan | S02E12\n00:07:31 | Trapped | S02E64\n00:11:13 | Microzilla | S02E07\n00:14:59 | An Acorn Season | S02E05\n00:18:44 | The Chocolate Chase! | S02E19\n00:22:30 | Turbo speed | S02E58\n00:25:54 | Bzzaping | S02E03\n00:29:41 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acrobatics #Wasps #Ladybird #Competition #Pathetic #Spider #Invent #Strategies #Minuscule #nature #insects #ladybugs #animatedseries", "Acrobatics | Minuscule 🍃 45' Compilation", "a1ebd273-52e4-40af-9071-ad5ada7e5df1", "https://www.youtube.com/watch?v=x9RfjS6rVoE", "x9RfjS6rVoE", 2043, false, 75, "/downloads/Miniscule Season 2/2025-04-10 Acrobatics | Minuscule 🍃 45' Compilation/Acrobatics | Minuscule 🍃 45' Compilation [x9RfjS6rVoE].mp4", false, false, false, 5, [], 1, ~U[2025-04-10 10:01:30Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Acrobatics | S02E16\n00:03:45 | A Pathetic She'Nut'Igan | S02E12\n00:07:31 | Trapped | S02E64\n00:11:13 | Microzilla | S02E07\n00:14:59 | An Acorn Season | S02E05\n00:18:44 | The Chocolate Chase! | S02E19\n00:22:30 | Turbo speed | S02E58\n00:25:54 | Bzzaping | S02E03\n00:29:41 | Away all boarders! | S02E41\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Acrobatics #Wasps #Ladybird #Competition #Pathetic #Spider #Invent #Strategies #Minuscule #nature #insects #ladybugs #animatedseries", "Acrobatics | Minuscule 🍃 45' Compilation", "https://www.youtube.com/watch?v=x9RfjS6rVoE", "x9RfjS6rVoE", 2043, false, "/downloads/Miniscule Season 2/2025-04-10 Acrobatics | Minuscule 🍃 45' Compilation/Acrobatics | Minuscule 🍃 45' Compilation [x9RfjS6rVoE].mp4", false, 5, ~U[2025-04-10 10:01:30Z]] 22:57:45.362 [debug] QUERY OK source="sources" db=1.0ms idle=15.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" = ?) [5] 22:57:45.364 [debug] QUERY OK source="media_items" db=1.0ms idle=7.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-27 11:01:30Z], 5] 22:57:45.367 [debug] QUERY OK source="media_items" db=2.1ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sausage Predator | S02E06\n00:03:45 | The Yule log | S02E35\n00:07:31 | To The Port Now! | S02E43\n00:10:58 | Metamorphosis | S02E61\n00:14:29 | Love Apple | S02E45\n00:18:08 | The Annoying Neighbor | S02E28\n00:21:44 | Homeless | S02E02\n00:25:32 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Sausage #Predator #ants #barbecue #Yule #Christmas #fire #Minuscule #nature #insects #ladybugs #animatedseries", "Sausage Predator | Minuscule 🍃 40' Compilation", "6911f612-3a25-46ae-ba67-1600a693d9ec", "https://www.youtube.com/watch?v=u65noLqB1MQ", "u65noLqB1MQ", 1787, false, 76, "/downloads/Miniscule Season 2/2025-03-27 Sausage Predator | Minuscule 🍃 40' Compilation/Sausage Predator | Minuscule 🍃 40' Compilation [u65noLqB1MQ].mp4", false, false, false, 5, [], 1, ~U[2025-03-27 11:01:30Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Sausage Predator | S02E06\n00:03:45 | The Yule log | S02E35\n00:07:31 | To The Port Now! | S02E43\n00:10:58 | Metamorphosis | S02E61\n00:14:29 | Love Apple | S02E45\n00:18:08 | The Annoying Neighbor | S02E28\n00:21:44 | Homeless | S02E02\n00:25:32 | The Housing Plant Project | S02E26\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Sausage #Predator #ants #barbecue #Yule #Christmas #fire #Minuscule #nature #insects #ladybugs #animatedseries", "Sausage Predator | Minuscule 🍃 40' Compilation", "https://www.youtube.com/watch?v=u65noLqB1MQ", "u65noLqB1MQ", 1787, false, "/downloads/Miniscule Season 2/2025-03-27 Sausage Predator | Minuscule 🍃 40' Compilation/Sausage Predator | Minuscule 🍃 40' Compilation [u65noLqB1MQ].mp4", false, 5, ~U[2025-03-27 11:01:30Z]] 22:57:45.368 [debug] QUERY OK source="sources" db=0.5ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:45.369 [debug] QUERY OK source="media_items" db=0.8ms idle=7.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-29 19:00:42Z], 5] 22:57:45.869 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:46.267 [debug] QUERY OK source="media_items" db=896.5ms idle=7.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mad fly | S03E08\n00:01:29 | Telecanetic | S03E19\n00:02:58 | The Magic Fly | S03E15\n00:04:27 | Like A Cannon Ball | S03E03\n00:05:56 | The Wicked Web | S03E07\n00:07:25 | Blunder | S03E26\n00:09:05 | Webrizon | S03E02\n00:10:34 | At Full Speed | S03E22\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Telekinesis #Chase #Spider #Powers #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly | Minuscule 🍃 15' Compilation", "f3c0954c-585c-4c6a-8c0f-37577aef6574", "https://www.youtube.com/watch?v=MmFinvp6tCk", "MmFinvp6tCk", 734, false, 78, "/downloads/Miniscule Season 2/2025-03-29 Mad fly | Minuscule 🍃 15' Compilation/Mad fly | Minuscule 🍃 15' Compilation [MmFinvp6tCk].mp4", false, false, false, 5, [], 1, ~U[2025-03-29 19:00:42Z], ~U[2026-01-30 05:57:45Z], ~U[2026-01-30 05:57:45Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mad fly | S03E08\n00:01:29 | Telecanetic | S03E19\n00:02:58 | The Magic Fly | S03E15\n00:04:27 | Like A Cannon Ball | S03E03\n00:05:56 | The Wicked Web | S03E07\n00:07:25 | Blunder | S03E26\n00:09:05 | Webrizon | S03E02\n00:10:34 | At Full Speed | S03E22\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#flies #spider #race #toys #Telekinesis #Chase #Spider #Powers #Minuscule #nature #insects #ladybugs #animatedseries", "Mad fly | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=MmFinvp6tCk", "MmFinvp6tCk", 734, false, "/downloads/Miniscule Season 2/2025-03-29 Mad fly | Minuscule 🍃 15' Compilation/Mad fly | Minuscule 🍃 15' Compilation [MmFinvp6tCk].mp4", false, 5, ~U[2025-03-29 19:00:42Z]] 22:57:46.268 [debug] QUERY OK source="sources" db=0.4ms idle=898.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" = ?) [5] 22:57:46.269 [debug] QUERY OK source="media_items" db=1.1ms idle=398.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-20 11:01:31Z], 5] 22:57:46.272 [debug] QUERY OK source="media_items" db=2.2ms idle=283.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Vegetable Garden | S02E10\n00:03:44 | Trapped | S02E64\n00:07:27 | The Monster Of The Haunted Swamp | S02E37\n00:10:57 | At Full Speed | S02E27\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#vegetable #garden #insects #gardener #trapped #escape #rescue #Minuscule #nature #ladybugs #animatedseries", "The Vegetable Garden | Minuscule 🍃 20' Compilation", "f2b710f0-3043-4168-9b09-a74fb74a2177", "https://www.youtube.com/watch?v=Q7a7mvz2wZU", "Q7a7mvz2wZU", 920, false, 79, "/downloads/Miniscule Season 2/2025-03-20 The Vegetable Garden | Minuscule 🍃 20' Compilation/The Vegetable Garden | Minuscule 🍃 20' Compilation [Q7a7mvz2wZU].mp4", false, false, false, 5, [], 1, ~U[2025-03-20 11:01:31Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Vegetable Garden | S02E10\n00:03:44 | Trapped | S02E64\n00:07:27 | The Monster Of The Haunted Swamp | S02E37\n00:10:57 | At Full Speed | S02E27\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#vegetable #garden #insects #gardener #trapped #escape #rescue #Minuscule #nature #ladybugs #animatedseries", "The Vegetable Garden | Minuscule 🍃 20' Compilation", "https://www.youtube.com/watch?v=Q7a7mvz2wZU", "Q7a7mvz2wZU", 920, false, "/downloads/Miniscule Season 2/2025-03-20 The Vegetable Garden | Minuscule 🍃 20' Compilation/The Vegetable Garden | Minuscule 🍃 20' Compilation [Q7a7mvz2wZU].mp4", false, 5, ~U[2025-03-20 11:01:31Z]] 22:57:46.274 [debug] QUERY OK source="sources" db=0.6ms idle=6.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" = ?) [5] 22:57:46.276 [debug] QUERY OK source="media_items" db=1.1ms idle=7.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-22 19:00:45Z], 5] 22:57:46.279 [debug] QUERY OK source="media_items" db=2.5ms idle=8.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | It's a tie! | S02E67\n00:03:40 | Twelve Angry Snails | S02E66\n00:07:13 | Sleep Walker | S02E68\n00:10:37 | Black Slope For Gastropod Skiers | S02E55\n00:14:23 | The Long Road | S02E34\n00:18:05 | Thirsty | S02E29\n00:21:38 | Night of the Gastropods | S02E18\n00:25:23 | Go Blue Go! | S02E54\n00:29:05 | The Iron Monster | S02E33\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#insects #games #competition #referee #snails #escape #gourmet #restaurant #Minuscule #nature #ladybugs #animatedseries", "It's a tie! 🍃 Minuscule 🍃| 45' Compilation", "7e8786f3-dfac-4bf7-bb33-12ea57397c78", "https://www.youtube.com/watch?v=hYE3G--61A8", "hYE3G--61A8", 1997, false, 80, "/downloads/Miniscule Season 2/2025-03-22 It's a tie! 🍃 Minuscule 🍃| 45' Compilation/It's a tie! 🍃 Minuscule 🍃| 45' Compilation [hYE3G--61A8].mp4", false, false, false, 5, [], 1, ~U[2025-03-22 19:00:45Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | It's a tie! | S02E67\n00:03:40 | Twelve Angry Snails | S02E66\n00:07:13 | Sleep Walker | S02E68\n00:10:37 | Black Slope For Gastropod Skiers | S02E55\n00:14:23 | The Long Road | S02E34\n00:18:05 | Thirsty | S02E29\n00:21:38 | Night of the Gastropods | S02E18\n00:25:23 | Go Blue Go! | S02E54\n00:29:05 | The Iron Monster | S02E33\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#insects #games #competition #referee #snails #escape #gourmet #restaurant #Minuscule #nature #ladybugs #animatedseries", "It's a tie! 🍃 Minuscule 🍃| 45' Compilation", "https://www.youtube.com/watch?v=hYE3G--61A8", "hYE3G--61A8", 1997, false, "/downloads/Miniscule Season 2/2025-03-22 It's a tie! 🍃 Minuscule 🍃| 45' Compilation/It's a tie! 🍃 Minuscule 🍃| 45' Compilation [hYE3G--61A8].mp4", false, 5, ~U[2025-03-22 19:00:45Z]] 22:57:46.280 [debug] QUERY OK source="sources" db=0.4ms idle=10.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" = ?) [5] 22:57:46.281 [debug] QUERY OK source="media_items" db=1.0ms idle=8.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-18 07:00:59Z], 5] 22:57:46.285 [debug] QUERY OK source="media_items" db=2.2ms idle=8.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Butterfly Effect | S02E23\n00:03:22 | A Butterfly's Nightmare | S02E20\n00:06:38 | Hop On! | S02E25\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#butterfly #flutter #fields #reaction #Butterfly #Caterpillar #Nightmare #Cocoon #Minuscule #nature #insects #ladybugs #animatedseries", "The Butterfly Effect 🦋 Minuscule 🍃15' Compilation", "f711053a-3fb2-4c94-be6b-edc6e87ad941", "https://www.youtube.com/watch?v=x_l22YIpeVo", "x_l22YIpeVo", 654, false, 81, "/downloads/Miniscule Season 2/2025-03-18 The Butterfly Effect 🦋 Minuscule 🍃15' Compilation/The Butterfly Effect 🦋 Minuscule 🍃15' Compilation [x_l22YIpeVo].mp4", false, false, false, 5, [], 1, ~U[2025-03-18 07:00:59Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Butterfly Effect | S02E23\n00:03:22 | A Butterfly's Nightmare | S02E20\n00:06:38 | Hop On! | S02E25\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#butterfly #flutter #fields #reaction #Butterfly #Caterpillar #Nightmare #Cocoon #Minuscule #nature #insects #ladybugs #animatedseries", "The Butterfly Effect 🦋 Minuscule 🍃15' Compilation", "https://www.youtube.com/watch?v=x_l22YIpeVo", "x_l22YIpeVo", 654, false, "/downloads/Miniscule Season 2/2025-03-18 The Butterfly Effect 🦋 Minuscule 🍃15' Compilation/The Butterfly Effect 🦋 Minuscule 🍃15' Compilation [x_l22YIpeVo].mp4", false, 5, ~U[2025-03-18 07:00:59Z]] 22:57:46.286 [debug] QUERY OK source="sources" db=0.5ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:46.287 [debug] QUERY OK source="media_items" db=0.9ms idle=7.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-04-15 06:00:44Z], 5] 22:57:46.290 [debug] QUERY OK source="media_items" db=2.1ms idle=7.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | If Only Lonely | S02E22\n00:03:45 | Top Tabasco | S02E70\n00:07:22 | The Wing Case | S02E01\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #sibling #anxiety #ants #Tabasco #wasp #patrol #Minuscule #nature #insects #ladybugs #animatedseries", "If Only Lonely 🍃 Minuscule 🍃 15' Compilation", "8a71484d-e224-4ab9-900e-d25690f86664", "https://www.youtube.com/watch?v=vPCGZgPoNQc", "vPCGZgPoNQc", 707, false, 82, "/downloads/Miniscule Season 2/2025-04-15 If Only Lonely 🍃 Minuscule 🍃 15' Compilation/If Only Lonely 🍃 Minuscule 🍃 15' Compilation [vPCGZgPoNQc].mp4", false, false, false, 5, [], 1, ~U[2025-04-15 06:00:44Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | If Only Lonely | S02E22\n00:03:45 | Top Tabasco | S02E70\n00:07:22 | The Wing Case | S02E01\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ladybug #sibling #anxiety #ants #Tabasco #wasp #patrol #Minuscule #nature #insects #ladybugs #animatedseries", "If Only Lonely 🍃 Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=vPCGZgPoNQc", "vPCGZgPoNQc", 707, false, "/downloads/Miniscule Season 2/2025-04-15 If Only Lonely 🍃 Minuscule 🍃 15' Compilation/If Only Lonely 🍃 Minuscule 🍃 15' Compilation [vPCGZgPoNQc].mp4", false, 5, ~U[2025-04-15 06:00:44Z]] 22:57:46.291 [debug] QUERY OK source="sources" db=0.4ms idle=9.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" = ?) [5] 22:57:46.293 [debug] QUERY OK source="media_items" db=0.9ms idle=7.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-15 19:00:46Z], 5] 22:57:46.296 [debug] QUERY OK source="media_items" db=2.1ms idle=7.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pea supper | S03E01\n00:01:29 | Glue | S03E06\n00:03:06 | He Who Laughs Last, laughs Longest | S03E12\n00:04:35 | The Artist | S03E18\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #peas #supper #techniques #Glue #Sticky #Spider #Trap #Minuscule #nature #insects #ladybugs #animatedseries", "Pea supper | Minuscule 🍃10' Compilation", "bccf5456-f62b-4e5d-ae20-335e09d52928", "https://www.youtube.com/watch?v=Z6u1Kv61MBA", "Z6u1Kv61MBA", 399, false, 83, "/downloads/Miniscule Season 2/2025-03-15 Pea supper | Minuscule 🍃10' Compilation/Pea supper | Minuscule 🍃10' Compilation [Z6u1Kv61MBA].mp4", false, false, false, 5, [], 1, ~U[2025-03-15 19:00:46Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Pea supper | S03E01\n00:01:29 | Glue | S03E06\n00:03:06 | He Who Laughs Last, laughs Longest | S03E12\n00:04:35 | The Artist | S03E18\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #peas #supper #techniques #Glue #Sticky #Spider #Trap #Minuscule #nature #insects #ladybugs #animatedseries", "Pea supper | Minuscule 🍃10' Compilation", "https://www.youtube.com/watch?v=Z6u1Kv61MBA", "Z6u1Kv61MBA", 399, false, "/downloads/Miniscule Season 2/2025-03-15 Pea supper | Minuscule 🍃10' Compilation/Pea supper | Minuscule 🍃10' Compilation [Z6u1Kv61MBA].mp4", false, 5, ~U[2025-03-15 19:00:46Z]] 22:57:46.297 [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" = ?) [5] 22:57:46.298 [debug] QUERY OK source="media_items" db=0.9ms idle=7.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-08 19:00:43Z], 5] 22:57:46.301 [debug] QUERY OK source="media_items" db=2.0ms idle=7.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n%CHAPTERS%\r\n \r\n%PLAYLIST%\r\n \r\nMinuscule in English 🇺🇸: https://youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Carrot #Ants #Ski #ant #snow #pinecone #colony #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Carrot | Minuscule 🍃 15' Compilation", "a2c1a514-12a5-4e3b-a850-2076df17e25a", "https://www.youtube.com/watch?v=yEQ3x5KByLI", "yEQ3x5KByLI", 685, false, 84, "/downloads/Miniscule Season 2/2025-03-08 Snow Carrot | Minuscule 🍃 15' Compilation/Snow Carrot | Minuscule 🍃 15' Compilation [yEQ3x5KByLI].mp4", false, false, false, 5, [], 1, ~U[2025-03-08 19:00:43Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n%CHAPTERS%\r\n \r\n%PLAYLIST%\r\n \r\nMinuscule in English 🇺🇸: https://youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Snow #Carrot #Ants #Ski #ant #snow #pinecone #colony #Minuscule #nature #insects #ladybugs #animatedseries", "Snow Carrot | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=yEQ3x5KByLI", "yEQ3x5KByLI", 685, false, "/downloads/Miniscule Season 2/2025-03-08 Snow Carrot | Minuscule 🍃 15' Compilation/Snow Carrot | Minuscule 🍃 15' Compilation [yEQ3x5KByLI].mp4", false, 5, ~U[2025-03-08 19:00:43Z]] 22:57:46.302 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 22:57:46.303 [debug] QUERY OK source="media_items" db=1.2ms queue=0.1ms idle=6.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-03-04 07:00:49Z], 5] 22:57:46.306 [debug] QUERY OK source="media_items" db=1.9ms idle=7.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grasshopper Who Didn't Know How To Leap | S02E13\r\n00:03:45 | An Acorn Season | S02E05\r\n00:07:31 | Chewing gum rodeo | S02E14\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #babies #leap #outcast #Acorn #Grasshopper #Insects #Justice #Minuscule #nature #insects #ladybugs #animatedseries", "The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation", "fd8c9426-3c53-4ba3-953a-feb7c730abe3", "https://www.youtube.com/watch?v=773g6-bqyv4", "773g6-bqyv4", 715, false, 85, "/downloads/Miniscule Season 2/2025-03-04 The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation/The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation [773g6-bqyv4].mp4", false, false, false, 5, [], 1, ~U[2025-03-04 07:00:49Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grasshopper Who Didn't Know How To Leap | S02E13\r\n00:03:45 | An Acorn Season | S02E05\r\n00:07:31 | Chewing gum rodeo | S02E14\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#grasshopper #babies #leap #outcast #Acorn #Grasshopper #Insects #Justice #Minuscule #nature #insects #ladybugs #animatedseries", "The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=773g6-bqyv4", "773g6-bqyv4", 715, false, "/downloads/Miniscule Season 2/2025-03-04 The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation/The Grasshopper Who Didn't Know How To Leap | Minuscule 🍃 15' Compilation [773g6-bqyv4].mp4", false, 5, ~U[2025-03-04 07:00:49Z]] 22:57:46.307 [debug] QUERY OK source="sources" db=0.3ms idle=8.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" = ?) [5] 22:57:46.308 [debug] QUERY OK source="media_items" db=0.9ms idle=6.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-02-25 07:00:55Z], 5] 22:57:46.311 [debug] QUERY OK source="media_items" db=1.5ms idle=7.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Honey Fly | S02E08\r\n00:03:50 | Gather More to Pollinate More | S02E32\r\n00:07:35 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Honey #Fly #Bees #Admiration #gather #pollinate #productivity #competition #Minuscule #nature #insects #ladybugs #animatedseries", "Honey Fly 🐝 Minuscule 🍃 15' Compilation", "88880e37-7bcc-4d04-b087-79ccf89f6542", "https://www.youtube.com/watch?v=uFP6qsmHsTU", "uFP6qsmHsTU", 705, false, 86, "/downloads/Miniscule Season 2/2025-02-25 Honey Fly 🐝 Minuscule 🍃 15' Compilation/Honey Fly 🐝 Minuscule 🍃 15' Compilation [uFP6qsmHsTU].mp4", false, false, false, 5, [], 1, ~U[2025-02-25 07:00:55Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Honey Fly | S02E08\r\n00:03:50 | Gather More to Pollinate More | S02E32\r\n00:07:35 | Beehive On A Troll | S02E56\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Honey #Fly #Bees #Admiration #gather #pollinate #productivity #competition #Minuscule #nature #insects #ladybugs #animatedseries", "Honey Fly 🐝 Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=uFP6qsmHsTU", "uFP6qsmHsTU", 705, false, "/downloads/Miniscule Season 2/2025-02-25 Honey Fly 🐝 Minuscule 🍃 15' Compilation/Honey Fly 🐝 Minuscule 🍃 15' Compilation [uFP6qsmHsTU].mp4", false, 5, ~U[2025-02-25 07:00:55Z]] 22:57:46.312 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:46.313 [debug] QUERY OK source="media_items" db=0.9ms idle=5.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-02-22 19:00:47Z], 5] 22:57:46.316 [debug] QUERY OK source="media_items" db=2.0ms idle=6.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Rascals! | S02E38\r\n00:03:39 | Away all boarders! | S02E41\r\n00:07:14 | Sand Castle | S02E49\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ants #battle #steal #leader #cottage #pistachios #Minuscule #nature #insects #ladybugs #animatedseries", "Rascals! | Minuscule 🍃 15' Compilation", "1669d5aa-abd5-47b8-a41f-c1a5a1b7dd5e", "https://www.youtube.com/watch?v=ix9apuOmP7E", "ix9apuOmP7E", 680, false, 87, "/downloads/Miniscule Season 2/2025-02-22 Rascals! | Minuscule 🍃 15' Compilation/Rascals! | Minuscule 🍃 15' Compilation [ix9apuOmP7E].mp4", false, false, false, 5, [], 1, ~U[2025-02-22 19:00:47Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Rascals! | S02E38\r\n00:03:39 | Away all boarders! | S02E41\r\n00:07:14 | Sand Castle | S02E49\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#ants #battle #steal #leader #cottage #pistachios #Minuscule #nature #insects #ladybugs #animatedseries", "Rascals! | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=ix9apuOmP7E", "ix9apuOmP7E", 680, false, "/downloads/Miniscule Season 2/2025-02-22 Rascals! | Minuscule 🍃 15' Compilation/Rascals! | Minuscule 🍃 15' Compilation [ix9apuOmP7E].mp4", false, 5, ~U[2025-02-22 19:00:47Z]] 22:57:46.317 [debug] QUERY OK source="sources" db=0.6ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:46.318 [debug] QUERY OK source="media_items" db=0.9ms idle=6.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-02-20 11:01:19Z], 5] 22:57:46.321 [debug] QUERY OK source="media_items" db=2.0ms idle=7.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mission : BBQ | S02E09\r\n00:03:45 | The Chocolate Chase! | S02E19\r\n00:07:31 | Acrobatics | S02E16\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#BBQ #garden #insects #wasps #chocolate #centipede #bees #Minuscule #nature #ladybugs #animatedseries", "Mission : BBQ | Minuscule 🍃 15' Compilation", "2e255023-a202-42f8-a334-5e006ec16a54", "https://www.youtube.com/watch?v=HwAj0Zc2N1w", "HwAj0Zc2N1w", 715, false, 88, "/downloads/Miniscule Season 2/2025-02-20 Mission : BBQ | Minuscule 🍃 15' Compilation/Mission : BBQ | Minuscule 🍃 15' Compilation [HwAj0Zc2N1w].mp4", false, false, false, 5, [], 1, ~U[2025-02-20 11:01:19Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Mission : BBQ | S02E09\r\n00:03:45 | The Chocolate Chase! | S02E19\r\n00:07:31 | Acrobatics | S02E16\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#BBQ #garden #insects #wasps #chocolate #centipede #bees #Minuscule #nature #ladybugs #animatedseries", "Mission : BBQ | Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=HwAj0Zc2N1w", "HwAj0Zc2N1w", 715, false, "/downloads/Miniscule Season 2/2025-02-20 Mission : BBQ | Minuscule 🍃 15' Compilation/Mission : BBQ | Minuscule 🍃 15' Compilation [HwAj0Zc2N1w].mp4", false, 5, ~U[2025-02-20 11:01:19Z]] 22:57:46.322 [debug] QUERY OK source="sources" db=0.8ms idle=8.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" = ?) [5] 22:57:46.324 [debug] QUERY OK source="media_items" db=0.9ms idle=6.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-02-15 19:00:46Z], 5] 22:57:46.327 [debug] QUERY OK source="media_items" db=2.1ms idle=7.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Fly Hunting | S02E24\r\n00:03:33 | Zzz In The Metro | S02E53\r\n00:07:01 | Umbrella And Coconut Trees | S02E71\r\n00:10:27 | Turbo speed | S02E58\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#fly #hunting #ladybug #pursuit #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Fly Hunting 🐞 Minuscule 🍃 20' Compilation", "c6e0a98b-d078-4301-9811-dc244442877a", "https://www.youtube.com/watch?v=K543vJYczNU", "K543vJYczNU", 900, false, 89, "/downloads/Miniscule Season 2/2025-02-15 Fly Hunting 🐞 Minuscule 🍃 20' Compilation/Fly Hunting 🐞 Minuscule 🍃 20' Compilation [K543vJYczNU].mp4", false, false, false, 5, [], 1, ~U[2025-02-15 19:00:46Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Fly Hunting | S02E24\r\n00:03:33 | Zzz In The Metro | S02E53\r\n00:07:01 | Umbrella And Coconut Trees | S02E71\r\n00:10:27 | Turbo speed | S02E58\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#fly #hunting #ladybug #pursuit #flies #chase #metro #Minuscule #nature #insects #ladybugs #animatedseries", "Fly Hunting 🐞 Minuscule 🍃 20' Compilation", "https://www.youtube.com/watch?v=K543vJYczNU", "K543vJYczNU", 900, false, "/downloads/Miniscule Season 2/2025-02-15 Fly Hunting 🐞 Minuscule 🍃 20' Compilation/Fly Hunting 🐞 Minuscule 🍃 20' Compilation [K543vJYczNU].mp4", false, 5, ~U[2025-02-15 19:00:46Z]] 22:57:46.327 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 22:57:46.329 [debug] QUERY OK source="media_items" db=0.9ms idle=7.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-02-11 11:01:26Z], 5] 22:57:46.332 [debug] QUERY OK source="media_items" db=2.0ms idle=7.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grocery Store Racketeer | S02E50\r\n00:03:27 | Ladybugland | S02E62\r\n00:06:47 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Grocery #Spider #Bullying #Revenge #ladybug #spider #toys #danger #Minuscule #nature #insects #ladybugs #animatedseries", "The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation", "d9ebf869-d203-4eec-b4a3-3a34c285e7b9", "https://www.youtube.com/watch?v=N-GZ_mZLq40", "N-GZ_mZLq40", 657, false, 90, "/downloads/Miniscule Season 2/2025-02-11 The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation/The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation [N-GZ_mZLq40].mp4", false, false, false, 5, [], 1, ~U[2025-02-11 11:01:26Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | The Grocery Store Racketeer | S02E50\r\n00:03:27 | Ladybugland | S02E62\r\n00:06:47 | The Grocery Store Incident | S02E39\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#Grocery #Spider #Bullying #Revenge #ladybug #spider #toys #danger #Minuscule #nature #insects #ladybugs #animatedseries", "The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation", "https://www.youtube.com/watch?v=N-GZ_mZLq40", "N-GZ_mZLq40", 657, false, "/downloads/Miniscule Season 2/2025-02-11 The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation/The Grocery Store Racketeer 🕷️ Minuscule 🍃 15' Compilation [N-GZ_mZLq40].mp4", false, 5, ~U[2025-02-11 11:01:26Z]] 22:57:46.333 [debug] QUERY OK source="sources" db=0.4ms 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" = ?) [5] 22:57:46.334 [debug] QUERY OK source="media_items" db=0.9ms idle=6.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-01-22 11:30:29Z], 5] 22:57:46.343 [debug] QUERY OK source="media_items" db=7.8ms idle=7.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Spider Driver | S02E36\n00:04:12 | The Stubborn Spider | S02E04\n00:07:57 | A Pathetic She'Nut'Igan | S02E12\n00:11:43 | Spider from the Depths | S02E31\n00:15:18 | High voltage | S02E30\n00:18:52 | Microzilla | S02E07\n00:22:38 | Refrigerated | S02E65\n00:26:04 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #stubborn #determination #house #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver 🕷️ Minuscule 🚗 30' Compilation", "bbc7f5b1-e421-4bc8-8f2a-458810254aa1", "https://www.youtube.com/watch?v=Q5_qB6zaOk4", "Q5_qB6zaOk4", 1802, false, 91, "/downloads/Miniscule Season 2/2025-01-22 Spider Driver 🕷️ Minuscule 🚗 30' Compilation/Spider Driver 🕷️ Minuscule 🚗 30' Compilation [Q5_qB6zaOk4].mp4", false, false, false, 5, [], 1, ~U[2025-01-22 11:30:29Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Spider Driver | S02E36\n00:04:12 | The Stubborn Spider | S02E04\n00:07:57 | A Pathetic She'Nut'Igan | S02E12\n00:11:43 | Spider from the Depths | S02E31\n00:15:18 | High voltage | S02E30\n00:18:52 | Microzilla | S02E07\n00:22:38 | Refrigerated | S02E65\n00:26:04 | Labyrinth | S02E69\r\n \r\n🪲 Minuscule: The Animated Series | Season 2 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-69_M01yj2OHYtCaM9N3ypx\r\n\r\n© MMVI Futurikon - All rights reserved\r\n\r\n#spider #flies #ladybug #car #stubborn #determination #house #Minuscule #nature #insects #ladybugs #animatedseries", "Spider Driver 🕷️ Minuscule 🚗 30' Compilation", "https://www.youtube.com/watch?v=Q5_qB6zaOk4", "Q5_qB6zaOk4", 1802, false, "/downloads/Miniscule Season 2/2025-01-22 Spider Driver 🕷️ Minuscule 🚗 30' Compilation/Spider Driver 🕷️ Minuscule 🚗 30' Compilation [Q5_qB6zaOk4].mp4", false, 5, ~U[2025-01-22 11:30:29Z]] 22:57:46.344 [debug] QUERY OK source="sources" db=0.5ms queue=0.4ms idle=14.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" = ?) [5] 22:57:46.345 [debug] QUERY OK source="media_items" db=0.9ms idle=12.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-08-13 14:30:00Z], 5] 22:57:46.348 [debug] QUERY OK source="media_items" db=1.9ms idle=12.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Le Beignet/The Doughnut (Season 2)", "32718616-a1a5-47c8-91ab-4f2490e71353", "https://www.youtube.com/watch?v=6-qwLEqPqwQ", "6-qwLEqPqwQ", 181, false, 92, "/downloads/Miniscule Season 2/2020-08-13 Minuscule - Le Beignet⧸The Doughnut (Season 2)/Minuscule - Le Beignet⧸The Doughnut (Season 2) [6-qwLEqPqwQ].mp4", false, false, false, 5, [], 1, ~U[2020-08-13 14:30:00Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Le Beignet/The Doughnut (Season 2)", "https://www.youtube.com/watch?v=6-qwLEqPqwQ", "6-qwLEqPqwQ", 181, false, "/downloads/Miniscule Season 2/2020-08-13 Minuscule - Le Beignet⧸The Doughnut (Season 2)/Minuscule - Le Beignet⧸The Doughnut (Season 2) [6-qwLEqPqwQ].mp4", false, 5, ~U[2020-08-13 14:30:00Z]] 22:57:46.349 [debug] QUERY OK source="sources" db=0.4ms idle=14.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" = ?) [5] 22:57:46.350 [debug] QUERY OK source="media_items" db=0.9ms idle=6.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-08-06 14:30:00Z], 5] 22:57:46.354 [debug] QUERY OK source="media_items" db=2.3ms idle=6.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nTwo spiders are craving the same prey: a fat fly, lying unconscious on the surface of a pool. The booty will go to the spider that can reach the fly before it wakes up, and without getting wet of course.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Spider from the dephts / Araignée des abysses (Season 2)", "e370a5cf-26b2-4219-bba2-46fd4d0208d5", "https://www.youtube.com/watch?v=1804_xlIy08", "1804_xlIy08", 263, false, 93, "/downloads/Miniscule Season 2/2020-08-06 Minuscule - Spider from the dephts ⧸ Araignée des abysses (Season 2)/Minuscule - Spider from the dephts ⧸ Araignée des abysses (Season 2) [1804_xlIy08].mp4", false, false, false, 5, [], 1, ~U[2020-08-06 14:30:00Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nTwo spiders are craving the same prey: a fat fly, lying unconscious on the surface of a pool. The booty will go to the spider that can reach the fly before it wakes up, and without getting wet of course.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Spider from the dephts / Araignée des abysses (Season 2)", "https://www.youtube.com/watch?v=1804_xlIy08", "1804_xlIy08", 263, false, "/downloads/Miniscule Season 2/2020-08-06 Minuscule - Spider from the dephts ⧸ Araignée des abysses (Season 2)/Minuscule - Spider from the dephts ⧸ Araignée des abysses (Season 2) [1804_xlIy08].mp4", false, 5, ~U[2020-08-06 14:30:00Z]] 22:57:46.355 [debug] QUERY OK source="sources" db=0.4ms 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" = ?) [5] 22:57:46.356 [debug] QUERY OK source="media_items" db=0.9ms idle=7.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-07-30 14:30:08Z], 5] 22:57:46.359 [debug] QUERY OK source="media_items" db=2.0ms idle=7.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nSaved by the providential fall of a tiny egg, a mother ladybug adopts it. When it hatches, she realises it contains a little caterpillar.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The wing case / Sans élytres (Season 2)", "467bbc39-db81-41ff-88ed-110666872b8d", "https://www.youtube.com/watch?v=bO_HhX6Sp08", "bO_HhX6Sp08", 294, false, 94, "/downloads/Miniscule Season 2/2020-07-30 Minuscule - The wing case ⧸ Sans élytres (Season 2)/Minuscule - The wing case ⧸ Sans élytres (Season 2) [bO_HhX6Sp08].mkv", false, false, false, 5, [], 1, ~U[2020-07-30 14:30:08Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nSaved by the providential fall of a tiny egg, a mother ladybug adopts it. When it hatches, she realises it contains a little caterpillar.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The wing case / Sans élytres (Season 2)", "https://www.youtube.com/watch?v=bO_HhX6Sp08", "bO_HhX6Sp08", 294, false, "/downloads/Miniscule Season 2/2020-07-30 Minuscule - The wing case ⧸ Sans élytres (Season 2)/Minuscule - The wing case ⧸ Sans élytres (Season 2) [bO_HhX6Sp08].mkv", false, 5, ~U[2020-07-30 14:30:08Z]] 22:57:46.360 [debug] QUERY OK source="sources" db=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:46.361 [debug] QUERY OK source="media_items" db=1.0ms idle=7.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-07-23 14:30:10Z], 5] 22:57:46.364 [debug] QUERY OK source="media_items" db=2.0ms idle=7.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The stubborn spider / Têtue (Season 2)", "82977cd8-e688-42e7-bb5f-86d5f48745b8", "https://www.youtube.com/watch?v=oHMkCoPqJHs", "oHMkCoPqJHs", 294, false, 95, "/downloads/Miniscule Season 2/2020-07-23 Minuscule - The stubborn spider ⧸ Têtue (Season 2)/Minuscule - The stubborn spider ⧸ Têtue (Season 2) [oHMkCoPqJHs].mkv", false, false, false, 5, [], 1, ~U[2020-07-23 14:30:10Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The stubborn spider / Têtue (Season 2)", "https://www.youtube.com/watch?v=oHMkCoPqJHs", "oHMkCoPqJHs", 294, false, "/downloads/Miniscule Season 2/2020-07-23 Minuscule - The stubborn spider ⧸ Têtue (Season 2)/Minuscule - The stubborn spider ⧸ Têtue (Season 2) [oHMkCoPqJHs].mkv", false, 5, ~U[2020-07-23 14:30:10Z]] 22:57:46.365 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 22:57:46.366 [debug] QUERY OK source="media_items" db=0.9ms idle=6.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-07-14 14:30:00Z], 5] 22:57:46.370 [debug] QUERY OK source="media_items" db=2.1ms idle=7.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - An acorns season / La saison des glands (Season 2)", "e6182d49-e93a-4e5f-b0ce-c86365be030e", "https://www.youtube.com/watch?v=1lhjwbQQ5K8", "1lhjwbQQ5K8", 294, false, 96, "/downloads/Miniscule Season 2/2020-07-14 Minuscule - An acorns season ⧸ La saison des glands (Season 2)/Minuscule - An acorns season ⧸ La saison des glands (Season 2) [1lhjwbQQ5K8].mp4", false, false, false, 5, [], 1, ~U[2020-07-14 14:30:00Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - An acorns season / La saison des glands (Season 2)", "https://www.youtube.com/watch?v=1lhjwbQQ5K8", "1lhjwbQQ5K8", 294, false, "/downloads/Miniscule Season 2/2020-07-14 Minuscule - An acorns season ⧸ La saison des glands (Season 2)/Minuscule - An acorns season ⧸ La saison des glands (Season 2) [1lhjwbQQ5K8].mp4", false, 5, ~U[2020-07-14 14:30:00Z]] 22:57:46.371 [debug] QUERY OK source="sources" db=0.4ms 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" = ?) [5] 22:57:46.372 [debug] QUERY OK source="media_items" db=1.0ms idle=6.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-07-09 14:30:01Z], 5] 22:57:46.375 [debug] QUERY OK source="media_items" db=2.2ms idle=7.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA caterpillar finds refuge inside a pumpkin. The other farmhouse insects are not too pleased with the new tenant until the farmer takes away all the apples and potatoes, leaving them homeless.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Homeless / Sans abri (Season 2)", "ff1d5604-293f-46ca-a619-3bf31e997d13", "https://www.youtube.com/watch?v=Uoa0_J8qVcU", "Uoa0_J8qVcU", 296, false, 97, "/downloads/Miniscule Season 2/2020-07-09 Minuscule - Homeless ⧸ Sans abri (Season 2)/Minuscule - Homeless ⧸ Sans abri (Season 2) [Uoa0_J8qVcU].mp4", false, false, false, 5, [], 1, ~U[2020-07-09 14:30:01Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA caterpillar finds refuge inside a pumpkin. The other farmhouse insects are not too pleased with the new tenant until the farmer takes away all the apples and potatoes, leaving them homeless.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Homeless / Sans abri (Season 2)", "https://www.youtube.com/watch?v=Uoa0_J8qVcU", "Uoa0_J8qVcU", 296, false, "/downloads/Miniscule Season 2/2020-07-09 Minuscule - Homeless ⧸ Sans abri (Season 2)/Minuscule - Homeless ⧸ Sans abri (Season 2) [Uoa0_J8qVcU].mp4", false, 5, ~U[2020-07-09 14:30:01Z]] 22:57:46.376 [debug] QUERY OK source="sources" db=0.5ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:46.378 [debug] QUERY OK source="media_items" db=0.9ms idle=7.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-06-30 14:30:01Z], 5] 22:57:46.381 [debug] QUERY OK source="media_items" db=1.9ms idle=7.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Thievish as a magpie / Pie voleuse (Season 2)", "efec3829-9ee8-4915-8f3d-23fce40369c6", "https://www.youtube.com/watch?v=-XlXZUgUMV0", "-XlXZUgUMV0", 294, false, 98, "/downloads/Miniscule Season 2/2020-06-30 Minuscule - Thievish as a magpie ⧸ Pie voleuse (Season 2)/Minuscule - Thievish as a magpie ⧸ Pie voleuse (Season 2) [-XlXZUgUMV0].mp4", false, false, false, 5, [], 1, ~U[2020-06-30 14:30:01Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Thievish as a magpie / Pie voleuse (Season 2)", "https://www.youtube.com/watch?v=-XlXZUgUMV0", "-XlXZUgUMV0", 294, false, "/downloads/Miniscule Season 2/2020-06-30 Minuscule - Thievish as a magpie ⧸ Pie voleuse (Season 2)/Minuscule - Thievish as a magpie ⧸ Pie voleuse (Season 2) [-XlXZUgUMV0].mp4", false, 5, ~U[2020-06-30 14:30:01Z]] 22:57:46.382 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 22:57:46.383 [debug] QUERY OK source="media_items" db=0.9ms idle=7.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-06-23 14:30:04Z], 5] 22:57:46.386 [debug] QUERY OK source="media_items" db=2.1ms idle=7.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn a kitchen garden, a gardener wages a merciless war against a snail's gang which, when the night comes, goes out and eats his salads.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Night of the gastropods / La nuit des gastéropodes (Season 2)", "40409169-e595-4a72-8bd1-da43486fdd41", "https://www.youtube.com/watch?v=cBDjUa2ayDw", "cBDjUa2ayDw", 294, false, 99, "/downloads/Miniscule Season 2/2020-06-23 Minuscule - Night of the gastropods ⧸ La nuit des gastéropodes (Season 2)/Minuscule - Night of the gastropods ⧸ La nuit des gastéropodes (Season 2) [cBDjUa2ayDw].mp4", false, false, false, 5, [], 1, ~U[2020-06-23 14:30:04Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn a kitchen garden, a gardener wages a merciless war against a snail's gang which, when the night comes, goes out and eats his salads.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Night of the gastropods / La nuit des gastéropodes (Season 2)", "https://www.youtube.com/watch?v=cBDjUa2ayDw", "cBDjUa2ayDw", 294, false, "/downloads/Miniscule Season 2/2020-06-23 Minuscule - Night of the gastropods ⧸ La nuit des gastéropodes (Season 2)/Minuscule - Night of the gastropods ⧸ La nuit des gastéropodes (Season 2) [cBDjUa2ayDw].mp4", false, 5, ~U[2020-06-23 14:30:04Z]] 22:57:46.387 [debug] QUERY OK source="sources" db=0.4ms 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" = ?) [5] 22:57:46.388 [debug] QUERY OK source="media_items" db=0.9ms idle=6.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-06-18 14:30:00Z], 5] 22:57:46.391 [debug] QUERY OK source="media_items" db=2.1ms idle=7.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA grasshopper who's just had babies hurries to teach them the most important lesson of all: how to leap properly. But one of the babies is unable to hop and ends up an outcast.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The grasshopper who didn't / La sauterelle qui ne savait pas sauter (Season 2)", "27c3cc81-1314-487e-87de-8276f4258c56", "https://www.youtube.com/watch?v=7yponB6dwxg", "7yponB6dwxg", 294, false, 100, "/downloads/Miniscule Season 2/2020-06-18 Minuscule - The grasshopper who didn't ⧸ La sauterelle qui ne savait pas sauter (Season 2)/Minuscule - The grasshopper who didn't ⧸ La sauterelle qui ne savait pas sauter (Season 2) [7yponB6dwxg].mp4", false, false, false, 5, [], 1, ~U[2020-06-18 14:30:00Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA grasshopper who's just had babies hurries to teach them the most important lesson of all: how to leap properly. But one of the babies is unable to hop and ends up an outcast.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The grasshopper who didn't / La sauterelle qui ne savait pas sauter (Season 2)", "https://www.youtube.com/watch?v=7yponB6dwxg", "7yponB6dwxg", 294, false, "/downloads/Miniscule Season 2/2020-06-18 Minuscule - The grasshopper who didn't ⧸ La sauterelle qui ne savait pas sauter (Season 2)/Minuscule - The grasshopper who didn't ⧸ La sauterelle qui ne savait pas sauter (Season 2) [7yponB6dwxg].mp4", false, 5, ~U[2020-06-18 14:30:00Z]] 22:57:46.392 [debug] QUERY OK source="sources" db=0.4ms 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" = ?) [5] 22:57:46.394 [debug] QUERY OK source="media_items" db=1.0ms idle=7.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-06-11 14:30:10Z], 5] 22:57:46.400 [debug] QUERY OK source="media_items" db=5.4ms idle=7.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA spider weaves webs to catch a fly but it always gets through the threads. How will the spider finally catch the fly?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The wicked web / La toile infernale (Season 2)", "ce96a0cb-364c-4831-86f5-d17ed6c01def", "https://www.youtube.com/watch?v=stZl27m_rAs", "stZl27m_rAs", 119, false, 101, "/downloads/Miniscule Season 2/2020-06-11 Minuscule - The wicked web ⧸ La toile infernale (Season 2)/Minuscule - The wicked web ⧸ La toile infernale (Season 2) [stZl27m_rAs].mp4", false, false, false, 5, [], 1, ~U[2020-06-11 14:30:10Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA spider weaves webs to catch a fly but it always gets through the threads. How will the spider finally catch the fly?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The wicked web / La toile infernale (Season 2)", "https://www.youtube.com/watch?v=stZl27m_rAs", "stZl27m_rAs", 119, false, "/downloads/Miniscule Season 2/2020-06-11 Minuscule - The wicked web ⧸ La toile infernale (Season 2)/Minuscule - The wicked web ⧸ La toile infernale (Season 2) [stZl27m_rAs].mp4", false, 5, ~U[2020-06-11 14:30:10Z]] 22:57:46.401 [debug] QUERY OK source="sources" db=0.4ms idle=12.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" = ?) [5] 22:57:46.402 [debug] QUERY OK source="media_items" db=1.0ms idle=10.3ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-06-04 14:30:03Z], 5] 22:57:46.406 [debug] QUERY OK source="media_items" db=2.2ms queue=0.1ms idle=10.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - At full speed / A pleine vitesse (Season 2)", "3b2402db-83e5-4a17-b6b2-a558becd5716", "https://www.youtube.com/watch?v=j1ZKKf2vKuI", "j1ZKKf2vKuI", 111, false, 102, "/downloads/Miniscule Season 2/2020-06-04 Minuscule - At full speed ⧸ A pleine vitesse (Season 2)/Minuscule - At full speed ⧸ A pleine vitesse (Season 2) [j1ZKKf2vKuI].mp4", false, false, false, 5, [], 1, ~U[2020-06-04 14:30:03Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - At full speed / A pleine vitesse (Season 2)", "https://www.youtube.com/watch?v=j1ZKKf2vKuI", "j1ZKKf2vKuI", 111, false, "/downloads/Miniscule Season 2/2020-06-04 Minuscule - At full speed ⧸ A pleine vitesse (Season 2)/Minuscule - At full speed ⧸ A pleine vitesse (Season 2) [j1ZKKf2vKuI].mp4", false, 5, ~U[2020-06-04 14:30:03Z]] 22:57:46.407 [debug] QUERY OK source="sources" db=0.5ms idle=12.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" = ?) [5] 22:57:46.409 [debug] QUERY OK source="media_items" db=0.9ms idle=7.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-05-28 14:30:07Z], 5] 22:57:48.750 [debug] QUERY OK source="media_items" db=2339.6ms idle=7.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA fly enjoying a chocolate dessert is distracted from a spider that has eyes for this easy prey.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Chocolate fly / Mouche au chocolat (Season 2)", "fd3d6ea7-0ab0-4079-90bb-670b976a118f", "https://www.youtube.com/watch?v=zt7IK3-i-Rc", "zt7IK3-i-Rc", 119, false, 103, "/downloads/Miniscule Season 2/2020-05-28 Minuscule - Chocolate fly ⧸ Mouche au chocolat (Season 2)/Minuscule - Chocolate fly ⧸ Mouche au chocolat (Season 2) [zt7IK3-i-Rc].mp4", false, false, false, 5, [], 1, ~U[2020-05-28 14:30:07Z], ~U[2026-01-30 05:57:46Z], ~U[2026-01-30 05:57:46Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA fly enjoying a chocolate dessert is distracted from a spider that has eyes for this easy prey.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Chocolate fly / Mouche au chocolat (Season 2)", "https://www.youtube.com/watch?v=zt7IK3-i-Rc", "zt7IK3-i-Rc", 119, false, "/downloads/Miniscule Season 2/2020-05-28 Minuscule - Chocolate fly ⧸ Mouche au chocolat (Season 2)/Minuscule - Chocolate fly ⧸ Mouche au chocolat (Season 2) [zt7IK3-i-Rc].mp4", false, 5, ~U[2020-05-28 14:30:07Z]] 22:57:48.751 [debug] QUERY OK source="sources" db=0.4ms queue=0.2ms idle=771.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" = ?) [5] 22:57:48.753 [debug] QUERY OK source="media_items" db=1.2ms idle=772.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-05-21 14:30:03Z], 5] 22:57:49.308 [debug] QUERY OK source="media_items" db=553.6ms idle=763.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The vegetable garden / Topinambourg (Season 2)", "34e969a8-1054-4cfe-8e36-7d588a378607", "https://www.youtube.com/watch?v=BnUtsMMfjWU", "BnUtsMMfjWU", 293, false, 104, "/downloads/Miniscule Season 2/2020-05-21 Minuscule - The vegetable garden ⧸ Topinambourg (Season 2)/Minuscule - The vegetable garden ⧸ Topinambourg (Season 2) [BnUtsMMfjWU].mp4", false, false, false, 5, [], 1, ~U[2020-05-21 14:30:03Z], ~U[2026-01-30 05:57:48Z], ~U[2026-01-30 05:57:48Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The vegetable garden / Topinambourg (Season 2)", "https://www.youtube.com/watch?v=BnUtsMMfjWU", "BnUtsMMfjWU", 293, false, "/downloads/Miniscule Season 2/2020-05-21 Minuscule - The vegetable garden ⧸ Topinambourg (Season 2)/Minuscule - The vegetable garden ⧸ Topinambourg (Season 2) [BnUtsMMfjWU].mp4", false, 5, ~U[2020-05-21 14:30:03Z]] 22:57:49.309 [debug] QUERY OK source="sources" db=0.4ms idle=559.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" = ?) [5] 22:57:49.311 [debug] QUERY OK source="media_items" db=1.1ms idle=558.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-05-14 14:30:00Z], 5] 22:57:49.314 [debug] QUERY OK source="media_items" db=2.2ms idle=558.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA small black spider does its best to imitate another spider in web building.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Blunder / La boulette (Season 2)", "93323245-e2ef-45c9-87b9-f9d48a51e23f", "https://www.youtube.com/watch?v=78uO6wF20Ig", "78uO6wF20Ig", 130, false, 105, "/downloads/Miniscule Season 2/2020-05-14 Minuscule - Blunder ⧸ La boulette (Season 2)/Minuscule - Blunder ⧸ La boulette (Season 2) [78uO6wF20Ig].mp4", false, false, false, 5, [], 1, ~U[2020-05-14 14:30:00Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA small black spider does its best to imitate another spider in web building.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Blunder / La boulette (Season 2)", "https://www.youtube.com/watch?v=78uO6wF20Ig", "78uO6wF20Ig", 130, false, "/downloads/Miniscule Season 2/2020-05-14 Minuscule - Blunder ⧸ La boulette (Season 2)/Minuscule - Blunder ⧸ La boulette (Season 2) [78uO6wF20Ig].mp4", false, 5, ~U[2020-05-14 14:30:00Z]] 22:57:49.315 [debug] QUERY OK source="sources" db=0.5ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:49.316 [debug] QUERY OK source="media_items" db=0.9ms idle=6.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-05-07 14:30:03Z], 5] 22:57:49.319 [debug] QUERY OK source="media_items" db=2.0ms idle=6.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A candlelight christmas / Noël aux chandelles (Season 2)", "512f106d-2cef-4f28-9566-51aff1ec7136", "https://www.youtube.com/watch?v=Mntl56t9HyA", "Mntl56t9HyA", 119, false, 106, "/downloads/Miniscule Season 2/2020-05-07 Minuscule - A candlelight christmas ⧸ Noël aux chandelles (Season 2)/Minuscule - A candlelight christmas ⧸ Noël aux chandelles (Season 2) [Mntl56t9HyA].mp4", false, false, false, 5, [], 1, ~U[2020-05-07 14:30:03Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A candlelight christmas / Noël aux chandelles (Season 2)", "https://www.youtube.com/watch?v=Mntl56t9HyA", "Mntl56t9HyA", 119, false, "/downloads/Miniscule Season 2/2020-05-07 Minuscule - A candlelight christmas ⧸ Noël aux chandelles (Season 2)/Minuscule - A candlelight christmas ⧸ Noël aux chandelles (Season 2) [Mntl56t9HyA].mp4", false, 5, ~U[2020-05-07 14:30:03Z]] 22:57:49.320 [debug] QUERY OK source="sources" db=0.4ms idle=6.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" = ?) [5] 22:57:49.322 [debug] QUERY OK source="media_items" db=0.9ms idle=5.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-04-30 14:30:06Z], 5] 22:57:49.324 [debug] QUERY OK source="media_items" db=1.9ms idle=6.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA fly plays a magic trick on a spider, but is all what it seems?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The magic fly / La mouche magique (Season 2)", "89384d26-4dee-4700-8d2b-5a20dfa0ab0f", "https://www.youtube.com/watch?v=qCnMPlECNGA", "qCnMPlECNGA", 119, false, 107, "/downloads/Miniscule Season 2/2020-04-30 Minuscule - The magic fly ⧸ La mouche magique (Season 2)/Minuscule - The magic fly ⧸ La mouche magique (Season 2) [qCnMPlECNGA].mp4", false, false, false, 5, [], 1, ~U[2020-04-30 14:30:06Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA fly plays a magic trick on a spider, but is all what it seems?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The magic fly / La mouche magique (Season 2)", "https://www.youtube.com/watch?v=qCnMPlECNGA", "qCnMPlECNGA", 119, false, "/downloads/Miniscule Season 2/2020-04-30 Minuscule - The magic fly ⧸ La mouche magique (Season 2)/Minuscule - The magic fly ⧸ La mouche magique (Season 2) [qCnMPlECNGA].mp4", false, 5, ~U[2020-04-30 14:30:06Z]] 22:57:49.326 [debug] QUERY OK source="sources" db=0.5ms idle=8.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" = ?) [5] 22:57:49.327 [debug] QUERY OK source="media_items" db=0.8ms idle=6.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-04-23 14:30:03Z], 5] 22:57:49.330 [debug] QUERY OK source="media_items" db=2.1ms idle=6.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn a garden, a mocking ladybird arrives to taunt a band of flies, and incites them to chase her in a crazy race.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The cruel cow in the meadow / Histoire vache (Season 2)", "84404776-28ec-4281-8660-66ac547e3d22", "https://www.youtube.com/watch?v=X8TfG9Ib4Aw", "X8TfG9Ib4Aw", 120, false, 108, "/downloads/Miniscule Season 2/2020-04-23 Minuscule - The cruel cow in the meadow ⧸ Histoire vache (Season 2)/Minuscule - The cruel cow in the meadow ⧸ Histoire vache (Season 2) [X8TfG9Ib4Aw].mp4", false, false, false, 5, [], 1, ~U[2020-04-23 14:30:03Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn a garden, a mocking ladybird arrives to taunt a band of flies, and incites them to chase her in a crazy race.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The cruel cow in the meadow / Histoire vache (Season 2)", "https://www.youtube.com/watch?v=X8TfG9Ib4Aw", "X8TfG9Ib4Aw", 120, false, "/downloads/Miniscule Season 2/2020-04-23 Minuscule - The cruel cow in the meadow ⧸ Histoire vache (Season 2)/Minuscule - The cruel cow in the meadow ⧸ Histoire vache (Season 2) [X8TfG9Ib4Aw].mp4", false, 5, ~U[2020-04-23 14:30:03Z]] 22:57:49.331 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 22:57:49.333 [debug] QUERY OK source="media_items" db=1.0ms idle=7.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-04-16 14:30:02Z], 5] 22:57:49.336 [debug] QUERY OK source="media_items" db=2.2ms idle=7.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA group of flies try and catch a ladybird over a golf course but the flies are not aware of the complications that they face.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Need for speed / Ivre de vitesse (Season 2)", "963d05af-4354-420b-ae83-4d6092ece5f3", "https://www.youtube.com/watch?v=31kI59jDiRI", "31kI59jDiRI", 119, false, 109, "/downloads/Miniscule Season 2/2020-04-16 Minuscule - Need for speed ⧸ Ivre de vitesse (Season 2)/Minuscule - Need for speed ⧸ Ivre de vitesse (Season 2) [31kI59jDiRI].mp4", false, false, false, 5, [], 1, ~U[2020-04-16 14:30:02Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA group of flies try and catch a ladybird over a golf course but the flies are not aware of the complications that they face.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Need for speed / Ivre de vitesse (Season 2)", "https://www.youtube.com/watch?v=31kI59jDiRI", "31kI59jDiRI", 119, false, "/downloads/Miniscule Season 2/2020-04-16 Minuscule - Need for speed ⧸ Ivre de vitesse (Season 2)/Minuscule - Need for speed ⧸ Ivre de vitesse (Season 2) [31kI59jDiRI].mp4", false, 5, ~U[2020-04-16 14:30:02Z]] 22:57:49.337 [debug] QUERY OK source="sources" db=0.5ms idle=9.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" = ?) [5] 22:57:49.338 [debug] QUERY OK source="media_items" db=1.0ms idle=7.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-04-09 14:30:00Z], 5] 22:57:49.342 [debug] QUERY OK source="media_items" db=2.3ms idle=8.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA careless fly escapes from a hungry spider by shutting herself inside a microwave oven. The radiations turn her into a powerful monster fly the size of an orange.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Microzilla / Microzondes (Season 2)", "3d5f5785-038b-4792-bc61-1b8565c82d4c", "https://www.youtube.com/watch?v=64r6-QYb1do", "64r6-QYb1do", 294, false, 110, "/downloads/Miniscule Season 2/2020-04-09 Minuscule - Microzilla ⧸ Microzondes (Season 2)/Minuscule - Microzilla ⧸ Microzondes (Season 2) [64r6-QYb1do].mkv", false, false, false, 5, [], 1, ~U[2020-04-09 14:30:00Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA careless fly escapes from a hungry spider by shutting herself inside a microwave oven. The radiations turn her into a powerful monster fly the size of an orange.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Microzilla / Microzondes (Season 2)", "https://www.youtube.com/watch?v=64r6-QYb1do", "64r6-QYb1do", 294, false, "/downloads/Miniscule Season 2/2020-04-09 Minuscule - Microzilla ⧸ Microzondes (Season 2)/Minuscule - Microzilla ⧸ Microzondes (Season 2) [64r6-QYb1do].mkv", false, 5, ~U[2020-04-09 14:30:00Z]] 22:57:49.343 [debug] QUERY OK source="sources" db=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:49.344 [debug] QUERY OK source="media_items" db=1.0ms idle=7.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-04-02 16:30:07Z], 5] 22:57:49.347 [debug] QUERY OK source="media_items" db=2.1ms idle=7.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nAn ant builds a pyramid made out out of peas while a fly is having fun destroying the building when it's almost done. But a ladybird is watching...\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A pea in the hand is worth / Deux petits pois deux mesures (Season 2)", "117fc6b1-cc07-431f-87ad-3bb166ca6c82", "https://www.youtube.com/watch?v=f0xE5_ejBKk", "f0xE5_ejBKk", 122, false, 111, "/downloads/Miniscule Season 2/2020-04-02 Minuscule - A pea in the hand is worth ⧸ Deux petits pois deux mesures (Season 2)/Minuscule - A pea in the hand is worth ⧸ Deux petits pois deux mesures (Season 2) [f0xE5_ejBKk].mp4", false, false, false, 5, [], 1, ~U[2020-04-02 16:30:07Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nAn ant builds a pyramid made out out of peas while a fly is having fun destroying the building when it's almost done. But a ladybird is watching...\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A pea in the hand is worth / Deux petits pois deux mesures (Season 2)", "https://www.youtube.com/watch?v=f0xE5_ejBKk", "f0xE5_ejBKk", 122, false, "/downloads/Miniscule Season 2/2020-04-02 Minuscule - A pea in the hand is worth ⧸ Deux petits pois deux mesures (Season 2)/Minuscule - A pea in the hand is worth ⧸ Deux petits pois deux mesures (Season 2) [f0xE5_ejBKk].mp4", false, 5, ~U[2020-04-02 16:30:07Z]] 22:57:49.348 [debug] QUERY OK source="sources" db=0.5ms idle=9.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" = ?) [5] 22:57:49.350 [debug] QUERY OK source="media_items" db=1.0ms idle=7.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-03-26 17:30:00Z], 5] 22:57:49.353 [debug] QUERY OK source="media_items" db=2.3ms idle=8.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA chubby caterpillar makes this recurring nightmare: each time she becomes a butterfly and leaves her cocoon, the worst catastrophes occur. Terrified, she decides to never again leave her cocoon.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A butterfly nightmare / Cauchemar du papillon (Season 2)", "f12b4dcd-bc16-4164-a28e-69c659fde198", "https://www.youtube.com/watch?v=I8ln-GKhbKI", "I8ln-GKhbKI", 265, false, 112, "/downloads/Miniscule Season 2/2020-03-26 Minuscule - A butterfly nightmare ⧸ Cauchemar du papillon (Season 2)/Minuscule - A butterfly nightmare ⧸ Cauchemar du papillon (Season 2) [I8ln-GKhbKI].mkv", false, false, false, 5, [], 1, ~U[2020-03-26 17:30:00Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA chubby caterpillar makes this recurring nightmare: each time she becomes a butterfly and leaves her cocoon, the worst catastrophes occur. Terrified, she decides to never again leave her cocoon.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A butterfly nightmare / Cauchemar du papillon (Season 2)", "https://www.youtube.com/watch?v=I8ln-GKhbKI", "I8ln-GKhbKI", 265, false, "/downloads/Miniscule Season 2/2020-03-26 Minuscule - A butterfly nightmare ⧸ Cauchemar du papillon (Season 2)/Minuscule - A butterfly nightmare ⧸ Cauchemar du papillon (Season 2) [I8ln-GKhbKI].mkv", false, 5, ~U[2020-03-26 17:30:00Z]] 22:57:49.354 [debug] QUERY OK source="sources" db=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:49.355 [debug] QUERY OK source="media_items" db=0.9ms idle=7.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-03-19 15:30:03Z], 5] 22:57:49.359 [debug] QUERY OK source="media_items" db=2.0ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA mosquito swatted by a man in bed has the last laugh.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Flyswatter / Tapette (Season 2)", "0c52103d-081d-4b0b-abca-752e9af06f3d", "https://www.youtube.com/watch?v=x7rIT6Thn0k", "x7rIT6Thn0k", 119, false, 113, "/downloads/Miniscule Season 2/2020-03-19 Minuscule - Flyswatter ⧸ Tapette (Season 2)/Minuscule - Flyswatter ⧸ Tapette (Season 2) [x7rIT6Thn0k].mp4", false, false, false, 5, [], 1, ~U[2020-03-19 15:30:03Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA mosquito swatted by a man in bed has the last laugh.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Flyswatter / Tapette (Season 2)", "https://www.youtube.com/watch?v=x7rIT6Thn0k", "x7rIT6Thn0k", 119, false, "/downloads/Miniscule Season 2/2020-03-19 Minuscule - Flyswatter ⧸ Tapette (Season 2)/Minuscule - Flyswatter ⧸ Tapette (Season 2) [x7rIT6Thn0k].mp4", false, 5, ~U[2020-03-19 15:30:03Z]] 22:57:49.360 [debug] QUERY OK source="sources" db=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:49.361 [debug] QUERY OK source="media_items" db=0.9ms idle=7.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-03-12 15:30:01Z], 5] 22:57:49.364 [debug] QUERY OK source="media_items" db=2.0ms idle=7.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Telecanetic (Season 2)", "be91cd88-726a-4cf3-9360-bba2db93b140", "https://www.youtube.com/watch?v=aDfIX_Lk96c", "aDfIX_Lk96c", 119, false, 114, "/downloads/Miniscule Season 2/2020-03-12 Minuscule - Telecanetic (Season 2)/Minuscule - Telecanetic (Season 2) [aDfIX_Lk96c].mp4", false, false, false, 5, [], 1, ~U[2020-03-12 15:30:01Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Telecanetic (Season 2)", "https://www.youtube.com/watch?v=aDfIX_Lk96c", "aDfIX_Lk96c", 119, false, "/downloads/Miniscule Season 2/2020-03-12 Minuscule - Telecanetic (Season 2)/Minuscule - Telecanetic (Season 2) [aDfIX_Lk96c].mp4", false, 5, ~U[2020-03-12 15:30:01Z]] 22:57:49.365 [debug] QUERY OK source="sources" db=0.4ms 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" = ?) [5] 22:57:49.367 [debug] QUERY OK source="media_items" db=0.8ms idle=7.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-03-05 15:30:00Z], 5] 22:57:49.370 [debug] QUERY OK source="media_items" db=2.1ms idle=7.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA butterfly flutters happily above the fields, but with an innocent flap of its wings, it is going to provoke an incredible chain reaction.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The butterfly effect / L'effet papillon (Season 2)", "29ee766b-b120-4250-8600-820adca7e5f0", "https://www.youtube.com/watch?v=EgRwTI6Q7qw", "EgRwTI6Q7qw", 271, false, 115, "/downloads/Miniscule Season 2/2020-03-05 Minuscule - The butterfly effect ⧸ L'effet papillon (Season 2)/Minuscule - The butterfly effect ⧸ L'effet papillon (Season 2) [EgRwTI6Q7qw].mp4", false, false, false, 5, [], 1, ~U[2020-03-05 15:30:00Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA butterfly flutters happily above the fields, but with an innocent flap of its wings, it is going to provoke an incredible chain reaction.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The butterfly effect / L'effet papillon (Season 2)", "https://www.youtube.com/watch?v=EgRwTI6Q7qw", "EgRwTI6Q7qw", 271, false, "/downloads/Miniscule Season 2/2020-03-05 Minuscule - The butterfly effect ⧸ L'effet papillon (Season 2)/Minuscule - The butterfly effect ⧸ L'effet papillon (Season 2) [EgRwTI6Q7qw].mp4", false, 5, ~U[2020-03-05 15:30:00Z]] 22:57:49.371 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=8.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" = ?) [5] 22:57:49.372 [debug] QUERY OK source="media_items" db=0.9ms idle=7.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-02-27 15:30:02Z], 5] 22:57:49.375 [debug] QUERY OK source="media_items" db=2.0ms idle=7.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA spider decides to add his own special touch to an Artist's work.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary!\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook: http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The artist / L'artiste (Season 2)", "9414da87-60c3-4c52-9616-96ba03239ec2", "https://www.youtube.com/watch?v=zNrfH2YFABg", "zNrfH2YFABg", 135, false, 116, "/downloads/Miniscule Season 2/2020-02-27 Minuscule - The artist ⧸ L'artiste (Season 2)/Minuscule - The artist ⧸ L'artiste (Season 2) [zNrfH2YFABg].mp4", false, false, false, 5, [], 1, ~U[2020-02-27 15:30:02Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA spider decides to add his own special touch to an Artist's work.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary!\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook: http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The artist / L'artiste (Season 2)", "https://www.youtube.com/watch?v=zNrfH2YFABg", "zNrfH2YFABg", 135, false, "/downloads/Miniscule Season 2/2020-02-27 Minuscule - The artist ⧸ L'artiste (Season 2)/Minuscule - The artist ⧸ L'artiste (Season 2) [zNrfH2YFABg].mp4", false, 5, ~U[2020-02-27 15:30:02Z]] 22:57:49.376 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 22:57:49.377 [debug] QUERY OK source="media_items" db=0.8ms idle=6.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-02-20 15:30:04Z], 5] 22:57:49.385 [debug] QUERY OK source="media_items" db=7.4ms idle=6.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nThe mean red ants manage to steal every last bit of food at a barbecue. Will a motley crew of other insects manage to get the food back?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Sausage predator / Saucisse predator (Season 2)", "59d6f762-5bd2-480a-93f3-2cf6f579d443", "https://www.youtube.com/watch?v=dVSOJResov4", "dVSOJResov4", 294, false, 117, "/downloads/Miniscule Season 2/2020-02-20 Minuscule - Sausage predator ⧸ Saucisse predator (Season 2)/Minuscule - Sausage predator ⧸ Saucisse predator (Season 2) [dVSOJResov4].mp4", false, false, false, 5, [], 1, ~U[2020-02-20 15:30:04Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nThe mean red ants manage to steal every last bit of food at a barbecue. Will a motley crew of other insects manage to get the food back?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Sausage predator / Saucisse predator (Season 2)", "https://www.youtube.com/watch?v=dVSOJResov4", "dVSOJResov4", 294, false, "/downloads/Miniscule Season 2/2020-02-20 Minuscule - Sausage predator ⧸ Saucisse predator (Season 2)/Minuscule - Sausage predator ⧸ Saucisse predator (Season 2) [dVSOJResov4].mp4", false, 5, ~U[2020-02-20 15:30:04Z]] 22:57:49.386 [debug] QUERY OK source="sources" db=0.4ms idle=13.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" = ?) [5] 22:57:49.387 [debug] QUERY OK source="media_items" db=0.8ms idle=11.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2017-10-02 15:00:06Z], 5] 22:57:49.391 [debug] QUERY OK source="media_items" db=2.8ms queue=0.1ms idle=11.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n*** \n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Compilation #8", "782f62ea-e985-473a-b068-8b74151e6402", "https://www.youtube.com/watch?v=_WJlo33fRUg", "_WJlo33fRUg", 1690, false, 118, "/downloads/Miniscule Season 2/2017-10-02 Minuscule - Compilation #8/Minuscule - Compilation #8 [_WJlo33fRUg].mp4", false, false, false, 5, [], 1, ~U[2017-10-02 15:00:06Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n*** \n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Compilation #8", "https://www.youtube.com/watch?v=_WJlo33fRUg", "_WJlo33fRUg", 1690, false, "/downloads/Miniscule Season 2/2017-10-02 Minuscule - Compilation #8/Minuscule - Compilation #8 [_WJlo33fRUg].mp4", false, 5, ~U[2017-10-02 15:00:06Z]] 22:57:49.392 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=14.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" = ?) [5] 22:57:49.394 [debug] QUERY OK source="media_items" db=0.9ms idle=7.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-02-13 15:30:02Z], 5] 22:57:49.397 [debug] QUERY OK source="media_items" db=2.1ms idle=8.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA reckless and macho butterfly is interested in a female butterfly that is sitting on a crossroad sign. But between the butterfly and its ladylove: a road with very dense traffic.\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Hop on! / Hop là! (Season 2)", "212629a6-ad6e-4653-9b5f-a20a69675525", "https://www.youtube.com/watch?v=QDvHirWhvK8", "QDvHirWhvK8", 286, false, 119, "/downloads/Miniscule Season 2/2020-02-13 Minuscule - Hop on! ⧸ Hop là! (Season 2)/Minuscule - Hop on! ⧸ Hop là! (Season 2) [QDvHirWhvK8].mp4", false, false, false, 5, [], 1, ~U[2020-02-13 15:30:02Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA reckless and macho butterfly is interested in a female butterfly that is sitting on a crossroad sign. But between the butterfly and its ladylove: a road with very dense traffic.\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Hop on! / Hop là! (Season 2)", "https://www.youtube.com/watch?v=QDvHirWhvK8", "QDvHirWhvK8", 286, false, "/downloads/Miniscule Season 2/2020-02-13 Minuscule - Hop on! ⧸ Hop là! (Season 2)/Minuscule - Hop on! ⧸ Hop là! (Season 2) [QDvHirWhvK8].mp4", false, 5, ~U[2020-02-13 15:30:02Z]] 22:57:49.398 [debug] QUERY OK source="sources" db=0.4ms idle=10.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" = ?) [5] 22:57:49.399 [debug] QUERY OK source="media_items" db=0.9ms idle=7.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-02-06 15:30:04Z], 5] 22:57:49.403 [debug] QUERY OK source="media_items" db=2.0ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA huge net prevents a group of mosquitoes from reaching a potential victim. Will one mosquito manage to breach the net?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Mosquito net / Moustiquaire (Season 2)", "407ea509-2fa3-4fe6-a094-42750fad0e92", "https://www.youtube.com/watch?v=rK-QYWVVx3Y", "rK-QYWVVx3Y", 119, false, 120, "/downloads/Miniscule Season 2/2020-02-06 Minuscule - Mosquito net ⧸ Moustiquaire (Season 2)/Minuscule - Mosquito net ⧸ Moustiquaire (Season 2) [rK-QYWVVx3Y].mp4", false, false, false, 5, [], 1, ~U[2020-02-06 15:30:04Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA huge net prevents a group of mosquitoes from reaching a potential victim. Will one mosquito manage to breach the net?\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Mosquito net / Moustiquaire (Season 2)", "https://www.youtube.com/watch?v=rK-QYWVVx3Y", "rK-QYWVVx3Y", 119, false, "/downloads/Miniscule Season 2/2020-02-06 Minuscule - Mosquito net ⧸ Moustiquaire (Season 2)/Minuscule - Mosquito net ⧸ Moustiquaire (Season 2) [rK-QYWVVx3Y].mp4", false, 5, ~U[2020-02-06 15:30:04Z]] 22:57:49.403 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 22:57:49.405 [debug] QUERY OK source="media_items" db=1.0ms queue=0.3ms idle=7.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-01-30 15:30:04Z], 5] 22:57:49.408 [debug] QUERY OK source="media_items" db=2.0ms idle=7.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nFlies in a red toy bus and a spider in a yellow toy car have an exciting race.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Mad fly / Mad mouche (Season 2)", "1b53c2f0-3dd0-48d0-8a51-53e031d563a7", "https://www.youtube.com/watch?v=sK3l9nOuyDs", "sK3l9nOuyDs", 119, false, 121, "/downloads/Miniscule Season 2/2020-01-30 Minuscule - Mad fly ⧸ Mad mouche (Season 2)/Minuscule - Mad fly ⧸ Mad mouche (Season 2) [sK3l9nOuyDs].mp4", false, false, false, 5, [], 1, ~U[2020-01-30 15:30:04Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nFlies in a red toy bus and a spider in a yellow toy car have an exciting race.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Mad fly / Mad mouche (Season 2)", "https://www.youtube.com/watch?v=sK3l9nOuyDs", "sK3l9nOuyDs", 119, false, "/downloads/Miniscule Season 2/2020-01-30 Minuscule - Mad fly ⧸ Mad mouche (Season 2)/Minuscule - Mad fly ⧸ Mad mouche (Season 2) [sK3l9nOuyDs].mp4", false, 5, ~U[2020-01-30 15:30:04Z]] 22:57:49.409 [debug] QUERY OK source="sources" db=0.4ms 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" = ?) [5] 22:57:49.410 [debug] QUERY OK source="media_items" db=0.9ms idle=7.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-01-23 15:30:00Z], 5] 22:57:49.413 [debug] QUERY OK source="media_items" db=1.9ms idle=7.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Honey fly / Mouche à miel (Season 2)", "7c095c29-7469-4d01-82f9-025c57175c2d", "https://www.youtube.com/watch?v=AkyZVhpGpvY", "AkyZVhpGpvY", 299, false, 122, "/downloads/Miniscule Season 2/2020-01-23 Minuscule - Honey fly ⧸ Mouche à miel (Season 2)/Minuscule - Honey fly ⧸ Mouche à miel (Season 2) [AkyZVhpGpvY].mp4", false, false, false, 5, [], 1, ~U[2020-01-23 15:30:00Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Honey fly / Mouche à miel (Season 2)", "https://www.youtube.com/watch?v=AkyZVhpGpvY", "AkyZVhpGpvY", 299, false, "/downloads/Miniscule Season 2/2020-01-23 Minuscule - Honey fly ⧸ Mouche à miel (Season 2)/Minuscule - Honey fly ⧸ Mouche à miel (Season 2) [AkyZVhpGpvY].mp4", false, 5, ~U[2020-01-23 15:30:00Z]] 22:57:49.414 [debug] QUERY OK source="sources" db=0.7ms idle=8.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" = ?) [5] 22:57:49.416 [debug] QUERY OK source="media_items" db=0.9ms idle=7.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-01-16 15:30:01Z], 5] 22:57:49.419 [debug] QUERY OK source="media_items" db=2.1ms idle=6.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA frantic pursuit between flies and a ladybug. Same old, same old. Except that today, the ladybug is as big as a football, and a gang of huge ladybugs is flying along as back-ups. The flies had better behave.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Fly hunting / Chasse à mouche (Season 2)", "3ea79074-10bc-403d-b611-91bc6611e2fc", "https://www.youtube.com/watch?v=T3IcOeZuKHo", "T3IcOeZuKHo", 282, false, 123, "/downloads/Miniscule Season 2/2020-01-16 Minuscule - Fly hunting ⧸ Chasse à mouche (Season 2)/Minuscule - Fly hunting ⧸ Chasse à mouche (Season 2) [T3IcOeZuKHo].mp4", false, false, false, 5, [], 1, ~U[2020-01-16 15:30:01Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nA frantic pursuit between flies and a ladybug. Same old, same old. Except that today, the ladybug is as big as a football, and a gang of huge ladybugs is flying along as back-ups. The flies had better behave.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Fly hunting / Chasse à mouche (Season 2)", "https://www.youtube.com/watch?v=T3IcOeZuKHo", "T3IcOeZuKHo", 282, false, "/downloads/Miniscule Season 2/2020-01-16 Minuscule - Fly hunting ⧸ Chasse à mouche (Season 2)/Minuscule - Fly hunting ⧸ Chasse à mouche (Season 2) [T3IcOeZuKHo].mp4", false, 5, ~U[2020-01-16 15:30:01Z]] 22:57:49.420 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 22:57:49.421 [debug] QUERY OK source="media_items" db=0.9ms idle=7.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-01-09 15:30:00Z], 5] 22:57:49.424 [debug] QUERY OK source="media_items" db=2.1ms idle=7.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nAn ant is carrying a crisp, which wasps soon snatch. After a mad race and a bad fall, our little bug wakes up in a strange universe, where crisps are actually alive.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Patatas fritas (Season 2)", "e20fa087-c4d0-41fa-bf1d-a9f4951c568d", "https://www.youtube.com/watch?v=1eojPRKb7bU", "1eojPRKb7bU", 295, false, 124, "/downloads/Miniscule Season 2/2020-01-09 Minuscule - Patatas fritas (Season 2)/Minuscule - Patatas fritas (Season 2) [1eojPRKb7bU].mp4", false, false, false, 5, [], 1, ~U[2020-01-09 15:30:00Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nAn ant is carrying a crisp, which wasps soon snatch. After a mad race and a bad fall, our little bug wakes up in a strange universe, where crisps are actually alive.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Patatas fritas (Season 2)", "https://www.youtube.com/watch?v=1eojPRKb7bU", "1eojPRKb7bU", 295, false, "/downloads/Miniscule Season 2/2020-01-09 Minuscule - Patatas fritas (Season 2)/Minuscule - Patatas fritas (Season 2) [1eojPRKb7bU].mp4", false, 5, ~U[2020-01-09 15:30:00Z]] 22:57:49.425 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 22:57:49.427 [debug] QUERY OK source="media_items" db=1.0ms idle=7.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2020-01-02 15:30:02Z], 5] 22:57:49.430 [debug] QUERY OK source="media_items" db=2.1ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn the snowy mountains, a small black spider finds it hard to carry a huge pine cone. She decides to build a suitable means of transportation.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The sled and the ant / La luge et la fourmi (Season 2)", "ef98d137-bbad-468f-8203-5262e62c1169", "https://www.youtube.com/watch?v=hJclg-5FVEw", "hJclg-5FVEw", 119, false, 125, "/downloads/Miniscule Season 2/2020-01-02 Minuscule - The sled and the ant ⧸ La luge et la fourmi (Season 2)/Minuscule - The sled and the ant ⧸ La luge et la fourmi (Season 2) [hJclg-5FVEw].mp4", false, false, false, 5, [], 1, ~U[2020-01-02 15:30:02Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nIn the snowy mountains, a small black spider finds it hard to carry a huge pine cone. She decides to build a suitable means of transportation.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The sled and the ant / La luge et la fourmi (Season 2)", "https://www.youtube.com/watch?v=hJclg-5FVEw", "hJclg-5FVEw", 119, false, "/downloads/Miniscule Season 2/2020-01-02 Minuscule - The sled and the ant ⧸ La luge et la fourmi (Season 2)/Minuscule - The sled and the ant ⧸ La luge et la fourmi (Season 2) [hJclg-5FVEw].mp4", false, 5, ~U[2020-01-02 15:30:02Z]] 22:57:49.431 [debug] QUERY OK source="sources" db=0.4ms idle=9.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" = ?) [5] 22:57:49.432 [debug] QUERY OK source="media_items" db=0.9ms idle=7.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2019-12-26 15:30:04Z], 5] 22:57:49.452 [debug] QUERY OK source="media_items" db=18.4ms idle=8.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nWasps pinch a carrot from a snowman and unwittingly annoy a centipede.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Brooms sweep / Coup de balais (Season 2)", "c98fd11d-ad7c-4ef2-b58c-2530b50e2c1e", "https://www.youtube.com/watch?v=nQ1-1C4Be_E", "nQ1-1C4Be_E", 119, false, 126, "/downloads/Miniscule Season 2/2019-12-26 Minuscule - Brooms sweep ⧸ Coup de balais (Season 2)/Minuscule - Brooms sweep ⧸ Coup de balais (Season 2) [nQ1-1C4Be_E].mp4", false, false, false, 5, [], 1, ~U[2019-12-26 15:30:04Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nWasps pinch a carrot from a snowman and unwittingly annoy a centipede.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Brooms sweep / Coup de balais (Season 2)", "https://www.youtube.com/watch?v=nQ1-1C4Be_E", "nQ1-1C4Be_E", 119, false, "/downloads/Miniscule Season 2/2019-12-26 Minuscule - Brooms sweep ⧸ Coup de balais (Season 2)/Minuscule - Brooms sweep ⧸ Coup de balais (Season 2) [nQ1-1C4Be_E].mp4", false, 5, ~U[2019-12-26 15:30:04Z]] 22:57:49.453 [debug] QUERY OK source="sources" db=0.4ms idle=25.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" = ?) [5] 22:57:49.455 [debug] QUERY OK source="media_items" db=1.0ms idle=23.5ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2019-12-05 15:30:02Z], 5] 22:57:49.458 [debug] QUERY OK source="media_items" db=2.3ms idle=23.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nOn a little country road, insects from all over join to watch an annual race. As soon as it starts, these 'wacky racers' will try to do everything they can to arrive first.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - At full speed / à Toute Berzingue (Season 2)", "b71b5971-3b17-4414-9dc6-47a2c6173c52", "https://www.youtube.com/watch?v=Zh10U1WWXHI", "Zh10U1WWXHI", 292, false, 129, "/downloads/Miniscule Season 2/2019-12-05 Minuscule - At full speed ⧸ à Toute Berzingue (Season 2)/Minuscule - At full speed ⧸ à Toute Berzingue (Season 2) [Zh10U1WWXHI].mp4", false, false, false, 5, [], 1, ~U[2019-12-05 15:30:02Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "ABONNEZ-VOUS ICI / SUBSCRIBE HERE : http://bit.ly/1cPzvQP \n\nOn a little country road, insects from all over join to watch an annual race. As soon as it starts, these 'wacky racers' will try to do everything they can to arrive first.\n\n---\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - At full speed / à Toute Berzingue (Season 2)", "https://www.youtube.com/watch?v=Zh10U1WWXHI", "Zh10U1WWXHI", 292, false, "/downloads/Miniscule Season 2/2019-12-05 Minuscule - At full speed ⧸ à Toute Berzingue (Season 2)/Minuscule - At full speed ⧸ à Toute Berzingue (Season 2) [Zh10U1WWXHI].mp4", false, 5, ~U[2019-12-05 15:30:02Z]] 22:57:49.461 [debug] QUERY OK source="sources" db=0.5ms 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" = ?) [5] 22:57:49.463 [debug] QUERY OK source="media_items" db=1.1ms idle=9.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2014-12-19 17:29:32Z], 5] 22:57:49.466 [debug] QUERY OK source="media_items" db=2.0ms idle=9.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Minuscule - A Christmas Apple / La Pomme de Noël (Season 2)\n\n--\nABONNEZ-VOUS ICI / SUBSCRIBE HERE : \nhttp://bit.ly/1cPzvQP\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A Christmas Apple / La Pomme de Noël (Season 2)", "df678cfc-9a14-47c0-a77b-ff2ad2a93353", "https://www.youtube.com/watch?v=-wL4RbkOT1o", "-wL4RbkOT1o", 139, false, 160, "/downloads/Miniscule Season 2/2014-12-19 Minuscule - A Christmas Apple ⧸ La Pomme de Noël (Season 2)/Minuscule - A Christmas Apple ⧸ La Pomme de Noël (Season 2) [-wL4RbkOT1o].mp4", false, false, false, 5, [], 1, ~U[2014-12-19 17:29:32Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "Minuscule - A Christmas Apple / La Pomme de Noël (Season 2)\n\n--\nABONNEZ-VOUS ICI / SUBSCRIBE HERE : \nhttp://bit.ly/1cPzvQP\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - A Christmas Apple / La Pomme de Noël (Season 2)", "https://www.youtube.com/watch?v=-wL4RbkOT1o", "-wL4RbkOT1o", 139, false, "/downloads/Miniscule Season 2/2014-12-19 Minuscule - A Christmas Apple ⧸ La Pomme de Noël (Season 2)/Minuscule - A Christmas Apple ⧸ La Pomme de Noël (Season 2) [-wL4RbkOT1o].mp4", false, 5, ~U[2014-12-19 17:29:32Z]] 22:57:49.466 [debug] QUERY OK source="sources" db=0.4ms idle=11.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" = ?) [5] 22:57:49.468 [debug] QUERY OK source="media_items" db=1.0ms idle=9.0ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2016-11-14 15:50:12Z], 5] 22:57:49.473 [debug] QUERY OK source="media_items" db=2.9ms idle=7.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Compilation #2", "dc88901a-0a17-4737-b8b0-dd3ff3cfc989", "https://www.youtube.com/watch?v=C35BATa1Dp4", "C35BATa1Dp4", 861, false, 162, "/downloads/Miniscule Season 2/2016-11-14 Minuscule - Compilation #2/Minuscule - Compilation #2 [C35BATa1Dp4].mkv", false, false, false, 5, [], 1, ~U[2016-11-14 15:50:12Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Compilation #2", "https://www.youtube.com/watch?v=C35BATa1Dp4", "C35BATa1Dp4", 861, false, "/downloads/Miniscule Season 2/2016-11-14 Minuscule - Compilation #2/Minuscule - Compilation #2 [C35BATa1Dp4].mkv", false, 5, ~U[2016-11-14 15:50:12Z]] 22:57:49.474 [debug] QUERY OK source="sources" db=0.4ms idle=10.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" = ?) [5] 22:57:49.475 [debug] QUERY OK source="media_items" db=0.9ms idle=9.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2014-11-03 13:56:28Z], 5] 22:57:49.479 [debug] QUERY OK source="media_items" db=2.7ms idle=9.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Top Tabasco (Season 2)", "f58f921b-45bf-474d-ae7f-f597ad66694f", "https://www.youtube.com/watch?v=T4qDSRIlR78", "T4qDSRIlR78", 306, false, 167, "/downloads/Miniscule Season 2/2014-11-03 Minuscule - Top Tabasco (Season 2)/Minuscule - Top Tabasco (Season 2) [T4qDSRIlR78].mp4", false, false, false, 5, [], 1, ~U[2014-11-03 13:56:28Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Top Tabasco (Season 2)", "https://www.youtube.com/watch?v=T4qDSRIlR78", "T4qDSRIlR78", 306, false, "/downloads/Miniscule Season 2/2014-11-03 Minuscule - Top Tabasco (Season 2)/Minuscule - Top Tabasco (Season 2) [T4qDSRIlR78].mp4", false, 5, ~U[2014-11-03 13:56:28Z]] 22:57:49.480 [debug] QUERY OK source="sources" db=0.4ms idle=11.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" = ?) [5] 22:57:49.481 [debug] QUERY OK source="media_items" db=0.9ms idle=8.4ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2017-12-24 15:00:04Z], 5] 22:57:49.485 [debug] QUERY OK source="media_items" db=1.8ms idle=8.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Join Minuscule on Facebook and Instagram :\n Facebook: https://www.facebook.com/minusculefilm/\nInstagram: https://www.instagram.com/minuscule.officiel/\n\nMinuscule - C'est Noël / Come Christmas - ABONNEZ-VOUS ICI / SUBSCRIBE HERE : \nhttp://bit.ly/1cPzvQP\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l'impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d'insectes en images de synthèse. #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - C'est Noël / Come Christmas (Season 1)", "b01bdaa8-1f5b-4102-8788-983f217cc58a", "https://www.youtube.com/watch?v=wjiQFluWuv0", "wjiQFluWuv0", 463, false, 170, "/downloads/Miniscule Season 2/2017-12-24 Minuscule - C'est Noël ⧸ Come Christmas (Season 1)/Minuscule - C'est Noël ⧸ Come Christmas (Season 1) [wjiQFluWuv0].mp4", false, false, false, 5, [], 1, ~U[2017-12-24 15:00:04Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "Join Minuscule on Facebook and Instagram :\n Facebook: https://www.facebook.com/minusculefilm/\nInstagram: https://www.instagram.com/minuscule.officiel/\n\nMinuscule - C'est Noël / Come Christmas - ABONNEZ-VOUS ICI / SUBSCRIBE HERE : \nhttp://bit.ly/1cPzvQP\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l'impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d'insectes en images de synthèse. #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - C'est Noël / Come Christmas (Season 1)", "https://www.youtube.com/watch?v=wjiQFluWuv0", "wjiQFluWuv0", 463, false, "/downloads/Miniscule Season 2/2017-12-24 Minuscule - C'est Noël ⧸ Come Christmas (Season 1)/Minuscule - C'est Noël ⧸ Come Christmas (Season 1) [wjiQFluWuv0].mp4", false, 5, ~U[2017-12-24 15:00:04Z]] 22:57:49.486 [debug] QUERY OK source="sources" db=0.3ms idle=9.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" = ?) [5] 22:57:49.487 [debug] QUERY OK source="media_items" db=0.9ms idle=7.7ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2017-07-19 15:00:05Z], 5] 22:57:49.490 [debug] QUERY OK source="media_items" db=1.8ms idle=7.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["Join Minuscule on Facebook and Instagram:\nFacebook: https://www.facebook.com/minusculefilm/\nInstagram: https://www.instagram.com/minuscule.officiel/\n--\nABONNEZ-VOUS ICI / SUBSCRIBE HERE: \nhttp://bit.ly/1cPzvQP\n\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l'impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d'insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Bananes / Bananas (Season 1)", "312bdf66-1bab-4cc6-bd24-e1ddb81c9ad2", "https://www.youtube.com/watch?v=_NY3vidqHpo", "_NY3vidqHpo", 443, false, 173, "/downloads/Miniscule Season 2/2017-07-19 Minuscule - Bananes ⧸ Bananas (Season 1)/Minuscule - Bananes ⧸ Bananas (Season 1) [_NY3vidqHpo].mp4", false, false, false, 5, [], 1, ~U[2017-07-19 15:00:05Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "Join Minuscule on Facebook and Instagram:\nFacebook: https://www.facebook.com/minusculefilm/\nInstagram: https://www.instagram.com/minuscule.officiel/\n--\nABONNEZ-VOUS ICI / SUBSCRIBE HERE: \nhttp://bit.ly/1cPzvQP\n\n\nThe official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l'impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d'insectes en images de synthèse.\n\nFacebook : http://on.fb.me/1draLOR #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Bananes / Bananas (Season 1)", "https://www.youtube.com/watch?v=_NY3vidqHpo", "_NY3vidqHpo", 443, false, "/downloads/Miniscule Season 2/2017-07-19 Minuscule - Bananes ⧸ Bananas (Season 1)/Minuscule - Bananes ⧸ Bananas (Season 1) [_NY3vidqHpo].mp4", false, 5, ~U[2017-07-19 15:00:05Z]] 22:57:49.491 [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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 22:57:49.492 [debug] QUERY OK source="media_items" db=0.9ms idle=7.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2016-08-30 14:14:11Z], 5] 22:57:49.497 [debug] QUERY OK source="media_items" db=2.8ms idle=7.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Go blue go! / Allez les bleus! (Season 2)", "b6cc7fac-2f18-46fe-be31-b08e874ee1c3", "https://www.youtube.com/watch?v=5Yx-ZghdZJ0", "5Yx-ZghdZJ0", 290, false, 179, "/downloads/Miniscule Season 2/2016-08-30 Minuscule - Go blue go! ⧸ Allez les bleus! (Season 2)/Minuscule - Go blue go! ⧸ Allez les bleus! (Season 2) [5Yx-ZghdZJ0].mp4", false, false, false, 5, [], 1, ~U[2016-08-30 14:14:11Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Go blue go! / Allez les bleus! (Season 2)", "https://www.youtube.com/watch?v=5Yx-ZghdZJ0", "5Yx-ZghdZJ0", 290, false, "/downloads/Miniscule Season 2/2016-08-30 Minuscule - Go blue go! ⧸ Allez les bleus! (Season 2)/Minuscule - Go blue go! ⧸ Allez les bleus! (Season 2) [5Yx-ZghdZJ0].mp4", false, 5, ~U[2016-08-30 14:14:11Z]] 22:57:49.499 [debug] QUERY OK source="sources" db=0.4ms idle=10.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" = ?) [5] 22:57:49.500 [debug] QUERY OK source="media_items" db=1.3ms idle=9.1ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2016-08-19 08:58:34Z], 5] 22:57:49.505 [debug] QUERY OK source="media_items" db=3.4ms idle=9.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n*** \n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Romeo & Antiet / Roméo & fourmi (Season 2)", "3db72486-7261-450d-a8cb-2b5f52fe360a", "https://www.youtube.com/watch?v=PK2A3ZK5ys0", "PK2A3ZK5ys0", 759, false, 182, "/downloads/Miniscule Season 2/2016-08-19 Minuscule - Romeo & Antiet ⧸ Roméo & fourmi (Season 2)/Minuscule - Romeo & Antiet ⧸ Roméo & fourmi (Season 2) [PK2A3ZK5ys0].mkv", false, false, false, 5, [], 1, ~U[2016-08-19 08:58:34Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n*** \n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Romeo & Antiet / Roméo & fourmi (Season 2)", "https://www.youtube.com/watch?v=PK2A3ZK5ys0", "PK2A3ZK5ys0", 759, false, "/downloads/Miniscule Season 2/2016-08-19 Minuscule - Romeo & Antiet ⧸ Roméo & fourmi (Season 2)/Minuscule - Romeo & Antiet ⧸ Roméo & fourmi (Season 2) [PK2A3ZK5ys0].mkv", false, 5, ~U[2016-08-19 08:58:34Z]] 22:57:49.506 [debug] QUERY OK source="sources" db=0.5ms idle=13.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" = ?) [5] 22:57:49.508 [debug] QUERY OK source="media_items" db=1.0ms idle=10.6ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2016-03-21 09:49:02Z], 5] 22:57:49.512 [debug] QUERY OK source="media_items" db=2.7ms idle=10.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Love Apple / Pomme d'Amour (saison 2)", "03c6a3b8-5282-4c74-96ef-ffdaee0dcbd3", "https://www.youtube.com/watch?v=4XCsQv48wfg", "4XCsQv48wfg", 296, false, 190, "/downloads/Miniscule Season 2/2016-03-21 Minuscule - Love Apple ⧸ Pomme d'Amour (saison 2)/Minuscule - Love Apple ⧸ Pomme d'Amour (saison 2) [4XCsQv48wfg].mp4", false, false, false, 5, [], 1, ~U[2016-03-21 09:49:02Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019.\n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Love Apple / Pomme d'Amour (saison 2)", "https://www.youtube.com/watch?v=4XCsQv48wfg", "4XCsQv48wfg", 296, false, "/downloads/Miniscule Season 2/2016-03-21 Minuscule - Love Apple ⧸ Pomme d'Amour (saison 2)/Minuscule - Love Apple ⧸ Pomme d'Amour (saison 2) [4XCsQv48wfg].mp4", false, 5, ~U[2016-03-21 09:49:02Z]] 22:57:49.514 [debug] QUERY OK source="sources" db=0.4ms idle=12.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" = ?) [5] 22:57:49.515 [debug] QUERY OK source="media_items" db=0.8ms idle=9.8ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2015-02-12 16:10:51Z], 5] 22:57:49.519 [debug] QUERY OK source="media_items" db=2.7ms idle=9.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Valentine's Day / La Saint Valentin (Season 2)", "fee1be57-23d8-4cde-9835-215a6f5f31f5", "https://www.youtube.com/watch?v=diIkW1_XW4A", "diIkW1_XW4A", 273, false, 195, "/downloads/Miniscule Season 2/2015-02-12 Minuscule - Valentine's Day ⧸ La Saint Valentin (Season 2)/Minuscule - Valentine's Day ⧸ La Saint Valentin (Season 2) [diIkW1_XW4A].mp4", false, false, false, 5, [], 1, ~U[2015-02-12 16:10:51Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - Valentine's Day / La Saint Valentin (Season 2)", "https://www.youtube.com/watch?v=diIkW1_XW4A", "diIkW1_XW4A", 273, false, "/downloads/Miniscule Season 2/2015-02-12 Minuscule - Valentine's Day ⧸ La Saint Valentin (Season 2)/Minuscule - Valentine's Day ⧸ La Saint Valentin (Season 2) [diIkW1_XW4A].mp4", false, 5, ~U[2015-02-12 16:10:51Z]] 22:57:49.520 [debug] QUERY OK source="sources" db=1.1ms idle=10.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" = ?) [5] 22:57:49.522 [debug] QUERY OK source="media_items" db=0.9ms idle=9.2ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2014-11-14 18:31:41Z], 5] 22:57:49.526 [debug] QUERY OK source="media_items" db=2.7ms idle=8.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","original_url","media_id","duration_seconds","livestream","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" = ?, "original_url" = ?, "media_id" = ?, "duration_seconds" = ?, "livestream" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The Ants / Les Fourmis (Season 2)", "cc8cebcc-60c9-42c1-b4b2-8830563f59b7", "https://www.youtube.com/watch?v=AGek0XLmbLI", "AGek0XLmbLI", 368, false, 197, "/downloads/Miniscule Season 2/2014-11-14 Minuscule - The Ants ⧸ Les Fourmis (Season 2)/Minuscule - The Ants ⧸ Les Fourmis (Season 2) [AGek0XLmbLI].mp4", false, false, false, 5, [], 1, ~U[2014-11-14 18:31:41Z], ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], "The official channel of the cartoon and the movie Minuscule. \n\nMINUSCULE revolves around the day-to-day existence of insects which are presented in burlesque situations, with a fair amount of philosophical contemplation thrown in. A cross between a Tex Avery cartoon and a National Geographic documentary !\n\nLa chaîne officielle de la série et du film Minuscule. \n\nBurlesque, décalée et poétique, Minuscule est une rencontre improbable entre Microcosmos et Tex Avery. \nCe docu-cartoon qui cultive l’impertinence et multiplie les références cinématographiques, dépeint dans des décors réels les aventures délirantes d’insectes en images de synthèse.\n\n***\n\nMinuscule: Mandibles From Far Away is back in France on DVD & Blu-ray on May 2, 2019. \n\nMinuscule: Les Mandibules du Bout du Monde sera de retour en France en Blu-ray & DVD le 02/05/2019. \n\n***\n\nCheck out MINUSCULE AR, the Augmented Reality video game of Minuscule’s world. \n\niOS: https://itunes.apple.com/app/id1449705783 \nGOOGLE PLAY : https://play.google.com/store/apps/details?id=com.Novelab.MinusculeAR\n\n***\n\nComposed and orchestrated by Mathieu Lamboley, the soundtrack of Minuscule - Mandibles from Far Away is available on CD on Music Box Records.\n\nhttps://www.musicbox-records.com/fr/cd-musiques-de-films/6816-minuscule-les-mandibules-du-bout-du-monde.html \n\n***\n\nJoin Minuscule on Facebook and Instagram :\nFacebook: https://www.facebook.com/minusculefilm/ \nInstagram: https://www.instagram.com/minuscule.officiel/\n\n***\n\nMinuscule: Mandibles From Far Away !\nCOMING SOON TO A CINEMA NEAR YOU :\n\nFrance : 01/30/2019\nSwitzerland : 01/30/2019\nUAE : 01/31/2019\nQatar : 01/31/19\nBahrain : 01/31/19\nOman : 01/31/2019\nSouth-Korea : 02/14/2019\nLebanon : 02/14/2019\nLithuania : 02/15/2019\nGermany : 02/21/2019\nEgypt : Will be announced\nDenmark : 03/07/2019\nNorway : 03/07/2019\nSweden : 03/15/2019\nPoland : 03/15/2019\nSlovakia : 04/04/2019\nEstonia : 04/05/2019\nLatvia : 04/05/2019\nCzech Republic : 04/18/2019\nFinland : 04/19/2019\nRussia : 05/02/2019\n... #Minuscule #MinusculeVideos #InsectCartoons", "Minuscule - The Ants / Les Fourmis (Season 2)", "https://www.youtube.com/watch?v=AGek0XLmbLI", "AGek0XLmbLI", 368, false, "/downloads/Miniscule Season 2/2014-11-14 Minuscule - The Ants ⧸ Les Fourmis (Season 2)/Minuscule - The Ants ⧸ Les Fourmis (Season 2) [AGek0XLmbLI].mp4", false, 5, ~U[2014-11-14 18:31:41Z]] 22:57:49.527 [debug] QUERY OK source="sources" db=0.3ms idle=11.6ms UPDATE "sources" SET "last_indexed_at" = ?, "updated_at" = ? WHERE "id" = ? [~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z], 5] 22:57:49.529 [debug] QUERY OK source="media_items" db=1.3ms 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" FROM "media_items" AS m0 INNER 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")))) [5] 22:57:49.534 [debug] QUERY OK source="media_items" db=1.1ms idle=8.1ms 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")))) [5] 22:57:49.535 [debug] QUERY OK source="media_items" db=0.2ms idle=7.3ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [5] 22:57:49.535 [info] No notification servers provided for source 5 22:57:49.537 [debug] QUERY OK source="tasks" db=0.3ms idle=4.1ms INSERT INTO "tasks" ("job_id","source_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2982, 5, ~U[2026-01-30 05:57:49Z], ~U[2026-01-30 05:57:49Z]] 22:57:49.537 [info] {"args":{"id":5},"id":2930,"meta":{},"state":"success","max_attempts":20,"queue":"media_collection_indexing","worker":"Pinchflat.SlowIndexing.MediaCollectionIndexingWorker","source":"oban","duration":211658959,"event":"job:stop","queue_time":893766,"attempt":1,"tags":["media_source","media_collection_indexing","show_in_dashboard"]} 22:58:00.970 [info] {"source":"oban","duration":481,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:58:15.871 [info] {"source":"oban","duration":1615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:45.873 [info] {"source":"oban","duration":1504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:57.463 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769752737463481783,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":7,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:58:57.464 [debug] QUERY OK source="media_items" db=0.3ms idle=484.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" = ?) [106309] 22:58:57.464 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:58:57.465 [debug] QUERY OK source="sources" db=0.2ms idle=485.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" = ?) [5] 22:58:57.466 [debug] QUERY OK source="media_profiles" db=0.4ms idle=486.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] 22:58:57.467 [debug] QUERY OK source="media_items" db=0.6ms idle=9.5ms 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 [106309] 22:58:57.468 [debug] QUERY OK source="media_metadata" db=0.1ms idle=4.8ms 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" = ?) [106309] 22:58:57.468 [debug] QUERY OK source="media_profiles" db=0.2ms 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] 22:58:57.469 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:58:57.470 [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 [] 22:58:57.470 [debug] Running yt-dlp command for action: get_downloadable_status 22:58:57.471 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:58:57.471 [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 [] 22:58:57.472 [debug] QUERY OK source="settings" db=0.2ms 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 [] 22:58:57.472 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/12/68/126826c3e3a8e254ab2791dc39b4e44e80ddcc48fc23c45d54a5e2d6f8fe39fd.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:59:00.971 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 22:59:01.302 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/12/68/126826c3e3a8e254ab2791dc39b4e44e80ddcc48fc23c45d54a5e2d6f8fe39fd.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 22:59:01.302 [debug] Running yt-dlp command for action: download 22:59:01.303 [debug] QUERY OK source="settings" db=0.2ms idle=839.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 [] 22:59:01.303 [debug] QUERY OK source="settings" db=0.2ms idle=832.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 [] 22:59:01.304 [debug] QUERY OK source="settings" db=0.1ms idle=332.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 [] 22:59:01.304 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/5c/fa/5cfae8af7d781f59de0ee671c219149a9c0beff5f81a024559232960e54a3d5b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:59:05.638 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/5c/fa/5cfae8af7d781f59de0ee671c219149a9c0beff5f81a024559232960e54a3d5b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 22:59:05.638 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 22:59:05.640 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8175686,"event":"job:exception","queue_time":932083,"attempt":7,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:59:15.875 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:45.877 [info] {"source":"oban","duration":1015,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:00.972 [info] {"source":"oban","duration":283,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:00:15.879 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:45.881 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:00.973 [info] {"source":"oban","duration":303,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:01:15.883 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:37.806 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769752897806507311,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":8,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:01:37.807 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=827.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" = ?) [106309] 23:01:37.808 [info] User scripts lifecyle file either not present or is empty. Skipping. 23:01:37.809 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=829.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" = ?) [5] 23:01:37.810 [debug] QUERY OK source="media_profiles" db=0.5ms idle=830.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] 23:01:37.811 [debug] QUERY OK source="media_items" db=0.6ms 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 [106309] 23:01:37.812 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.8ms 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" = ?) [106309] 23:01:37.813 [debug] QUERY OK source="media_profiles" db=0.4ms idle=4.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] 23:01:37.813 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 23:01:37.814 [debug] QUERY OK source="settings" db=0.1ms idle=4.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 [] 23:01:37.814 [debug] Running yt-dlp command for action: get_downloadable_status 23:01:37.826 [debug] QUERY OK source="settings" db=0.2ms idle=15.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 [] 23:01:37.827 [debug] QUERY OK source="settings" db=0.2ms idle=14.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 [] 23:01:37.827 [debug] QUERY OK source="settings" db=0.3ms 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 [] 23:01:37.828 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/25/a8/25a871018a516db05930817765727dcd4e5c40896343d57bd241d0ab55d02cce.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 23:01:41.758 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/25/a8/25a871018a516db05930817765727dcd4e5c40896343d57bd241d0ab55d02cce.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 23:01:41.758 [debug] Running yt-dlp command for action: download 23:01:41.759 [debug] QUERY OK source="settings" db=0.2ms idle=953.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 [] 23:01:41.759 [debug] QUERY OK source="settings" db=0.2ms idle=947.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 [] 23:01:41.760 [debug] QUERY OK source="settings" db=0.2ms idle=780.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 [] 23:01:41.760 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/b2/a5/b2a5abd8940dd32b1e02c8dae75ed770cbfb5470c1b77c9dad1bff488f7ecea6.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 23:01:45.885 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:45.918 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/b2/a5/b2a5abd8940dd32b1e02c8dae75ed770cbfb5470c1b77c9dad1bff488f7ecea6.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 23:01:45.919 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 23:01:45.920 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8112850,"event":"job:exception","queue_time":165711,"attempt":8,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:02:00.974 [info] {"source":"oban","duration":258,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:02:15.887 [info] {"source":"oban","duration":1143,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:45.889 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:00.975 [info] {"source":"oban","duration":415,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:03:15.891 [info] {"source":"oban","duration":1621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:45.893 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:00.976 [info] {"source":"oban","duration":305,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:04:15.895 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:45.897 [info] {"source":"oban","duration":1095,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:00.977 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:05:15.899 [info] {"source":"oban","duration":1578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:45.901 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:00.978 [info] {"source":"oban","duration":272,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:06:15.903 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:27.416 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769753187415793567,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":9,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:06:27.416 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=437.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" = ?) [106309] 23:06:27.417 [info] User scripts lifecyle file either not present or is empty. Skipping. 23:06:27.418 [debug] QUERY OK source="sources" db=0.4ms idle=438.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" = ?) [5] 23:06:27.418 [debug] QUERY OK source="media_profiles" db=0.4ms idle=439.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] 23:06:27.420 [debug] QUERY OK source="media_items" db=0.6ms idle=10.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 [106309] 23:06:27.421 [debug] QUERY OK source="media_metadata" db=0.2ms 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" = ?) [106309] 23:06:27.422 [debug] QUERY OK source="media_profiles" db=0.4ms idle=5.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] 23:06:27.423 [debug] QUERY OK source="settings" db=0.3ms idle=5.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 [] 23:06:27.424 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 23:06:27.424 [debug] Running yt-dlp command for action: get_downloadable_status 23:06:27.425 [debug] QUERY OK source="settings" db=0.2ms 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 [] 23:06:27.426 [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 [] 23:06:27.427 [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 [] 23:06:27.427 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/70/ad/70ad8fd20f752557b53e55001ae837ea14b79a75420546719bc94f4e1a5fb3e2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 23:06:31.316 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/70/ad/70ad8fd20f752557b53e55001ae837ea14b79a75420546719bc94f4e1a5fb3e2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 23:06:31.317 [debug] Running yt-dlp command for action: download 23:06:31.317 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=902.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 [] 23:06:31.318 [debug] QUERY OK source="settings" db=0.3ms idle=896.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 [] 23:06:31.318 [debug] QUERY OK source="settings" db=0.3ms idle=339.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 [] 23:06:31.319 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/fa/b2/fab2bc7139a0d3889f919534eed934aac63fa81f10ee97253a3427393ac3d5eb.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 23:06:35.535 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/fa/b2/fab2bc7139a0d3889f919534eed934aac63fa81f10ee97253a3427393ac3d5eb.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 23:06:35.535 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 23:06:35.536 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8119829,"event":"job:exception","queue_time":494523,"attempt":9,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:06:45.905 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:00.979 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:07:15.907 [info] {"source":"oban","duration":1147,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:45.909 [info] {"source":"oban","duration":1110,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:00.980 [info] {"source":"oban","duration":330,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:08:15.911 [info] {"source":"oban","duration":1148,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:45.913 [info] {"source":"oban","duration":1227,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:00.981 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:09:15.915 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:45.917 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:00.982 [info] {"source":"oban","duration":226,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:10:15.919 [info] {"source":"oban","duration":1150,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:45.921 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:00.983 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:11:15.923 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:45.925 [info] {"source":"oban","duration":1184,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:00.984 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:12:15.927 [info] {"source":"oban","duration":1586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:45.929 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:00.985 [info] {"source":"oban","duration":232,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:13:15.931 [info] {"source":"oban","duration":1198,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:45.933 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:59.589 [info] GET / 23:13:59.589 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 23:13:59.590 [debug] QUERY OK source="settings" db=0.3ms idle=610.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 [] 23:13:59.590 [debug] QUERY OK source="media_profiles" db=0.3ms idle=611.2ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 23:13:59.591 [debug] QUERY OK source="sources" db=0.2ms idle=611.8ms SELECT count(s0."id") FROM "sources" AS s0 [] 23:13:59.594 [debug] QUERY OK source="media_items" db=2.9ms idle=219.7ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 23:13:59.595 [debug] QUERY OK source="media_items" db=0.4ms idle=215.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 23:13:59.596 [debug] QUERY OK source="settings" db=0.1ms 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 [] 23:13:59.596 [debug] QUERY OK source="settings" db=0.2ms idle=5.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 [] 23:13:59.597 [debug] QUERY OK source="settings" db=0.1ms 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 [] 23:13:59.599 [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", 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"] 23:13:59.600 [debug] QUERY OK source="media_items" db=0.4ms queue=0.3ms 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", m0."id" FROM "media_items" AS m0 WHERE (m0."id" = ?) [89022] 23:13:59.602 [debug] QUERY OK source="media_items" db=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 (NOT (m0."media_filepath" IS NULL)) [] 23:13:59.603 [debug] QUERY OK source="media_items" db=0.7ms 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] 23:13:59.603 [debug] QUERY OK source="sources" db=0.4ms 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" IN (?,?)) [5, 4] 23:13:59.608 [debug] QUERY OK source="media_items" db=1.2ms idle=8.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"))) [] 23:13:59.609 [debug] QUERY OK source="media_items" db=1.2ms 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 (((((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] 23:13:59.610 [debug] QUERY OK source="sources" db=0.5ms 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" IN (?,?)) [1, 5] 23:13:59.614 [info] Sent 200 in 25ms 23:14:00.986 [info] {"source":"oban","duration":306,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:14:02.017 [info] GET /sources/5/media/106312 23:14:02.018 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "106312", "source_id" => "5"} Pipelines: [:browser] 23:14:02.019 [debug] QUERY OK source="media_items" db=0.6ms idle=1039.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" = ?) [106312] 23:14:02.020 [debug] QUERY OK source="tasks" db=0.5ms queue=0.2ms idle=1040.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" [106312] 23:14:02.021 [debug] QUERY OK source="sources" db=1.1ms idle=1033.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" = ?) [5] 23:14:02.022 [debug] QUERY OK source="oban_jobs" db=0.2ms queue=0.3ms idle=645.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" = ?) [2980] 23:14:02.023 [debug] QUERY OK source="settings" db=0.2ms idle=639.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 [] 23:14:02.023 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 23:14:02.024 [debug] QUERY OK source="settings" db=0.2ms 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 [] 23:14:02.026 [debug] QUERY OK source="media_profiles" db=0.3ms 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] 23:14:02.029 [info] Sent 200 in 11ms 23:14:04.359 [info] GET /sources/5/media/106309 23:14:04.359 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "106309", "source_id" => "5"} Pipelines: [:browser] 23:14:04.360 [debug] QUERY OK source="media_items" db=0.4ms idle=979.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" = ?) [106309] 23:14:04.361 [debug] QUERY OK source="tasks" db=0.3ms idle=973.3ms 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" [106309] 23:14:04.361 [debug] QUERY OK source="sources" db=0.4ms idle=381.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" = ?) [5] 23:14:04.362 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=382.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" = ?) [2979] 23:14:04.363 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=383.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 [] 23:14:04.363 [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 [] 23:14:04.364 [debug] QUERY OK source="settings" db=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 [] 23:14:04.366 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=4.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] 23:14:04.369 [info] Sent 200 in 10ms 23:14:06.497 [info] GET /sources/5/media/106312/force_download 23:14:06.498 [debug] QUERY OK source="settings" db=0.1ms idle=518.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 [] 23:14:06.498 [debug] QUERY OK source="settings" db=0.2ms idle=519.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 [] 23:14:06.498 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 23:14:06.499 [error] #PID<0.8742.0> running PinchflatWeb.Endpoint (connection #PID<0.8731.0>, stream id 5) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sources/5/media/106312/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/5/media/106312/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8731.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/5/media/106312/force_download", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 43292}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A", "from" => "gptbot(at)openai.com", "host" => "pinchflat.guano.duckdns.org", "referer" => "https://pinchflat.guano.duckdns.org/sources/5/media/106312", "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.31", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-openai-host-hash" => "783201737", "x-real-ip" => "74.7.227.31" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", has_body: false, streamid: 5, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A" }, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.8742.0>, params: %{}, path_info: ["sources", "5", "media", "106312", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A"}, {"from", "gptbot(at)openai.com"}, {"host", "pinchflat.guano.duckdns.org"}, {"referer", "https://pinchflat.guano.duckdns.org/sources/5/media/106312"}, {"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.31"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-openai-host-hash", "783201737"}, {"x-real-ip", "74.7.227.31"} ], request_path: "/sources/5/media/106312/force_download", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI9tkJ9wSAtQq74AAeAB"} ], 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.8731.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/5/media/106312/force_download", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 43292}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A", "from" => "gptbot(at)openai.com", "host" => "pinchflat.guano.duckdns.org", "referer" => "https://pinchflat.guano.duckdns.org/sources/5/media/106312", "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.31", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-openai-host-hash" => "783201737", "x-real-ip" => "74.7.227.31" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", has_body: false, streamid: 5, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/5/media/106312/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8731.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/5/media/106312/force_download", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 43292}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A", "from" => "gptbot(at)openai.com", "host" => "pinchflat.guano.duckdns.org", "referer" => "https://pinchflat.guano.duckdns.org/sources/5/media/106312", "user-agent" => "Mozilla/5.0 AppleWebKit/5 (truncated) 23:14:08.322 [info] GET /sources/5/media/106312/edit 23:14:08.322 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "106312", "source_id" => "5"} Pipelines: [:browser] 23:14:08.323 [debug] QUERY OK source="media_items" db=0.4ms idle=934.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" = ?) [106312] 23:14:08.324 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=928.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 [] 23:14:08.324 [debug] QUERY OK source="settings" db=0.1ms idle=345.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 [] 23:14:08.325 [debug] QUERY OK source="settings" db=0.2ms idle=345.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 [] 23:14:08.326 [info] Sent 200 in 4ms 23:14:15.935 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:16.086 [info] GET /sources/5/media/106312 23:14:16.087 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "106312", "prevent_download" => "true", "source_id" => "5"} Pipelines: [:browser] 23:14:16.088 [debug] QUERY OK source="media_items" db=0.4ms idle=681.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" = ?) [106312] 23:14:16.089 [debug] QUERY OK source="tasks" db=0.4ms idle=676.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" [106312] 23:14:16.089 [debug] QUERY OK source="sources" db=0.9ms idle=153.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" = ?) [5] 23:14:16.091 [debug] QUERY OK source="oban_jobs" db=1.0ms idle=111.2ms 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" = ?) [2980] 23:14:16.092 [debug] QUERY OK source="settings" db=0.2ms idle=112.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 [] 23:14:16.092 [debug] QUERY OK source="settings" db=0.2ms 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 [] 23:14:16.093 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 23:14:16.095 [debug] QUERY OK source="media_profiles" db=0.3ms idle=5.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] 23:14:16.098 [info] Sent 200 in 11ms 23:14:21.920 [info] GET /media/3fe0ff5f-699b-4717-9adf-7a0c52b1cfb2/stream 23:14:21.920 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.stream/2 Parameters: %{"uuid" => "3fe0ff5f-699b-4717-9adf-7a0c52b1cfb2", "v" => "1769752483"} Pipelines: [:maybe_basic_auth] 23:14:21.921 [debug] QUERY OK source="media_items" db=0.3ms queue=0.3ms idle=1941.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."uuid" = ?) ["3fe0ff5f-699b-4717-9adf-7a0c52b1cfb2"] 23:14:21.922 [debug] Invalid range request for media item: 3fe0ff5f-699b-4717-9adf-7a0c52b1cfb2 - serving full file 23:14:21.922 [info] Sent 200 in 2ms 23:14:31.221 [info] GET /sources/5/media/106309/edit 23:14:31.221 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "106309", "source_id" => "5"} Pipelines: [:browser] 23:14:31.222 [debug] QUERY OK source="media_items" db=0.5ms idle=1243.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" = ?) [106309] 23:14:31.223 [debug] QUERY OK source="settings" db=0.2ms idle=1244.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 [] 23:14:31.224 [debug] QUERY OK source="settings" db=0.2ms idle=783.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 [] 23:14:31.225 [debug] QUERY OK source="settings" db=0.3ms idle=777.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 [] 23:14:31.227 [info] Sent 200 in 5ms 23:14:36.124 [info] GET /sources/5/media/106309 23:14:36.125 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "106309", "prevent_download" => "true", "source_id" => "5"} Pipelines: [:browser] 23:14:36.126 [debug] QUERY OK source="media_items" db=0.4ms idle=1146.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" = ?) [106309] 23:14:36.126 [debug] QUERY OK source="tasks" db=0.3ms idle=1147.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" [106309] 23:14:36.127 [debug] QUERY OK source="sources" db=0.5ms idle=1147.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" = ?) [5] 23:14:36.127 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=676.4ms 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" = ?) [2979] 23:14:36.128 [debug] QUERY OK source="settings" db=0.3ms idle=671.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 [] 23:14:36.129 [debug] QUERY OK source="settings" db=0.3ms 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 [] 23:14:36.130 [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 [] 23:14:36.132 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 23:14:36.134 [info] Sent 200 in 10ms 23:14:40.697 [info] GET /sources/5/media/106309/force_download 23:14:40.698 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=719.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 [] 23:14:40.699 [debug] QUERY OK source="settings" db=0.3ms idle=719.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 [] 23:14:40.699 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 23:14:40.700 [error] #PID<0.8760.0> running PinchflatWeb.Endpoint (connection #PID<0.8751.0>, stream id 4) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sources/5/media/106309/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/5/media/106309/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8751.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/5/media/106309/force_download", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 42668}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A", "from" => "gptbot(at)openai.com", "host" => "pinchflat.guano.duckdns.org", "referer" => "https://pinchflat.guano.duckdns.org/sources/5/media/106309", "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.31", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-openai-host-hash" => "783201737", "x-real-ip" => "74.7.227.31" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", has_body: false, streamid: 4, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A" }, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.8760.0>, params: %{}, path_info: ["sources", "5", "media", "106309", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A"}, {"from", "gptbot(at)openai.com"}, {"host", "pinchflat.guano.duckdns.org"}, {"referer", "https://pinchflat.guano.duckdns.org/sources/5/media/106309"}, {"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.31"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-openai-host-hash", "783201737"}, {"x-real-ip", "74.7.227.31"} ], request_path: "/sources/5/media/106309/force_download", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GI9tmJXrBoRxth0AAeLB"} ], 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.8751.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/5/media/106309/force_download", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 42668}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A", "from" => "gptbot(at)openai.com", "host" => "pinchflat.guano.duckdns.org", "referer" => "https://pinchflat.guano.duckdns.org/sources/5/media/106309", "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.31", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-openai-host-hash" => "783201737", "x-real-ip" => "74.7.227.31" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", has_body: false, streamid: 4, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/5/media/106309/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.8751.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/5/media/106309/force_download", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 42668}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYbXc0NU00bzctSzNUMTdJU3p2OVl4VUVN.F7rrv4F5p9rARDiZ3yxYjPSPlgm_yWXFLVQ8aPxU60A", "from" => "gptbot(at)openai.com", "host" => "pinchflat.guano.duckdns.org", "referer" => "https://pinchflat.guano.duckdns.org/sources/5/media/106309", "user-agent" => "Mozilla/5.0 AppleWebKit/5 (truncated) 23:14:45.937 [info] {"source":"oban","duration":1219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:00.987 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:15:15.939 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:45.941 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:47.620 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769753747620654048,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":10,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:15:47.622 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms idle=642.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" = ?) [106309] 23:15:47.622 [info] User scripts lifecyle file either not present or is empty. Skipping. 23:15:47.623 [debug] QUERY OK source="sources" db=0.5ms idle=643.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" = ?) [5] 23:15:47.624 [debug] QUERY OK source="media_profiles" db=0.4ms idle=644.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] 23:15:47.625 [debug] QUERY OK source="media_items" db=0.7ms queue=0.1ms idle=11.4ms 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 [106309] 23:15:47.636 [debug] QUERY OK source="media_metadata" db=0.1ms idle=16.3ms 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" = ?) [106309] 23:15:47.637 [debug] QUERY OK source="media_profiles" db=0.2ms idle=14.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] 23:15:47.638 [debug] QUERY OK source="settings" db=0.2ms idle=14.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 [] 23:15:47.638 [debug] QUERY OK source="settings" db=0.2ms idle=14.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 [] 23:15:47.639 [debug] Running yt-dlp command for action: get_downloadable_status 23:15:47.640 [debug] QUERY OK source="settings" db=0.2ms idle=15.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 [] 23:15:47.641 [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 [] 23:15:47.641 [debug] QUERY OK source="settings" db=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 [] 23:15:47.642 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/43/f8/43f857d7d27f256a027ecafaf279978e6dd1be335ed8171659ce76bc1a6ef02d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 23:15:51.565 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/43/f8/43f857d7d27f256a027ecafaf279978e6dd1be335ed8171659ce76bc1a6ef02d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 23:15:51.565 [debug] Running yt-dlp command for action: download 23:15:51.566 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=944.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 [] 23:15:51.567 [debug] QUERY OK source="settings" db=0.3ms idle=938.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 [] 23:15:51.567 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=588.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 [] 23:15:51.568 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/be/99/be9937e80fe51c4fc0779cefe7538ae3b493bb600ef1a7b1294a53e2e850b1b6.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 23:15:55.761 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/be/99/be9937e80fe51c4fc0779cefe7538ae3b493bb600ef1a7b1294a53e2e850b1b6.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 23:15:55.761 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 23:15:55.762 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8140932,"event":"job:exception","queue_time":83209,"attempt":10,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:16:00.988 [info] {"source":"oban","duration":200,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:16:15.943 [info] {"source":"oban","duration":1124,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:45.945 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:00.989 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:17:15.947 [info] {"source":"oban","duration":1234,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:45.949 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:00.990 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:18:15.951 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:45.953 [info] {"source":"oban","duration":1645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:00.991 [info] {"source":"oban","duration":298,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:19:15.955 [info] {"source":"oban","duration":1627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:45.957 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:00.992 [info] {"source":"oban","duration":270,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:20:15.959 [info] {"source":"oban","duration":1539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:45.961 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:00.993 [info] {"source":"oban","duration":241,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:21:15.963 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:45.965 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:00.994 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:22:15.967 [info] {"source":"oban","duration":1703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:45.970 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:00.995 [info] {"source":"oban","duration":493,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:23:15.972 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:45.974 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:00.996 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:24:15.976 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:45.978 [info] {"source":"oban","duration":990,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:00.997 [info] {"source":"oban","duration":287,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:25:15.979 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:45.982 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:00.998 [info] {"source":"oban","duration":441,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:26:15.984 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:45.986 [info] {"source":"oban","duration":1401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:00.999 [info] {"source":"oban","duration":354,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:27:15.988 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:45.990 [info] {"source":"oban","duration":1645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:01.000 [info] {"source":"oban","duration":409,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:28:15.993 [info] {"source":"oban","duration":1568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:45.995 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:00.001 [info] {"source":"oban","duration":270,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:29:15.997 [info] {"source":"oban","duration":1641,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:45.999 [info] {"source":"oban","duration":1316,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:00.002 [info] {"source":"oban","duration":284,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:30:16.001 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:46.003 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:00.003 [info] {"source":"oban","duration":294,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:31:16.005 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:46.007 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:00.004 [info] {"source":"oban","duration":224,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:32:16.009 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:46.011 [info] {"source":"oban","duration":1183,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:00.005 [info] {"source":"oban","duration":255,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:33:16.013 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:46.015 [info] {"source":"oban","duration":1064,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:00.006 [info] {"source":"oban","duration":289,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:34:01.001 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769754841001466310,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":11,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:34:01.002 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=1010.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" = ?) [106309] 23:34:01.003 [info] User scripts lifecyle file either not present or is empty. Skipping. 23:34:01.003 [debug] QUERY OK source="sources" db=0.4ms idle=1004.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" = ?) [5] 23:34:01.004 [debug] QUERY OK source="media_profiles" db=0.4ms idle=997.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] 23:34:01.006 [debug] QUERY OK source="media_items" db=0.6ms idle=10.4ms 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 [106309] 23:34:01.076 [debug] QUERY OK source="media_metadata" db=0.2ms idle=75.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" = ?) [106309] 23:34:01.077 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=74.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] 23:34:01.078 [debug] QUERY OK source="settings" db=0.3ms 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 [] 23:34:01.078 [debug] QUERY OK source="settings" db=0.2ms idle=73.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 [] 23:34:01.079 [debug] Running yt-dlp command for action: get_downloadable_status 23:34:01.080 [debug] QUERY OK source="settings" db=0.1ms idle=73.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 [] 23:34:01.080 [debug] QUERY OK source="settings" db=0.2ms 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 [] 23:34:01.081 [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 [] 23:34:01.081 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/18/89/18897cd59f1772d8bbd730b47ff0aae950c4000d3624f4ad94adcdaa1e634f72.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 23:34:04.925 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/18/89/18897cd59f1772d8bbd730b47ff0aae950c4000d3624f4ad94adcdaa1e634f72.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 23:34:04.925 [debug] Running yt-dlp command for action: download 23:34:04.926 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=1946.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 [] 23:34:04.926 [debug] QUERY OK source="settings" db=0.2ms idle=1926.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 [] 23:34:04.927 [debug] QUERY OK source="settings" db=0.2ms idle=1920.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 [] 23:34:04.927 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/ac/d5/acd58dfbce7e0ab619d596981e1c1b5715961d5744c8af2d9b239eda264cb6da.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 23:34:09.117 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/ac/d5/acd58dfbce7e0ab619d596981e1c1b5715961d5744c8af2d9b239eda264cb6da.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 23:34:09.117 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 23:34:09.118 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8116441,"event":"job:exception","queue_time":238243,"attempt":11,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:34:16.017 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:46.019 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:00.007 [info] {"source":"oban","duration":342,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:35:16.021 [info] {"source":"oban","duration":1591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:46.023 [info] {"source":"oban","duration":1326,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:00.008 [info] {"source":"oban","duration":322,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:36:16.025 [info] {"source":"oban","duration":1165,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:46.027 [info] {"source":"oban","duration":1172,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:00.009 [info] {"source":"oban","duration":294,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:37:16.029 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:46.031 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:00.010 [info] {"source":"oban","duration":297,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:38:16.033 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:46.035 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:00.011 [info] {"source":"oban","duration":339,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:39:16.037 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:46.039 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:00.012 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:40:16.041 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:46.043 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:00.013 [info] {"source":"oban","duration":264,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:41:16.045 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:46.047 [info] {"source":"oban","duration":1257,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:00.014 [info] {"source":"oban","duration":408,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:42:16.049 [info] {"source":"oban","duration":1102,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:46.051 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:00.015 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:43:16.053 [info] {"source":"oban","duration":1379,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:46.055 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:00.016 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:44:16.057 [info] {"source":"oban","duration":1273,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:46.059 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:00.017 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:45:16.061 [info] {"source":"oban","duration":1094,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:46.063 [info] {"source":"oban","duration":1324,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:00.018 [info] {"source":"oban","duration":215,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:46:16.065 [info] {"source":"oban","duration":1198,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:46.067 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:00.019 [info] {"source":"oban","duration":449,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:47:16.069 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:46.071 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:00.020 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:48:16.073 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:46.075 [info] {"source":"oban","duration":1078,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:00.021 [info] {"source":"oban","duration":198,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:49:16.077 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:46.079 [info] {"source":"oban","duration":1055,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:00.022 [info] {"source":"oban","duration":279,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:50:16.081 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:46.083 [info] {"source":"oban","duration":1539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:00.023 [info] {"source":"oban","duration":305,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:51:16.085 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:46.087 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:00.024 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:52:16.089 [info] {"source":"oban","duration":1639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:46.092 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:00.025 [info] {"source":"oban","duration":328,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:53:16.094 [info] {"source":"oban","duration":1813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:46.097 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:00.026 [info] {"source":"oban","duration":269,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:54:16.099 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:46.101 [info] {"source":"oban","duration":1647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:00.027 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:55:16.104 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:46.106 [info] {"source":"oban","duration":1250,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:00.028 [info] {"source":"oban","duration":395,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:56:16.108 [info] {"source":"oban","duration":1164,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:46.110 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:00.029 [info] {"source":"oban","duration":257,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:57:16.112 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:46.114 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:00.030 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:58:16.117 [info] {"source":"oban","duration":2151,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:46.119 [info] {"source":"oban","duration":1724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:00.031 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 23:59:16.122 [info] {"source":"oban","duration":1138,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:46.124 [info] {"source":"oban","duration":1624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:00:00.032 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:00:16.126 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:00:46.128 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:00.033 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:01:16.130 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:46.132 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:00.034 [info] {"source":"oban","duration":260,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:02:16.134 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:46.136 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:00.035 [info] {"source":"oban","duration":281,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:03:16.138 [info] {"source":"oban","duration":1303,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:46.140 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:00.036 [info] {"source":"oban","duration":371,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:04:16.142 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:46.144 [info] {"source":"oban","duration":1138,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:00.037 [info] {"source":"oban","duration":286,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:05:16.146 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:46.148 [info] {"source":"oban","duration":1166,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:00.038 [info] {"source":"oban","duration":312,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:06:16.150 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:46.152 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:00.039 [info] {"source":"oban","duration":254,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:07:16.154 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:46.156 [info] {"source":"oban","duration":1343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:00.040 [info] {"source":"oban","duration":326,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:08:16.158 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:46.160 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:00.041 [info] {"source":"oban","duration":435,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:09:16.162 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:46.164 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:00.042 [info] {"source":"oban","duration":396,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:10:16.166 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:21.671 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1769757021671512889,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":12,"tags":["media_item","media_fetching","show_in_dashboard"]} 00:10:21.672 [debug] QUERY OK source="media_items" db=0.4ms idle=1692.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" = ?) [106309] 00:10:21.672 [info] User scripts lifecyle file either not present or is empty. Skipping. 00:10:21.673 [debug] QUERY OK source="sources" db=0.5ms idle=1011.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" = ?) [5] 00:10:21.674 [debug] QUERY OK source="media_profiles" db=0.4ms idle=1005.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] 00:10:21.675 [debug] QUERY OK source="media_items" db=0.6ms 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 [106309] 00:10:21.677 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.4ms 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" = ?) [106309] 00:10:21.677 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 00:10:21.678 [debug] QUERY OK source="settings" db=0.2ms idle=4.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:10:21.679 [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 [] 00:10:21.679 [debug] Running yt-dlp command for action: get_downloadable_status 00:10:21.680 [debug] QUERY OK source="settings" db=0.2ms idle=4.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:10:21.681 [debug] QUERY OK source="settings" db=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:10:21.681 [debug] QUERY OK source="settings" db=0.3ms 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:10:21.682 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/16/86/168677c2862e5d80a1aa70fb1aae68ab1bc21488620cf299322027107ecc49bb.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 00:10:25.638 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/16/86/168677c2862e5d80a1aa70fb1aae68ab1bc21488620cf299322027107ecc49bb.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details 00:10:25.638 [debug] Running yt-dlp command for action: download 00:10:25.638 [debug] QUERY OK source="settings" db=0.3ms idle=967.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:10:25.639 [debug] QUERY OK source="settings" db=0.2ms idle=960.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:10:25.639 [debug] QUERY OK source="settings" db=0.2ms idle=660.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:10:25.640 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/1b/04/1b043d9b1387a1d806dfd63d5c10add388187c4d3997fe09595c8f6af5647d07.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 00:10:29.824 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/1b/04/1b043d9b1387a1d806dfd63d5c10add388187c4d3997fe09595c8f6af5647d07.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details ERROR: unable to download video data: HTTP Error 403: Forbidden 00:10:29.824 [error] yt-dlp download error for media item #106309: "WARNING: [youtube] lLIvNqaXysQ: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See https://github.com/yt-dlp/yt-dlp/issues/12482 for more details\nERROR: unable to download video data: HTTP Error 403: Forbidden\n" 00:10:29.826 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":8153719,"event":"job:exception","queue_time":551938,"attempt":12,"tags":["media_item","media_fetching","show_in_dashboard"]} 00:10:46.168 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:00.043 [info] {"source":"oban","duration":273,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:11:16.170 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:46.172 [info] {"source":"oban","duration":1376,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:00.044 [info] {"source":"oban","duration":223,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:12:16.174 [info] {"source":"oban","duration":1197,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:46.176 [info] {"source":"oban","duration":1264,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:00.045 [info] {"source":"oban","duration":259,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:13:16.178 [info] {"source":"oban","duration":1240,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:46.180 [info] {"source":"oban","duration":1117,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:00.046 [info] {"source":"oban","duration":447,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:14:16.182 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:46.184 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:00.047 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:15:16.186 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:46.188 [info] {"source":"oban","duration":1317,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:00.048 [info] {"source":"oban","duration":315,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:16:16.190 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:46.192 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:00.049 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:17:16.194 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:46.196 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:00.050 [info] {"source":"oban","duration":288,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:18:16.198 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:46.200 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:00.051 [info] {"source":"oban","duration":287,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:19:16.202 [info] {"source":"oban","duration":1627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:46.204 [info] {"source":"oban","duration":1228,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:00.052 [info] {"source":"oban","duration":238,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:20:16.206 [info] {"source":"oban","duration":1121,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:46.208 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:00.053 [info] {"source":"oban","duration":336,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:21:16.210 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:46.212 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:00.054 [info] {"source":"oban","duration":348,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:22:16.214 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:46.216 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:00.055 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:23:16.218 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:46.220 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:00.056 [info] {"source":"oban","duration":319,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:24:16.222 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:46.224 [info] {"source":"oban","duration":1052,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:00.057 [info] {"source":"oban","duration":296,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:25:16.226 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:46.228 [info] {"source":"oban","duration":1119,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:00.058 [info] {"source":"oban","duration":263,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:26:16.230 [info] {"source":"oban","duration":1282,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:46.232 [info] {"source":"oban","duration":1168,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:00.059 [info] {"source":"oban","duration":250,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:27:16.234 [info] {"source":"oban","duration":1603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:46.236 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:00.060 [info] {"source":"oban","duration":225,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:28:16.238 [info] {"source":"oban","duration":1198,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:46.240 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:00.061 [info] {"source":"oban","duration":331,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:29:16.242 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:46.244 [info] {"source":"oban","duration":1187,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:00.062 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:30:16.246 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:46.248 [info] {"source":"oban","duration":1545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:00.063 [info] {"source":"oban","duration":351,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:31:16.250 [info] {"source":"oban","duration":1337,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:46.252 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:00.064 [info] {"source":"oban","duration":350,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:32:16.254 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:46.256 [info] {"source":"oban","duration":1064,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:00.065 [info] {"source":"oban","duration":368,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:33:16.258 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:46.260 [info] {"source":"oban","duration":1382,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:00.066 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:34:16.262 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:46.264 [info] {"source":"oban","duration":1146,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:00.067 [info] {"source":"oban","duration":321,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:35:16.266 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:46.268 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:00.068 [info] {"source":"oban","duration":236,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:36:16.270 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:46.272 [info] {"source":"oban","duration":1376,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:00.069 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:37:16.274 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:46.276 [info] {"source":"oban","duration":1015,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:00.070 [info] {"source":"oban","duration":278,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:38:16.278 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:46.280 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:00.071 [info] {"source":"oban","duration":323,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:39:16.282 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:46.284 [info] {"source":"oban","duration":1520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:00.072 [info] {"source":"oban","duration":242,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:40:16.286 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:46.288 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:00.073 [info] {"source":"oban","duration":275,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:41:16.290 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:46.292 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:00.074 [info] {"source":"oban","duration":253,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:42:16.294 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:46.296 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:43:00.075 [info] {"source":"oban","duration":352,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:43:16.298 [info] {"source":"oban","duration":1238,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:43:46.300 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:44:00.076 [info] {"source":"oban","duration":233,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:44:16.302 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:44:46.304 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:00.077 [info] {"source":"oban","duration":267,"event":"plugin:stop","plugin":"Oban.Plugins.Cron","jobs":[]} 00:45:16.306 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:46.308 [info] {"source":"oban","duration":1119,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:56:40.608 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 09:56:40.609 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 09:56:40.610 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 09:56:40.611 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 09:56:40.611 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 09:56:41.219 [debug] QUERY OK source="oban_jobs" db=608.4ms queue=11.1ms idle=0.0ms UPDATE "oban_jobs" AS o0 SET "state" = ? WHERE (o0."state" = 'executing') ["retryable"] 09:56:41.219 [info] Reset 1 executing jobs 09:56:41.290 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 09:56:43.595 [debug] Tzdata polling for update. 09:56:43.841 [debug] Tzdata polling shows the loaded tz database is up to date. 09:56:45.035 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2025.12.08 09:56:45.035 [info] [command_wrapper]: /usr/local/bin/apprise called with: --version 09:56:48.679 [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. 09:56:48.697 [debug] QUERY OK source="settings" db=17.2ms queue=0.2ms idle=81.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 [] 09:56:48.698 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=99.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 [] 09:56:48.698 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:56:48.705 [info] {"message":"notifier only receiving messages from its own node, functionality may be degraded","source":"oban","event":"notifier:switch","connectivity_status":"solitary"} 09:56:48.721 [info] Running PinchflatWeb.Endpoint with cowboy 2.13.0 at 0.0.0.0:8945 (http) 09:56:48.755 [info] Access PinchflatWeb.Endpoint at http://localhost:8945 09:56:48.764 [info] {"args":{},"id":2983,"meta":{},"system_time":1770137808764658556,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","event":"job:start","attempt":1,"tags":["local_data"]} 09:56:48.765 [info] Updating yt-dlp 09:56:48.765 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update 09:56:49.916 [info] {"args":{"id":4},"id":2945,"meta":{},"system_time":1770137809916090511,"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"]} 09:56:49.916 [info] {"args":{"id":1},"id":2976,"meta":{},"system_time":1770137809916177432,"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"]} 09:56:49.917 [debug] QUERY OK source="sources" db=0.6ms queue=0.2ms idle=1159.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" = ?) [4] 09:56:49.917 [debug] QUERY OK source="sources" db=0.4ms queue=0.6ms idle=1152.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] 09:56:49.918 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=10.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 [] 09:56:49.918 [debug] QUERY OK source="settings" db=0.2ms 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 [] 09:56:49.927 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770137809927688928,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":6,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:56:49.927 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1770137809927619540,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":13,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:56:50.170 [debug] QUERY OK source="media_items" db=241.7ms queue=0.2ms idle=9.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" = ?) [89022] 09:56:50.170 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:56:50.171 [debug] QUERY OK source="sources" db=0.3ms queue=0.3ms idle=243.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" = ?) [5] 09:56:50.172 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.3ms idle=1.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] 09:56:50.173 [debug] QUERY OK source="media_items" db=0.4ms queue=0.5ms idle=1.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 [89022] 09:56:50.174 [debug] QUERY OK source="media_items" db=245.7ms queue=0.7ms 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" = ?) [106309] 09:56:50.174 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:56:50.175 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1.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" = ?) [5] 09:56:50.176 [debug] QUERY OK source="media_profiles" db=0.3ms idle=1.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] 09:56:52.886 [debug] QUERY OK source="media_metadata" db=2711.4ms queue=0.3ms idle=2.3ms 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" = ?) [89022] 09:56:52.887 [debug] QUERY OK source="media_items" db=0.7ms queue=0.2ms idle=2710.4ms 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 [106309] 09:56:52.887 [debug] QUERY OK source="media_profiles" db=0.8ms queue=0.1ms idle=2710.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] 09:56:52.889 [debug] QUERY OK source="settings" db=0.4ms 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 [] 09:56:52.889 [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 [] 09:56:52.953 [debug] Running yt-dlp command for action: get_downloadable_status 09:56:52.954 [debug] QUERY OK source="media_metadata" db=0.2ms idle=64.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" = ?) [106309] 09:56:52.954 [debug] QUERY OK source="media_profiles" db=0.4ms idle=64.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] 09:56:52.955 [debug] QUERY OK source="settings" db=0.6ms idle=64.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 [] 09:56:52.956 [debug] QUERY OK source="settings" db=0.3ms queue=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 [] 09:56:52.956 [debug] QUERY OK source="settings" db=0.6ms idle=0.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 [] 09:56:52.956 [debug] QUERY OK source="settings" db=0.5ms idle=0.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 [] 09:56:52.957 [debug] QUERY OK source="settings" db=0.8ms idle=0.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 [] 09:56:52.958 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/81/48/81485bba7d6932e93cf69c0b3aaa3486727b9983bec08e8b06fef21864abce2d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:56:52.958 [debug] Running yt-dlp command for action: get_downloadable_status 09:56:54.186 [debug] QUERY OK source="settings" db=0.3ms idle=1228.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 [] 09:56:54.186 [debug] QUERY OK source="settings" db=0.2ms idle=1228.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 [] 09:56:54.187 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=295.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 [] 09:56:54.187 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/fd/b8/fdb8563f47e08e753890c10a30760fd5f9ecc4937c3766a412cbfed88df89cff.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:56:55.919 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update exited: 0 with: Current version: stable@2025.12.08 from yt-dlp/yt-dlp Latest version: stable@2026.01.31 from yt-dlp/yt-dlp Current Build Hash: 457f3f2a86f747a5f3b860813b7ac28828c28f92f7c9030c9980b69c6637859f Updating to stable@2026.01.31 from yt-dlp/yt-dlp ... Updated yt-dlp to stable@2026.01.31 from yt-dlp/yt-dlp 09:56:55.919 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 09:56:56.563 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/fd/b8/fdb8563f47e08e753890c10a30760fd5f9ecc4937c3766a412cbfed88df89cff.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: Traceback (most recent call last): File "__main__.py", line 17, in File "yt_dlp/__init__.py", line 1079, in main File "yt_dlp/__init__.py", line 1070, in _real_main File "yt_dlp/YoutubeDL.py", line 3662, in download File "yt_dlp/YoutubeDL.py", line 3635, in wrapper File "yt_dlp/YoutubeDL.py", line 1685, in extract_info File "yt_dlp/YoutubeDL.py", line 914, in get_info_extractor File "yt_dlp/extractor/lazy_extractors.py", line 37, in __new__ File "yt_dlp/utils/_utils.py", line 5049, in __get__ File "yt_dlp/extractor/lazy_extractors.py", line 33, in real_class File "importlib/__init__.py", line 88, in import_module File "", line 1387, in _gcd_import File "", line 1360, in _find_and_load File "", line 1331, in _find_and_load_unlocked File "", line 935, in _load_unlocked File "pyimod02_importers.py", line 446, in exec_module File "pyimod02_importers.py", line 383, in _check_name_wrapper File "pyimod02_importers.py", line 503, in get_code File "pyimod01_archive.py", line 134, in extract zlib.error: Error -3 while decompressing data: incorrect header check [PYI-289:ERROR] Failed to execute script '__main__' due to unhandled exception! 09:56:56.564 [error] yt-dlp download error for media item #106309: "Traceback (most recent call last):\n File \"__main__.py\", line 17, in \n File \"yt_dlp/__init__.py\", line 1079, in main\n File \"yt_dlp/__init__.py\", line 1070, in _real_main\n File \"yt_dlp/YoutubeDL.py\", line 3662, in download\n File \"yt_dlp/YoutubeDL.py\", line 3635, in wrapper\n File \"yt_dlp/YoutubeDL.py\", line 1685, in extract_info\n File \"yt_dlp/YoutubeDL.py\", line 914, in get_info_extractor\n File \"yt_dlp/extractor/lazy_extractors.py\", line 37, in __new__\n File \"yt_dlp/utils/_utils.py\", line 5049, in __get__\n File \"yt_dlp/extractor/lazy_extractors.py\", line 33, in real_class\n File \"importlib/__init__.py\", line 88, in import_module\n File \"\", line 1387, in _gcd_import\n File \"\", line 1360, in _find_and_load\n File \"\", line 1331, in _find_and_load_unlocked\n File \"\", line 935, in _load_unlocked\n File \"pyimod02_importers.py\", line 446, in exec_module\n File \"pyimod02_importers.py\", line 383, in _check_name_wrapper\n File \"pyimod02_importers.py\", line 503, in get_code\n File \"pyimod01_archive.py\", line 134, in extract\nzlib.error: Error -3 while decompressing data: incorrect header check\n[PYI-289:ERROR] Failed to execute script '__main__' due to unhandled exception!\n" 09:56:57.294 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2026.01.31 09:56:57.294 [debug] QUERY OK source="settings" db=0.2ms idle=1398.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 [] 09:56:59.298 [debug] QUERY ERROR source="settings" db=2004.1ms idle=396.8ms UPDATE "settings" SET "yt_dlp_version" = ? WHERE "id" = ? ["2026.01.31", 1] 09:56:59.456 [debug] QUERY OK source="media_items" db=2891.5ms idle=679.1ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["Traceback (most recent call last):\n File \"__main__.py\", line 17, in \n File \"yt_dlp/__init__.py\", line 1079, in main\n File \"yt_dlp/__init__.py\", line 1070, in _real_main\n File \"yt_dlp/YoutubeDL.py\", line 3662, in download\n File \"yt_dlp/YoutubeDL.py\", line 3635, in wrapper\n File \"yt_dlp/YoutubeDL.py\", line 1685, in extract_info\n File \"yt_dlp/YoutubeDL.py\", line 914, in get_info_extractor\n File \"yt_dlp/extractor/lazy_extractors.py\", line 37, in __new__\n File \"yt_dlp/utils/_utils.py\", line 5049, in __get__\n File \"yt_dlp/extractor/lazy_extractors.py\", line 33, in real_class\n File \"importlib/__init__.py\", line 88, in import_module\n File \"\", line 1387, in _gcd_import\n File \"\", line 1360, in _find_and_load\n File \"\", line 1331, in _find_and_load_unlocked\n File \"\", line 935, in _load_unlocked\n File \"pyimod02_importers.py\", line 446, in exec_module\n File \"pyimod02_importers.py\", line 383, in _check_name_wrapper\n File \"pyimod02_importers.py\", line 503, in get_code\n File \"pyimod01_archive.py\", line 134, in extract\nzlib.error: Error -3 while decompressing data: incorrect header check\n[PYI-289:ERROR] Failed to execute script '__main__' due to unhandled exception!\n", ~U[2026-02-03 16:56:56Z], 106309] 09:56:59.457 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106309},"id":2979,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":9529285,"event":"job:exception","queue_time":376321088275,"attempt":13,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:56:59.465 [info] {"args":{"id":102574},"id":2973,"meta":{},"system_time":1770137819465378175,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":16,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:56:59.772 [debug] QUERY OK source="media_items" db=306.6ms idle=8.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" = ?) [102574] 09:56:59.772 [info] {"error":"** (Exqlite.Error) Database busy\nUPDATE \"settings\" SET \"yt_dlp_version\" = ? WHERE \"id\" = ?","args":{},"id":2983,"meta":{},"state":"failure","max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","duration":10534454,"event":"job:exception","queue_time":762576,"attempt":1,"tags":["local_data"]} 09:56:59.773 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:56:59.774 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=308.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] 09:56:59.774 [debug] QUERY OK source="media_profiles" db=0.3ms idle=293.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] 09:56:59.775 [debug] QUERY OK source="media_items" db=0.7ms idle=2.4ms 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 [102574] 09:56:59.798 [debug] QUERY OK source="media_metadata" db=0.2ms idle=23.4ms 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" = ?) [102574] 09:56:59.799 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=22.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] 09:56:59.800 [debug] QUERY OK source="settings" db=0.2ms idle=20.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 [] 09:56:59.800 [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 [] 09:56:59.801 [debug] Running yt-dlp command for action: get_downloadable_status 09:56:59.802 [debug] QUERY OK source="settings" db=0.2ms 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 [] 09:56:59.802 [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 [] 09:56:59.803 [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 [] 09:56:59.803 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/33/96/3396e5f5730a75ae2e4c3da52e082064f47e57c710318ff9c88abd634dfcca02.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:57:00.706 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:57:02.098 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/81/48/81485bba7d6932e93cf69c0b3aaa3486727b9983bec08e8b06fef21864abce2d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 09:57:02.099 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 09:57:02.100 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":12171787,"event":"job:exception","queue_time":385153031302,"attempt":6,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:57:02.108 [info] {"args":{"id":89349},"id":2939,"meta":{},"system_time":1770137822108017612,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":19,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:57:02.123 [debug] QUERY OK source="media_items" db=15.0ms idle=805.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" = ?) [89349] 09:57:02.123 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:57:02.124 [debug] QUERY OK source="sources" db=0.3ms idle=23.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] 09:57:02.124 [debug] QUERY OK source="media_profiles" db=0.2ms idle=16.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] 09:57:02.125 [debug] QUERY OK source="media_items" db=0.3ms idle=1.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 [89349] 09:57:02.151 [debug] QUERY OK source="media_metadata" db=0.2ms idle=27.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" = ?) [89349] 09:57:02.152 [debug] QUERY OK source="media_profiles" db=0.2ms idle=27.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] 09:57:02.153 [debug] QUERY OK source="settings" db=0.1ms idle=27.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 [] 09:57:02.153 [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 [] 09:57:02.154 [debug] Running yt-dlp command for action: get_downloadable_status 09:57:02.155 [debug] QUERY OK source="settings" db=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 [] 09:57:02.155 [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 [] 09:57:02.156 [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 [] 09:57:02.156 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=bthDIKLmaQE --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/14/0f/140f6c52e1e8c22093819c623d593a01971d9c20a46d05f34975789df0c72282.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:57:04.920 [error] Exqlite.Connection (#PID<0.2321.0>) disconnected: ** (DBConnection.ConnectionError) client #PID<0.2618.0> timed out because it queued and checked out the connection for longer than 15000ms #PID<0.2618.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 09:57:04.921 [error] Exqlite.Connection (#PID<0.2320.0>) disconnected: ** (DBConnection.ConnectionError) client #PID<0.2619.0> timed out because it queued and checked out the connection for longer than 15000ms #PID<0.2619.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 09:57:05.772 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=bthDIKLmaQE --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/14/0f/140f6c52e1e8c22093819c623d593a01971d9c20a46d05f34975789df0c72282.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] bthDIKLmaQE: Private video. Sign in if you've been granted access to this video. 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 09:57:05.772 [error] yt-dlp download error for media item #89349: "ERROR: [youtube] bthDIKLmaQE: Private video. Sign in if you've been granted access to this video. 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" 09:57:05.774 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89349},"id":2939,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":3665328,"event":"job:exception","queue_time":327452917178,"attempt":19,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:57:05.780 [info] {"args":{"id":105678},"id":2894,"meta":{},"system_time":1770137825780662394,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":20,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:57:08.576 [debug] QUERY OK source="media_items" db=18656.5ms queue=1.1ms idle=1.1ms 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")))) [4] 09:57:08.576 [debug] QUERY OK source="media_items" db=2795.2ms idle=469.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" = ?) [105678] 09:57:08.576 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:57:08.579 [debug] QUERY OK source="sources" db=1.9ms idle=0.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] 09:57:08.580 [debug] QUERY OK source="media_profiles" db=0.7ms idle=0.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] 09:57:08.580 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 09:57:08.581 [debug] QUERY OK source="media_items" db=0.7ms idle=0.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 [105678] 09:57:08.599 [debug] QUERY OK source="media_metadata" db=0.1ms idle=18.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" = ?) [105678] 09:57:08.600 [debug] QUERY OK source="media_profiles" db=0.2ms idle=18.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] 09:57:10.350 [debug] QUERY OK source="media_items" db=1773.5ms queue=0.2ms idle=1100.4ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [4] 09:57:10.352 [debug] QUERY OK source="media_profiles" db=1.2ms queue=0.3ms idle=1769.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] 09:57:10.352 [debug] QUERY OK source="settings" db=0.9ms queue=0.2ms idle=1752.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 [] 09:57:10.353 [debug] QUERY OK source="settings" db=0.6ms 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 [] 09:57:10.354 [debug] QUERY OK source="settings" db=0.5ms idle=0.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 [] 09:57:10.354 [debug] Running yt-dlp command for action: get_downloadable_status 09:57:10.354 [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 [] 09:57:10.355 [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 [] 09:57:10.356 [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 [] 09:57:10.356 [debug] QUERY OK source="settings" db=0.2ms 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 [] 09:57:10.356 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=R9vIPTzQi8Y --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f1/b3/f1b3ea2f9cf5250c492521d0acf75355623dafa5a767616c420009dbc2034383.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:57:10.375 [debug] Running yt-dlp command for action: get_media_attributes_for_collection 09:57:10.375 [debug] Current batch of media processed. Will check again in 1000ms 09:57:10.375 [debug] QUERY OK source="settings" db=0.2ms idle=20.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 [] 09:57:10.376 [debug] QUERY OK source="settings" db=0.2ms idle=20.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 [] 09:57:10.376 [debug] QUERY OK source="settings" db=0.1ms idle=20.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 [] 09:57:10.377 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/playlist?list=PL7eLsxQrsg-5XomfLKJsXuPg9qSYcG30a --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/Miniscule Season 1/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --remux-video mp4 --format-sort res:2160,+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/0f/07/0f07b9b36eb2d6747fdeb7df17ccafa7eb2117400c737030433f63c9ba2bf7f5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:57:11.379 [debug] Current batch of media processed. Will check again in 1000ms 09:57:13.079 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=R9vIPTzQi8Y --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f1/b3/f1b3ea2f9cf5250c492521d0acf75355623dafa5a767616c420009dbc2034383.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] R9vIPTzQi8Y: This live event will begin in 11 days. 09:57:13.079 [error] yt-dlp download error for media item #105678: "ERROR: [youtube] R9vIPTzQi8Y: This live event will begin in 11 days.\n" 09:57:13.098 [debug] QUERY OK source="media_items" db=17.8ms idle=730.2ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["ERROR: [youtube] R9vIPTzQi8Y: This live event will begin in 11 days.\n", ~U[2026-02-03 16:57:13Z], 105678] 09:57:13.099 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":105678},"id":2894,"meta":{},"state":"discard","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":7317561,"event":"job:exception","queue_time":285701877729,"attempt":20,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:57:13.106 [info] {"args":{"id":103080},"id":2946,"meta":{},"system_time":1770137833106179382,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":19,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:57:13.107 [debug] QUERY OK source="media_items" db=0.4ms idle=748.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" = ?) [103080] 09:57:13.107 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:57:13.107 [debug] QUERY OK source="sources" db=0.2ms idle=9.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] 09:57:13.108 [debug] QUERY OK source="media_profiles" db=0.1ms 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] 09:57:13.109 [debug] QUERY OK source="media_items" db=0.3ms idle=2.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 [103080] 09:57:13.110 [debug] QUERY OK source="media_metadata" db=0.1ms idle=2.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" = ?) [103080] 09:57:13.110 [debug] QUERY OK source="media_profiles" db=0.2ms 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] 09:57:13.111 [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 [] 09:57:13.111 [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 [] 09:57:13.112 [debug] Running yt-dlp command for action: get_downloadable_status 09:57:13.113 [debug] QUERY OK source="settings" db=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 [] 09:57:13.113 [debug] QUERY OK source="settings" db=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 [] 09:57:13.113 [debug] QUERY OK source="settings" db=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 [] 09:57:13.113 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=_UsZrbofuic --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/88/52/88521a74e05a351310da9fa5f4ed9c22999840628eba4f0e749c04bd91beabb0.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:57:15.724 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=_UsZrbofuic --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/88/52/88521a74e05a351310da9fa5f4ed9c22999840628eba4f0e749c04bd91beabb0.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] _UsZrbofuic: This live event will begin in 25 days. 09:57:15.724 [error] yt-dlp download error for media item #103080: "ERROR: [youtube] _UsZrbofuic: This live event will begin in 25 days.\n" 09:57:16.366 [info] {"error":"** (Exqlite.Error) Database busy\nUPDATE \"oban_jobs\" AS o0 SET \"state\" = ? WHERE (o0.\"id\" IN (?))","source":"oban","duration":1509,"event":"plugin:exception","plugin":"Oban.Stager"} 09:57:19.088 [info] {"error":"** (Exqlite.Error) Database busy\nDELETE FROM \"oban_jobs\" AS o0 WHERE (o0.\"id\" IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?))","source":"oban","duration":382229,"event":"plugin:exception","plugin":"Oban.Plugins.Pruner"} 09:57:26.216 [debug] QUERY OK source="media_items" db=10491.1ms idle=1375.3ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["ERROR: [youtube] _UsZrbofuic: This live event will begin in 25 days.\n", ~U[2026-02-03 16:57:15Z], 103080] 09:57:26.218 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":103080},"id":2946,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":13111119,"event":"job:exception","queue_time":219947737103,"attempt":19,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:57:26.227 [info] {"args":{"id":106250},"id":2953,"meta":{},"system_time":1770137846226703279,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":19,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:57:26.227 [debug] QUERY OK source="media_items" db=0.3ms idle=1877.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" = ?) [106250] 09:57:26.228 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:57:26.228 [debug] QUERY OK source="sources" db=0.4ms idle=12.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] 09:57:26.229 [debug] QUERY OK source="media_profiles" db=0.2ms idle=10.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] 09:57:26.231 [debug] QUERY OK source="media_items" db=0.6ms idle=3.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 [106250] 09:57:26.244 [debug] QUERY OK source="media_metadata" db=0.1ms idle=16.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" = ?) [106250] 09:57:26.245 [debug] QUERY OK source="media_profiles" db=0.2ms idle=16.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] 09:57:26.246 [debug] QUERY OK source="settings" db=0.2ms idle=16.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 [] 09:57:26.246 [debug] QUERY OK source="settings" db=0.2ms idle=15.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 [] 09:57:26.247 [debug] Running yt-dlp command for action: get_downloadable_status 09:57:26.248 [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 [] 09:57:26.249 [debug] QUERY OK source="settings" db=0.2ms 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 [] 09:57:26.249 [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 [] 09:57:26.249 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=rDn7g37M7PI --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/e6/65/e665ac64bd7b697c91a50ed076d629b1e8f340c8ae648bf2eedec418c20f178f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:57:28.704 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=rDn7g37M7PI --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/e6/65/e665ac64bd7b697c91a50ed076d629b1e8f340c8ae648bf2eedec418c20f178f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] rDn7g37M7PI: This live event will begin in 18 days. 09:57:28.704 [error] yt-dlp download error for media item #106250: "ERROR: [youtube] rDn7g37M7PI: This live event will begin in 18 days.\n" 09:57:28.706 [debug] QUERY OK source="media_items" db=1.7ms queue=0.1ms idle=1355.1ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["ERROR: [youtube] rDn7g37M7PI: This live event will begin in 18 days.\n", ~U[2026-02-03 16:57:28Z], 106250] 09:57:28.725 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":106250},"id":2953,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2480369,"event":"job:exception","queue_time":150600551696,"attempt":19,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:57:28.733 [info] {"args":{"id":104642},"id":2908,"meta":{},"system_time":1770137848733348776,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":20,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:57:32.781 [debug] QUERY OK source="media_items" db=4047.5ms idle=1384.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" = ?) [104642] 09:57:32.782 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:57:32.783 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=432.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] 09:57:32.784 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.2ms idle=433.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] 09:57:32.785 [debug] QUERY OK source="media_items" db=0.5ms idle=434.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 [104642] 09:57:32.830 [debug] QUERY OK source="media_metadata" db=0.1ms idle=48.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" = ?) [104642] 09:57:32.831 [debug] QUERY OK source="media_profiles" db=0.3ms idle=47.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] 09:57:32.832 [debug] QUERY OK source="settings" db=0.2ms idle=47.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 [] 09:57:32.832 [debug] QUERY OK source="settings" db=0.2ms idle=46.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 [] 09:57:32.833 [debug] Running yt-dlp command for action: get_downloadable_status 09:57:32.834 [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 [] 09:57:32.834 [debug] QUERY OK source="settings" db=0.2ms 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 [] 09:57:32.835 [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 [] 09:57:32.835 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=Ww4Ys0x9mbA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/7b/b1/7bb1b39d2ad7ce35c6244ceed68db2cd26f5600f1ee327c9803ace97d300665a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:58:00.708 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:58:42.936 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/33/96/3396e5f5730a75ae2e4c3da52e082064f47e57c710318ff9c88abd634dfcca02.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 09:58:42.937 [debug] Running yt-dlp command for action: download 09:58:42.937 [debug] QUERY OK source="settings" db=0.3ms idle=587.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 [] 09:58:42.938 [debug] QUERY OK source="settings" db=0.2ms idle=588.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 [] 09:58:42.938 [debug] QUERY OK source="settings" db=0.2ms idle=588.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 [] 09:58:42.939 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=opR_Tg1uLjc --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/24/f7/24f76d6c56994a83ff4e5220571421d9d15d551e3b6cdf18b17fbc149775990a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:58:43.526 [debug] QUERY OK source="media_items" db=113606.7ms queue=1.0ms idle=0.8ms 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] 09:58:43.530 [debug] FileFollowerServer Handler: Got media attributes: %{"filename" => "/downloads/Miniscule Season 1/NA youtube video #uC8EPYyjTto/youtube video #uC8EPYyjTto [uC8EPYyjTto].NA", "id" => "uC8EPYyjTto", "original_url" => "https://www.youtube.com/watch?v=uC8EPYyjTto", "playlist_index" => 1, "title" => "youtube video #uC8EPYyjTto"} 09:58:43.528 [error] GenServer {Oban.Registry, {Oban, {:plugin, Oban.Plugins.Pruner}}} terminating ** (Exqlite.Error) Database busy DELETE FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:157: Oban.Engines.Lite.prune_jobs/3 (oban 2.19.4) lib/oban/engine.ex:272: anonymous fn/4 in Oban.Engine.prune_jobs/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/plugins/pruner.ex:150: anonymous fn/1 in Oban.Plugins.Pruner.check_leadership_and_delete_jobs/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1400: anonymous fn/3 in Ecto.Adapters.SQL.checkout_or_transaction/4 Last message: :prune State: %Oban.Plugins.Pruner{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, timer: #Reference<0.2833043407.3763339270.164162>, interval: 30000, limit: 10000, max_age: 2592000} 09:58:43.530 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 09:58:43.530 [error] GenServer {Oban.Registry, {Oban, Oban.Stager}} terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = ? WHERE (o0."id" IN (?)) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:132: Oban.Engines.Lite.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:262: anonymous fn/4 in Oban.Engine.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/stager.ex:83: anonymous fn/1 in Oban.Stager.stage_and_notify/2 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1400: anonymous fn/3 in Ecto.Adapters.SQL.checkout_or_transaction/4 Last message: :stage State: %Oban.Stager{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, timer: #Reference<0.2833043407.3763339270.166039>, interval: 1000, limit: 5000, mode: :global} 09:58:45.988 [debug] QUERY OK source="sources" db=0.6ms idle=1637.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 (?)) [4] 09:58:45.989 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 Subscribe for more videos: https://www.youtube.com/channel/UCOOi7JtIMDaYsaUjDBSTSIQ?sub_confirmation=1\r\n \r\nWhen a National Geographic-style documentary blends with an irresistibly humorous Tex Avery cartoon… Minuscule combines 3D animation and live footage with no dialogue, offering an offbeat take on insects’ daily lives and a fresh way to explore nature. With its universal charm, Minuscule captivates people of all ages around the world.\r\n \r\nIn this compilation:\r\n00:00:00 | Some Weird Fly | S01E78\n00:04:29 | Horsefly | S01E21\n00:09:11 | The Wild Bunch | S01E74\n00:13:50 | Mad Fly | S01E55\n00:18:29 | The Last Supper | S01E25\n00:23:18 | Cherry Tomato | S01E77\n00:27:57 | The Ladybug | S01E01\n00:32:33 | Dragonflies | S01E33\r\n \r\n🐞 Minuscule: The Animated Series | Season 1 | Minuscule Official: https://www.youtube.com/playlist?list=PL7eLsxQrsg-5XomfLKJsXuPg9qSYcG30a\r\n\r\n© Futurikon\r\n\r\n#fly #cow #aggressive #ladybug #flies #insulting #horsefly #Minuscule #nature #insects #ladybugs #animatedseries", "duration" => 2268, "filename" => "/downloads/Miniscule Season 1/2026-01-29 Some Weird Fly | Minuscule | 45' Compilation/Some Weird Fly | Minuscule | 45' Compilation [LxLJhLGhyTU].mp4", "id" => "LxLJhLGhyTU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=LxLJhLGhyTU", "playlist_index" => 2, "timestamp" => 1769684441, "title" => "Some Weird Fly | Minuscule | 45' Compilation", "upload_date" => "20260129"} 09:58:45.989 [debug] QUERY OK source="sources" db=0.3ms idle=1639.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" IN (?)) [4] 09:58:45.990 [debug] QUERY OK source="sources" db=0.5ms queue=0.1ms idle=1640.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" = ?) [4] 09:58:45.993 [debug] QUERY OK source="media_items" db=1.5ms queue=0.3ms idle=2.9ms SELECT max(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2026-01-29 11:00:41Z], 4] 09:58:46.990 [info] {"error":"** (Exqlite.Error) Database busy\nUPDATE \"oban_jobs\" AS o0 SET \"state\" = ? WHERE (o0.\"id\" IN (?,?))","source":"oban","duration":1619,"event":"plugin:exception","plugin":"Oban.Stager"} 09:58:46.990 [error] GenServer {Oban.Registry, {Oban, Oban.Stager}} terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = ? WHERE (o0."id" IN (?,?)) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:132: Oban.Engines.Lite.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:262: anonymous fn/4 in Oban.Engine.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/stager.ex:83: anonymous fn/1 in Oban.Stager.stage_and_notify/2 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1400: anonymous fn/3 in Ecto.Adapters.SQL.checkout_or_transaction/4 Last message: :stage State: %Oban.Stager{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, timer: #Reference<0.2833043407.3763339270.167457>, interval: 1000, limit: 5000, mode: :global} 09:58:47.830 [debug] QUERY OK source="media_items" db=4303.6ms idle=1177.3ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 09:58:47.831 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=840.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] 09:58:47.832 [debug] QUERY OK source="settings" db=0.1ms idle=482.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 [] 09:58:47.832 [debug] QUERY OK source="settings" db=0.1ms idle=482.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 [] 09:58:47.840 [debug] QUERY OK source="media_items" db=6.3ms queue=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 WHERE (m0."source_id" = ?) ORDER BY m0."uploaded_at" DESC LIMIT 50 OFFSET 20 [1] 09:58:47.896 [debug] Running yt-dlp command for action: get_media_attributes_for_collection 09:58:47.896 [debug] Current batch of media processed. Will check again in 1000ms 09:58:47.897 [debug] QUERY OK source="settings" db=0.2ms idle=65.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 [] 09:58:47.897 [debug] QUERY OK source="settings" db=0.1ms idle=64.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 [] 09:58:47.897 [debug] QUERY OK source="settings" db=0.1ms idle=64.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 [] 09:58:47.898 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/@thetabernaclechoir/streams --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --break-on-existing --download-archive /tmp/pinchflat/data/10/32/103267474d37f7279d48f7819042c5c4bf12eedb587a085b19eae5b1550d00fe.txt --print-to-file %(.{id,title,live_status,original_url,description,aspect_ratio,duration,upload_date,timestamp,playlist_index,filename})j /tmp/pinchflat/data/3e/2f/3e2fb7bd404c9a3c37eecef5378fd68ad2fa39bd7976eecc23a4e4ad8daa5b43.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:58:47.994 [info] {"error":"** (Exqlite.Error) Database busy\nUPDATE \"oban_jobs\" AS o0 SET \"state\" = ? WHERE (o0.\"id\" IN (?,?))","source":"oban","duration":1130,"event":"plugin:exception","plugin":"Oban.Stager"} 09:58:47.994 [error] GenServer {Oban.Registry, {Oban, Oban.Stager}} terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = ? WHERE (o0."id" IN (?,?)) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:132: Oban.Engines.Lite.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:262: anonymous fn/4 in Oban.Engine.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/stager.ex:83: anonymous fn/1 in Oban.Stager.stage_and_notify/2 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1400: anonymous fn/3 in Ecto.Adapters.SQL.checkout_or_transaction/4 Last message: :stage State: %Oban.Stager{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, timer: #Reference<0.2833043407.3763339270.167513>, interval: 1000, limit: 5000, mode: :global} 09:58:48.897 [debug] Current batch of media processed. Will check again in 1000ms 09:58:49.083 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=Ww4Ys0x9mbA --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/7b/b1/7bb1b39d2ad7ce35c6244ceed68db2cd26f5600f1ee327c9803ace97d300665a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 09:58:49.083 [debug] Running yt-dlp command for action: download 09:58:49.083 [debug] QUERY OK source="settings" db=0.2ms idle=1186.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 [] 09:58:49.084 [debug] QUERY OK source="settings" db=0.1ms idle=1186.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 [] 09:58:49.084 [debug] QUERY OK source="settings" db=0.2ms idle=1186.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 [] 09:58:49.085 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=Ww4Ys0x9mbA --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/40/37/4037676e4d2193e1257b3d9f07ce014b47eeab2cdf4cc7b9c16741c0f73ec8df.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:58:49.898 [debug] Current batch of media processed. Will check again in 1000ms 09:58:50.899 [debug] Current batch of media processed. Will check again in 1000ms 09:58:51.901 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "filename" => "/downloads/tabernacle choir/2025-12-17 03⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/03⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [7MRCKid2WIQ].NA", "id" => "7MRCKid2WIQ", "live_status" => "is_upcoming", "original_url" => "https://www.youtube.com/watch?v=7MRCKid2WIQ", "playlist_index" => 1, "timestamp" => 1765942737, "title" => "03/01/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "upload_date" => "20251217"} 09:58:51.902 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1551.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" IN (?)) [1] 09:58:51.903 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1552.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] 09:58:51.909 [debug] QUERY OK source="media_items" db=5.4ms queue=0.3ms idle=1553.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-17 03:38:57Z], 1] 09:58:53.914 [debug] QUERY ERROR source="media_items" db=2003.8ms idle=560.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","livestream","media_id","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "duration_seconds" = ?, "livestream" = ?, "media_id" = ?, "original_url" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" ["For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "03/01/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", "cdbe229d-58bc-45a3-9068-1c37bd27966c", true, "7MRCKid2WIQ", "https://www.youtube.com/watch?v=7MRCKid2WIQ", 1, "/downloads/tabernacle choir/2025-12-17 03⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/03⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [7MRCKid2WIQ].NA", false, false, false, 1, [], 95, ~U[2025-12-17 03:38:57Z], ~U[2026-02-03 16:58:51Z], ~U[2026-02-03 16:58:51Z], "For nearly a century, Music & the Spoken Word has broadcast messages of hope and inspiration alongside the beautiful music of the Tabernacle Choir and Orchestra at Temple Square. \n\nBroadcast every Sunday on more than 2,000 stations and streamed worldwide, Music & the Spoken Word has been a source of peace and comfort through times of war, tragedy, and change. From the Great Depression to global pandemics, it has remained a constant, bringing the glory of sacred music and heartfelt spoken word into homes worldwide. \n\nLet's stay connected:\n\nSubscribe to our Channel: https://www.youtube.com/thetabernaclechoir\n\n Turn on notifications to stay updated with new uploads!\n\nFollow The Tabernacle Choir on Instagram: https://www.instagram.com/thetabernaclechoir/\n\nLike The Tabernacle Choir on Facebook: https://www.facebook.com/thetabernaclechoir \n\nStream The Tabernacle Choir on Spotify, Amazon Music, Apple Music, and Pandora.\n\n#praiseworshipsongs #christianmusic #churchofjesuschrist #ldsmusic #tabernaclechoir #music #choir #christian #organmusic #choirmusic #tabchoir #lds #mormons #musicandthespokenword #livestream #organmusic", "03/01/26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)", nil, true, "7MRCKid2WIQ", "https://www.youtube.com/watch?v=7MRCKid2WIQ", "/downloads/tabernacle choir/2025-12-17 03⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream)/03⧸01⧸26 | Music & the Spoken Word | The Tabernacle Choir (#livestream) [7MRCKid2WIQ].NA", false, 1, ~U[2025-12-17 03:38:57Z]] 09:58:53.914 [error] GenServer #PID<0.2656.0> terminating ** (Exqlite.Error) Database busy INSERT INTO "media_items" AS m0 ("description","title","uuid","livestream","media_id","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) ON CONFLICT ("source_id","media_id") DO UPDATE SET "description" = ?, "title" = ?, "duration_seconds" = ?, "livestream" = ?, "media_id" = ?, "original_url" = ?, "predicted_media_filepath" = ?, "short_form_content" = ?, "source_id" = ?, "uploaded_at" = ? RETURNING "id" (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto 3.12.5) lib/ecto/repo/schema.ex:837: Ecto.Repo.Schema.apply/4 (ecto 3.12.5) lib/ecto/repo/schema.ex:416: anonymous fn/15 in Ecto.Repo.Schema.do_insert/4 (pinchflat 2025.9.26) lib/pinchflat/slow_indexing/slow_indexing_helpers.ex:172: Pinchflat.SlowIndexing.SlowIndexingHelpers.create_media_item_and_enqueue_download/2 (pinchflat 2025.9.26) lib/pinchflat/slow_indexing/file_follower_server.ex:102: Pinchflat.SlowIndexing.FileFollowerServer.attempt_process_new_lines/1 (stdlib 6.2) gen_server.erl:2345: :gen_server.try_handle_info/3 (stdlib 6.2) gen_server.erl:2433: :gen_server.handle_msg/6 (stdlib 6.2) proc_lib.erl:329: :proc_lib.init_p_do_apply/3 Last message: :read_new_lines State: %{handler: #Function<2.109099185/1 in Pinchflat.SlowIndexing.SlowIndexingHelpers.setup_file_follower_watcher/3>, io_device: {:file_descriptor, :prim_file, %{handle: #Reference<0.2833043407.3763470376.161904>, owner: #PID<0.2656.0>, r_buffer: #Reference<0.2833043407.3763470340.162227>, r_ahead_size: 65536}}, last_activity: ~U[2026-02-03 16:58:47.896773Z]} 09:58:55.889 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=Ww4Ys0x9mbA --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/tabernacle choir/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/40/37/4037676e4d2193e1257b3d9f07ce014b47eeab2cdf4cc7b9c16741c0f73ec8df.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: Unable to download video subtitles for 'en': HTTP Error 429: Too Many Requests 09:58:55.891 [error] yt-dlp download error for media item #104642: "ERROR: Unable to download video subtitles for 'en': HTTP Error 429: Too Many Requests\n" 09:58:55.920 [error] Task #PID<0.2662.0> started from #PID<0.2354.0> terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = 'retryable', "errors" = json_insert(o0."errors", '$[#]', ?), "scheduled_at" = ? WHERE (o0."id" = ?) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:200: Oban.Engines.Lite.error_job/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/queue/executor.ex:238: Oban.Queue.Executor.ack_event/1 (oban 2.19.4) lib/oban/queue/executor.ex:224: Oban.Queue.Executor.report_finished/1 (oban 2.19.4) lib/oban/backoff.ex:108: Oban.Backoff.with_retry/3 Function: #Function<2.68984571/0 in Oban.Queue.Producer.handle_info/2> Args: [] 09:58:55.922 [error] GenServer {Oban.Registry, {Oban, {:producer, "media_collection_indexing"}}} terminating ** (MatchError) no match of right hand side value: nil (oban 2.19.4) lib/oban/queue/producer.ex:79: Oban.Queue.Producer.handle_info/2 (stdlib 6.2) gen_server.erl:2345: :gen_server.try_handle_info/3 (stdlib 6.2) gen_server.erl:2433: :gen_server.handle_msg/6 (stdlib 6.2) proc_lib.erl:329: :proc_lib.init_p_do_apply/3 Last message: {:DOWN, #Reference<0.0.301315.2833043407.3763404805.163702>, :process, #PID<0.2662.0>, {%Exqlite.Error{message: "Database busy", statement: "UPDATE \"oban_jobs\" AS o0 SET \"state\" = 'retryable', \"errors\" = json_insert(o0.\"errors\", '$[#]', ?), \"scheduled_at\" = ? WHERE (o0.\"id\" = ?)"}, [{Ecto.Adapters.SQL, :raise_sql_call_error, 1, [file: ~c"lib/ecto/adapters/sql.ex", line: 1096, error_info: %{module: Exception}]}, {Ecto.Adapters.SQL, :execute, 6, [file: ~c"lib/ecto/adapters/sql.ex", line: 994]}, {Oban.Engines.Lite, :error_job, 3, [file: ~c"lib/oban/engines/lite.ex", line: 200]}, {Oban.Engine, :"-with_span/4-fun-0-", 3, [file: ~c"lib/oban/engine.ex", line: 387]}, {:telemetry, :span, 3, [file: ~c"/app/deps/telemetry/src/telemetry.erl", line: 324]}, {Oban.Queue.Executor, :ack_event, 1, [file: ~c"lib/oban/queue/executor.ex", line: 238]}, {Oban.Queue.Executor, :report_finished, 1, [file: ~c"lib/oban/queue/executor.ex", line: 224]}, {Oban.Backoff, :with_retry, 3, [file: ~c"lib/oban/backoff.ex", line: 108]}]}} State: %Oban.Queue.Producer{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, foreman: {:via, Registry, {Oban.Registry, {Oban, {:foreman, "media_collection_indexing"}}}}, meta: %{name: Oban, node: "pinchflat@5df437b600ed", queue: "media_collection_indexing", started_at: ~U[2026-02-03 16:56:48.702638Z], limit: 2, uuid: "b8042c3e-3d3b-4c4e-8013-b922b396c143", updated_at: ~U[2026-02-03 16:58:43.527424Z], paused: true, refresh_interval: 30000, shutdown_started_at: ~U[2026-02-03 16:58:47.997280Z]}, name: {:via, Registry, {Oban.Registry, {Oban, {:producer, "media_collection_indexing"}}}}, dispatch_timer: nil, refresh_timer: #Reference<0.2833043407.3763339270.167398>, dispatch_cooldown: 5, running: %{#Reference<0.0.301315.2833043407.3763404806.164903> => {#PID<0.2618.0>, %Oban.Queue.Executor{ack: true, conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, error: nil, job: %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, "oban_jobs">, id: 2945, state: "executing", queue: "media_collection_indexing", worker: "Pinchflat.SlowIndexing.MediaCollectionIndexingWorker", args: %{"id" => 4}, meta: %{}, tags: ["media_source", "media_collection_indexing", "show_in_dashboard"], errors: [], attempt: 1, attempted_by: ["pinchflat@5df437b600ed"], max_attempts: 20, priority: 0, attempted_at: ~U[2026-02-03 16:56:49.913482Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2026-01-25 08:29:32.000000Z], scheduled_at: ~U[2026-02-01 08:29:32.348499Z], conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{...}, ...]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [...], ...], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, ...}, conflict?: false, replace: nil, unique: nil, unsaved_error: nil}, meta: %{args: %{"id" => 4}, id: 2945, max_attempts: 20, queue: "media_collection_indexing", worker: "Pinchflat.SlowIndexing.MediaCollectionIndexingWorker", prefix: false, conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, attempt: 1, job: %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, "oban_jobs">, id: 2945, state: "executing", queue: "media_collection_indexing", worker: "Pinchflat.SlowIndexing.MediaCollectionIndexingWorker", args: %{"id" => 4}, meta: %{}, tags: ["media_source", "media_collection_indexing", "show_in_dashboard"], errors: [], attempt: 1, attempted_by: ["pinchflat@5df437b600ed"], max_attempts: 20, priority: 0, attempted_at: ~U[2026-02-03 16:56:49.913482Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2026-01-25 08:29:32.000000Z], scheduled_at: ~U[2026-02-01 08:29:32.348499Z], conf: nil, conflict?: false, replace: nil, unique: nil, unsaved_error: nil}, tags: ["media_source", "media_collection_indexing", "show_in_dashboard"]}, pid: #PID<0.2354.0>, result: nil, snooze: nil, start_mono: -576460723722300178, start_time: 1770137809916090511, stop_mono: nil, timer: nil, worker: nil, safe: true, duration: 0, kind: :error, queue_time: 0, stacktrace: [], state: :unset}}}} 09:58:55.928 [info] Exqlite.Connection (#PID<0.2320.0>) disconnected: ** (DBConnection.ConnectionError) client #PID<0.2634.0> exited 09:58:57.895 [debug] QUERY ERROR source="media_items" db=2003.4ms idle=542.5ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["ERROR: Unable to download video subtitles for 'en': HTTP Error 429: Too Many Requests\n", ~U[2026-02-03 16:58:55Z], 104642] 09:58:59.900 [error] Task #PID<0.2645.0> started from #PID<0.2358.0> terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = 'discarded', "errors" = json_insert(o0."errors", '$[#]', ?), "discarded_at" = ? WHERE (o0."id" = ?) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:182: Oban.Engines.Lite.discard_job/2 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/queue/executor.ex:257: Oban.Queue.Executor.ack_event/1 (oban 2.19.4) lib/oban/queue/executor.ex:224: Oban.Queue.Executor.report_finished/1 (oban 2.19.4) lib/oban/queue/executor.ex:84: anonymous fn/1 in Oban.Queue.Executor.call/1 Process Label: Pinchflat.Downloading.MediaDownloadWorker Function: &Oban.Queue.Executor.call/1 Args: [%Oban.Queue.Executor{ack: true, conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, error: nil, job: %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, "oban_jobs">, id: 2908, state: "executing", queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", args: %{"id" => 104642}, meta: %{}, tags: ["media_item", "media_fetching", "show_in_dashboard"], errors: [%{"at" => "2026-01-20T18:06:01.401102Z", "attempt" => 1, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:06:23.300388Z", "attempt" => 2, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:06:46.578050Z", "attempt" => 3, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:07:14.561742Z", "attempt" => 4, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:07:51.524831Z", "attempt" => 5, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:08:46.643747Z", "attempt" => 6, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:10:14.061863Z", "attempt" => 7, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:12:41.200573Z", "attempt" => 8, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:17:38.118897Z", "attempt" => 9, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:26:59.091505Z", "attempt" => 10, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:45:39.566145Z", "attempt" => 11, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T19:20:19.245843Z", "attempt" => 12, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T20:33:18.627596Z", "attempt" => 13, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T22:56:01.260445Z", "attempt" => 14, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-21T03:47:03.144274Z", "attempt" => 15, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-21T12:57:15.688310Z", "attempt" => 16, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-22T08:12:30.969594Z", "attempt" => 17, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-23T23:37:35.724381Z", "attempt" => 18, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-27T06:14:41.981174Z", "attempt" => 19, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}], attempt: 20, attempted_by: ["pinchflat@5df437b600ed"], max_attempts: 20, priority: 5, attempted_at: ~U[2026-02-03 16:57:28.731571Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2026-01-20 18:05:57.000000Z], scheduled_at: ~U[2026-02-02 14:36:18.981255Z], conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, conflict?: false, replace: nil, unique: nil, unsaved_error: nil}, meta: %{args: %{"id" => 104642}, id: 2908, max_attempts: 20, queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", prefix: false, conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, attempt: 20, job: %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, "oban_jobs">, id: 2908, state: "executing", queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", args: %{"id" => 104642}, meta: %{}, tags: ["media_item", "media_fetching", "show_in_dashboard"], errors: [%{"at" => "2026-01-20T18:06:01.401102Z", "attempt" => 1, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-20T18:06:23.300388Z", "attempt" => 2, "erro (truncated) 09:59:01.907 [error] Task #PID<0.2663.0> started from #PID<0.2358.0> terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = 'discarded', "errors" = json_insert(o0."errors", '$[#]', ?), "discarded_at" = ? WHERE (o0."id" = ?) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:182: Oban.Engines.Lite.discard_job/2 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/queue/executor.ex:257: Oban.Queue.Executor.ack_event/1 (oban 2.19.4) lib/oban/queue/executor.ex:224: Oban.Queue.Executor.report_finished/1 (oban 2.19.4) lib/oban/backoff.ex:108: Oban.Backoff.with_retry/3 Function: #Function<2.68984571/0 in Oban.Queue.Producer.handle_info/2> Args: [] 09:59:01.908 [error] GenServer {Oban.Registry, {Oban, {:producer, "media_fetching"}}} terminating ** (MatchError) no match of right hand side value: nil (oban 2.19.4) lib/oban/queue/producer.ex:79: Oban.Queue.Producer.handle_info/2 (stdlib 6.2) gen_server.erl:2345: :gen_server.try_handle_info/3 (stdlib 6.2) gen_server.erl:2433: :gen_server.handle_msg/6 (stdlib 6.2) proc_lib.erl:329: :proc_lib.init_p_do_apply/3 Last message: {:DOWN, #Reference<0.0.301827.2833043407.3763404805.164514>, :process, #PID<0.2663.0>, {%Exqlite.Error{message: "Database busy", statement: "UPDATE \"oban_jobs\" AS o0 SET \"state\" = 'discarded', \"errors\" = json_insert(o0.\"errors\", '$[#]', ?), \"discarded_at\" = ? WHERE (o0.\"id\" = ?)"}, [{Ecto.Adapters.SQL, :raise_sql_call_error, 1, [file: ~c"lib/ecto/adapters/sql.ex", line: 1096, error_info: %{module: Exception}]}, {Ecto.Adapters.SQL, :execute, 6, [file: ~c"lib/ecto/adapters/sql.ex", line: 994]}, {Oban.Engines.Lite, :discard_job, 2, [file: ~c"lib/oban/engines/lite.ex", line: 182]}, {Oban.Engine, :"-with_span/4-fun-0-", 3, [file: ~c"lib/oban/engine.ex", line: 387]}, {:telemetry, :span, 3, [file: ~c"/app/deps/telemetry/src/telemetry.erl", line: 324]}, {Oban.Queue.Executor, :ack_event, 1, [file: ~c"lib/oban/queue/executor.ex", line: 257]}, {Oban.Queue.Executor, :report_finished, 1, [file: ~c"lib/oban/queue/executor.ex", line: 224]}, {Oban.Backoff, :with_retry, 3, [file: ~c"lib/oban/backoff.ex", line: 108]}]}} State: %Oban.Queue.Producer{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, foreman: {:via, Registry, {Oban.Registry, {Oban, {:foreman, "media_fetching"}}}}, meta: %{name: Oban, node: "pinchflat@5df437b600ed", queue: "media_fetching", started_at: ~U[2026-02-03 16:56:48.703068Z], limit: 2, uuid: "d801e913-e8d1-4854-bc5a-489a4b382c77", updated_at: ~U[2026-02-03 16:59:00.376490Z], paused: true, refresh_interval: 30000, shutdown_started_at: ~U[2026-02-03 16:58:47.997319Z]}, name: {:via, Registry, {Oban.Registry, {Oban, {:producer, "media_fetching"}}}}, dispatch_timer: nil, refresh_timer: #Reference<0.2833043407.3763339269.164605>, dispatch_cooldown: 5, running: %{#Reference<0.0.301827.2833043407.3763404805.162251> => {#PID<0.2626.0>, %Oban.Queue.Executor{ack: true, conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, error: nil, job: %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, "oban_jobs">, id: 2973, state: "executing", queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", args: %{"id" => 102574}, meta: %{}, tags: ["media_item", "media_fetching", "show_in_dashboard"], errors: [%{"at" => "2026-01-29T18:08:07.050171Z", "attempt" => 1, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T18:08:32.817580Z", "attempt" => 2, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T18:09:01.885680Z", "attempt" => 3, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T18:09:34.956504Z", "attempt" => 4, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T18:10:17.356314Z", "attempt" => 5, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T18:11:15.180878Z", "attempt" => 6, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T18:12:44.354860Z", "attempt" => 7, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T18:15:27.766925Z", "attempt" => 8, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T18:20:32.568970Z", "attempt" => 9, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T18:29:44.326620Z", "attempt" => 10, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T18:48:14.336843Z", "attempt" => 11, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T19:25:52.163067Z", "attempt" => 12, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T20:38:40.319919Z", "attempt" => 13, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-29T22:56:35.777206Z", "attempt" => 14, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}, %{"at" => "2026-01-30T03:51:03.451194Z", "attempt" => 15, "error" => "** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}"}], attempt: 16, attempted_by: ["pinchflat@5df437b600ed"], max_attempts: 20, priority: 5, attempted_at: ~U[2026-02-03 16:56:59.463549Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2026-01-29 18:07:58.000000Z], scheduled_at: ~U[2026-01-30 13:32:41.451233Z], conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{...}, ...]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [...], ...], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, ...}, conflict?: false, replace: nil, unique: nil, unsaved_error: nil}, meta: %{args: %{"id" => 102574}, id: 2973, max_attempts: 20, queue: "media_fetching", worker: "Pinchflat.Downloading.MediaDownloadWorker", prefix: false, conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetention (truncated) 09:59:01.916 [info] {"message":"notifier only receiving messages from its own node, functionality may be degraded","source":"oban","event":"notifier:switch","connectivity_status":"solitary"} 09:59:02.918 [info] {"error":"** (Exqlite.Error) Database busy\nUPDATE \"oban_jobs\" AS o0 SET \"state\" = ? WHERE (o0.\"id\" IN (?,?))","source":"oban","duration":1086,"event":"plugin:exception","plugin":"Oban.Stager"} 09:59:02.918 [error] GenServer {Oban.Registry, {Oban, Oban.Stager}} terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = ? WHERE (o0."id" IN (?,?)) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:132: Oban.Engines.Lite.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:262: anonymous fn/4 in Oban.Engine.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/stager.ex:83: anonymous fn/1 in Oban.Stager.stage_and_notify/2 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1400: anonymous fn/3 in Ecto.Adapters.SQL.checkout_or_transaction/4 Last message: :stage State: %Oban.Stager{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, timer: #Reference<0.2833043407.3763339269.164922>, interval: 1000, limit: 5000, mode: :global} 09:59:03.923 [info] {"error":"** (Exqlite.Error) Database busy\nUPDATE \"oban_jobs\" AS o0 SET \"state\" = ? WHERE (o0.\"id\" IN (?,?))","source":"oban","duration":1378,"event":"plugin:exception","plugin":"Oban.Stager"} 09:59:03.923 [error] GenServer {Oban.Registry, {Oban, Oban.Stager}} terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = ? WHERE (o0."id" IN (?,?)) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:132: Oban.Engines.Lite.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:262: anonymous fn/4 in Oban.Engine.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/stager.ex:83: anonymous fn/1 in Oban.Stager.stage_and_notify/2 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1400: anonymous fn/3 in Ecto.Adapters.SQL.checkout_or_transaction/4 Last message: :stage State: %Oban.Stager{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, timer: #Reference<0.2833043407.3763339270.169370>, interval: 1000, limit: 5000, mode: :global} 09:59:04.926 [info] {"error":"** (Exqlite.Error) Database busy\nUPDATE \"oban_jobs\" AS o0 SET \"state\" = ? WHERE (o0.\"id\" IN (?,?))","source":"oban","duration":871,"event":"plugin:exception","plugin":"Oban.Stager"} 09:59:04.926 [error] GenServer {Oban.Registry, {Oban, Oban.Stager}} terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = ? WHERE (o0."id" IN (?,?)) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:132: Oban.Engines.Lite.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:262: anonymous fn/4 in Oban.Engine.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/stager.ex:83: anonymous fn/1 in Oban.Stager.stage_and_notify/2 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1400: anonymous fn/3 in Ecto.Adapters.SQL.checkout_or_transaction/4 Last message: :stage State: %Oban.Stager{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, timer: #Reference<0.2833043407.3763339270.169413>, interval: 1000, limit: 5000, mode: :global} 09:59:05.930 [info] {"error":"** (Exqlite.Error) Database busy\nUPDATE \"oban_jobs\" AS o0 SET \"state\" = ? WHERE (o0.\"id\" IN (?,?))","source":"oban","duration":1389,"event":"plugin:exception","plugin":"Oban.Stager"} 09:59:05.930 [error] GenServer {Oban.Registry, {Oban, Oban.Stager}} terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = ? WHERE (o0."id" IN (?,?)) (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (oban 2.19.4) lib/oban/engines/lite.ex:132: Oban.Engines.Lite.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:262: anonymous fn/4 in Oban.Engine.stage_jobs/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/stager.ex:83: anonymous fn/1 in Oban.Stager.stage_and_notify/2 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1400: anonymous fn/3 in Ecto.Adapters.SQL.checkout_or_transaction/4 Last message: :stage State: %Oban.Stager{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, timer: #Reference<0.2833043407.3763339270.169453>, interval: 1000, limit: 5000, mode: :global} 09:59:05.936 [info] {"message":"notifier only receiving messages from its own node, functionality may be degraded","source":"oban","event":"notifier:switch","connectivity_status":"solitary"} 09:59:06.814 [debug] Exqlite: loading extension `/app/lib/pinchflat-2025.9.26/priv/repo/extensions/sqlean-linux-x86/sqlean` 09:59:06.948 [info] {"args":{},"id":2983,"meta":{},"system_time":1770137946948366514,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","event":"job:start","attempt":2,"tags":["local_data"]} 09:59:06.948 [info] Updating yt-dlp 09:59:06.948 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update 09:59:06.950 [info] {"args":{"id":104641},"id":2907,"meta":{},"system_time":1770137946950135345,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":20,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:59:06.950 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770137946950218236,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":7,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:59:06.951 [debug] QUERY OK source="media_items" db=0.6ms idle=1020.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" = ?) [104641] 09:59:06.951 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:59:06.951 [debug] QUERY OK source="media_items" db=0.6ms idle=135.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" = ?) [89022] 09:59:06.951 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:59:06.952 [debug] QUERY OK source="sources" db=0.4ms idle=12.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] 09:59:06.952 [debug] QUERY OK source="sources" db=0.3ms 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" = ?) [5] 09:59:06.952 [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] 09:59:06.953 [debug] QUERY OK source="media_profiles" db=0.4ms idle=1.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] 09:59:06.954 [debug] QUERY OK source="media_items" db=0.9ms idle=1.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 [104641] 09:59:06.955 [debug] QUERY OK source="media_items" db=1.3ms idle=1.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 [89022] 09:59:06.967 [debug] QUERY OK source="media_metadata" db=0.3ms idle=14.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" = ?) [104641] 09:59:06.967 [debug] QUERY OK source="media_metadata" db=0.3ms idle=14.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" = ?) [89022] 09:59:06.967 [debug] QUERY OK source="media_profiles" db=0.3ms idle=14.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] 09:59:06.967 [debug] QUERY OK source="media_profiles" db=0.4ms idle=13.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] 09:59:06.968 [debug] QUERY OK source="settings" db=0.4ms idle=13.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 [] 09:59:06.969 [debug] QUERY OK source="settings" db=0.6ms 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 [] 09:59:06.969 [debug] QUERY OK source="settings" db=0.4ms 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 [] 09:59:06.969 [debug] QUERY OK source="settings" db=0.6ms 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 [] 09:59:06.969 [debug] Running yt-dlp command for action: get_downloadable_status 09:59:07.129 [debug] Running yt-dlp command for action: get_downloadable_status 09:59:07.130 [debug] QUERY OK source="settings" db=0.2ms idle=162.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 [] 09:59:07.130 [debug] QUERY OK source="settings" db=0.2ms idle=161.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 [] 09:59:07.131 [debug] QUERY OK source="settings" db=0.1ms idle=162.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 [] 09:59:07.131 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=qKnVpnVrQSY --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/17/72/1772aaf9cbfc8b655338846784eda9730d49fc4999230ed103e0b35f2519352e.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:59:07.667 [debug] QUERY OK source="settings" db=0.2ms idle=698.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 [] 09:59:07.668 [debug] QUERY OK source="settings" db=0.1ms idle=698.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 [] 09:59:07.668 [debug] QUERY OK source="settings" db=0.2ms idle=538.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 [] 09:59:07.669 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/b5/41/b541ef2f43c5fcb089d1f33fe47e94ad89441d253badd52e676f3ccf7932e79b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:59:08.820 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update exited: 0 with: Latest version: stable@2026.01.31 from yt-dlp/yt-dlp yt-dlp is up to date (stable@2026.01.31 from yt-dlp/yt-dlp) 09:59:08.820 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 09:59:09.889 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=qKnVpnVrQSY --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/17/72/1772aaf9cbfc8b655338846784eda9730d49fc4999230ed103e0b35f2519352e.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] qKnVpnVrQSY: This live event will begin in 4 days. 09:59:09.889 [error] yt-dlp download error for media item #104641: "ERROR: [youtube] qKnVpnVrQSY: This live event will begin in 4 days.\n" 09:59:10.222 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2026.01.31 09:59:10.223 [debug] QUERY OK source="settings" db=0.2ms idle=873.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 [] 09:59:10.539 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/b5/41/b541ef2f43c5fcb089d1f33fe47e94ad89441d253badd52e676f3ccf7932e79b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 09:59:10.540 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 09:59:10.851 [debug] QUERY OK source="media_items" db=961.7ms idle=1540.0ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? ["ERROR: [youtube] qKnVpnVrQSY: This live event will begin in 4 days.\n", ~U[2026-02-03 16:59:09Z], 104641] 09:59:10.852 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":104641},"id":2907,"meta":{},"state":"discard","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":3901891,"event":"job:exception","queue_time":92054420418,"attempt":20,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:59:10.853 [debug] QUERY OK source="settings" db=629.9ms idle=873.9ms UPDATE "settings" SET "yt_dlp_version" = ? WHERE "id" = ? ["2026.01.31", 1] 09:59:10.854 [info] {"args":{},"id":2983,"meta":{},"state":"success","max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","duration":3905383,"event":"job:stop","queue_time":110644446,"attempt":2,"tags":["local_data"]} 09:59:10.870 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":3590327,"event":"job:exception","queue_time":42846053,"attempt":7,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:59:38.009 [error] GenServer {Oban.Registry, {Oban, {:producer, "media_fetching"}}} terminating ** (Exqlite.Error) Database busy UPDATE "oban_jobs" AS o0 SET "state" = ?, "attempted_at" = ?, "attempted_by" = ?, "attempt" = "attempt" + ? WHERE (o0."id" IN (SELECT so0."id" FROM "oban_jobs" AS so0 WHERE (so0."state" = 'available') AND (so0."queue" = ?) AND (so0."attempt" < so0."max_attempts") ORDER BY so0."priority", so0."scheduled_at", so0."id" LIMIT ?)) RETURNING "id", "state", "queue", "worker", "args", "meta", "tags", "errors", "attempt", "attempted_by", "max_attempts", "priority", "attempted_at", "cancelled_at", "completed_at", "discarded_at", "inserted_at", "scheduled_at" (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:1096: Ecto.Adapters.SQL.raise_sql_call_error/1 (ecto_sql 3.12.1) lib/ecto/adapters/sql.ex:994: Ecto.Adapters.SQL.execute/6 (ecto 3.12.5) lib/ecto/repo/queryable.ex:232: Ecto.Repo.Queryable.execute/4 (oban 2.19.4) lib/oban/engines/lite.ex:110: Oban.Engines.Lite.fetch_jobs/3 (oban 2.19.4) lib/oban/engine.ex:252: anonymous fn/4 in Oban.Engine.fetch_jobs/3 (oban 2.19.4) lib/oban/engine.ex:387: anonymous fn/3 in Oban.Engine.with_span/4 (telemetry 1.3.0) /app/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3 (oban 2.19.4) lib/oban/queue/producer.ex:253: Oban.Queue.Producer.start_jobs/1 Last message: :dispatch State: %Oban.Queue.Producer{conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Lite, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: "pinchflat@5df437b600ed", notifier: {Oban.Notifiers.PG, []}, peer: {Oban.Peers.Isolated, []}, plugins: [{Oban.Plugins.Cron, [crontab: [{"56 16 * * *", Pinchflat.YtDlp.UpdateWorker}, {"0 1 * * *", Pinchflat.Downloading.MediaRetentionWorker}, {"0 2 * * *", Pinchflat.Downloading.MediaQualityUpgradeWorker}]]}, {Oban.Plugins.Pruner, [max_age: 2592000]}], prefix: false, queues: [default: [limit: 10], fast_indexing: [limit: 2], media_collection_indexing: [limit: 2], media_fetching: [limit: 2], remote_metadata: [limit: 2], local_data: [limit: 8]], repo: Pinchflat.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, foreman: {:via, Registry, {Oban.Registry, {Oban, {:foreman, "media_fetching"}}}}, meta: %{name: Oban, node: "pinchflat@5df437b600ed", queue: "media_fetching", started_at: ~U[2026-02-03 16:59:05.935345Z], limit: 2, uuid: "9714895e-b5c8-4173-9852-b4515b4fec36", updated_at: ~U[2026-02-03 16:59:26.523647Z], paused: false, refresh_interval: 30000, shutdown_started_at: nil}, name: {:via, Registry, {Oban.Registry, {Oban, {:producer, "media_fetching"}}}}, dispatch_timer: #Reference<0.2833043407.3763339268.164421>, refresh_timer: #Reference<0.2833043407.3763339268.164177>, dispatch_cooldown: 5, running: %{}} 09:59:39.058 [info] {"source":"oban","duration":3121251,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":33} 10:00:00.938 [info] {"source":"oban","duration":496,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:00:09.061 [info] {"source":"oban","duration":1553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:00:39.063 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:00.939 [info] {"source":"oban","duration":398,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:01:09.065 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:39.067 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:40.267 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770138100267538766,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":8,"tags":["media_item","media_fetching","show_in_dashboard"]} 10:01:40.268 [debug] QUERY OK source="media_items" db=0.2ms idle=1200.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" = ?) [89022] 10:01:40.268 [info] User scripts lifecyle file either not present or is empty. Skipping. 10:01:40.269 [debug] QUERY OK source="sources" db=0.4ms idle=1009.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" = ?) [5] 10:01:40.269 [debug] QUERY OK source="media_profiles" db=0.3ms idle=1003.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] 10:01:40.270 [debug] QUERY OK source="media_items" db=0.4ms idle=8.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 [89022] 10:01:40.317 [debug] QUERY OK source="media_metadata" db=0.2ms queue=0.1ms idle=50.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" = ?) [89022] 10:01:40.318 [debug] QUERY OK source="media_profiles" db=0.3ms idle=49.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] 10:01:40.319 [debug] QUERY OK source="settings" db=0.2ms idle=49.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 [] 10:01:40.319 [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 [] 10:01:40.320 [debug] Running yt-dlp command for action: get_downloadable_status 10:01:40.321 [debug] QUERY OK source="settings" db=0.1ms idle=50.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 [] 10:01:40.321 [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 [] 10:01:40.321 [debug] QUERY OK source="settings" db=0.2ms 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 [] 10:01:40.322 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/df/ce/dfceb951486554947636977d3c3fb6f3a4a07f7109215a67fbfbd11eea002069.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 10:01:43.116 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/df/ce/dfceb951486554947636977d3c3fb6f3a4a07f7109215a67fbfbd11eea002069.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 10:01:43.116 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 10:01:43.117 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2849472,"event":"job:exception","queue_time":725808,"attempt":8,"tags":["media_item","media_fetching","show_in_dashboard"]} 10:02:00.940 [info] {"source":"oban","duration":394,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:02:09.069 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:02:39.071 [info] {"source":"oban","duration":1603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:03:00.941 [info] {"source":"oban","duration":568,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:03:09.073 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:03:39.076 [info] {"source":"oban","duration":1575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:04:00.941 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:04:09.077 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:04:39.080 [info] {"source":"oban","duration":1697,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:00.942 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:05:09.081 [info] {"source":"oban","duration":1282,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:39.083 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:06:00.943 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:06:09.086 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:06:22.870 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770138382869798839,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":9,"tags":["media_item","media_fetching","show_in_dashboard"]} 10:06:22.870 [debug] QUERY OK source="media_items" db=0.3ms idle=520.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" = ?) [89022] 10:06:22.871 [info] User scripts lifecyle file either not present or is empty. Skipping. 10:06:22.872 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=522.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" = ?) [5] 10:06:22.872 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=522.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] 10:06:22.873 [debug] QUERY OK source="media_items" db=0.5ms idle=10.5ms 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 [89022] 10:06:22.875 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.3ms 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" = ?) [89022] 10:06:22.875 [debug] QUERY OK source="media_profiles" db=0.2ms idle=4.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] 10:06:22.876 [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 [] 10:06:22.876 [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 [] 10:06:22.877 [debug] Running yt-dlp command for action: get_downloadable_status 10:06:22.877 [debug] QUERY OK source="settings" db=0.1ms 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 [] 10:06:22.878 [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 [] 10:06:22.878 [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 [] 10:06:22.878 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/9f/6c/9f6c586287a43e9d914ac040624e740bd88fef6e9308c855546f173db7e9b73d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 10:06:25.525 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/9f/6c/9f6c586287a43e9d914ac040624e740bd88fef6e9308c855546f173db7e9b73d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 10:06:25.525 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 10:06:25.526 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2656218,"event":"job:exception","queue_time":751326,"attempt":9,"tags":["media_item","media_fetching","show_in_dashboard"]} 10:06:39.087 [info] {"source":"oban","duration":1169,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:00.945 [info] {"source":"oban","duration":568,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:07:09.089 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:39.091 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:08:00.947 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:08:09.093 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:08:39.095 [info] {"source":"oban","duration":1328,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:09:00.948 [info] {"source":"oban","duration":446,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:09:09.097 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:09:39.099 [info] {"source":"oban","duration":1259,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:10:00.949 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:10:09.102 [info] {"source":"oban","duration":1750,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:10:39.104 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:11:00.950 [info] {"source":"oban","duration":390,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:11:09.106 [info] {"source":"oban","duration":1325,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:11:39.109 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:12:00.951 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:12:09.110 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:12:39.112 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:13:00.952 [info] {"source":"oban","duration":610,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:13:09.114 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:13:39.116 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:14:00.954 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:14:09.118 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:14:39.120 [info] {"source":"oban","duration":1042,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:00.955 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:15:09.122 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:39.124 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:41.057 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770138941057571869,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":10,"tags":["media_item","media_fetching","show_in_dashboard"]} 10:15:41.058 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=708.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" = ?) [89022] 10:15:41.059 [info] User scripts lifecyle file either not present or is empty. Skipping. 10:15:41.059 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=709.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" = ?) [5] 10:15:41.060 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=710.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] 10:15:41.061 [debug] QUERY OK source="media_items" db=0.6ms idle=11.4ms 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 [89022] 10:15:41.063 [debug] QUERY OK source="media_metadata" db=0.2ms queue=0.1ms idle=5.7ms 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" = ?) [89022] 10:15:41.064 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 10:15:41.065 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 10:15:41.065 [debug] QUERY OK source="settings" db=0.2ms 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 [] 10:15:41.066 [debug] Running yt-dlp command for action: get_downloadable_status 10:15:41.067 [debug] QUERY OK source="settings" db=0.2ms idle=5.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 [] 10:15:41.067 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=4.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 [] 10:15:41.068 [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 [] 10:15:41.068 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/9c/18/9c188fae95b377c60abc4d9c19b507fa2aa31480c1dfa09d755650d0f0171f6b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 10:15:43.729 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/9c/18/9c188fae95b377c60abc4d9c19b507fa2aa31480c1dfa09d755650d0f0171f6b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 10:15:43.729 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 10:15:43.730 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2671983,"event":"job:exception","queue_time":529434,"attempt":10,"tags":["media_item","media_fetching","show_in_dashboard"]} 10:16:00.956 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:16:09.126 [info] {"source":"oban","duration":1067,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:16:39.128 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:17:00.957 [info] {"source":"oban","duration":410,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:17:09.130 [info] {"source":"oban","duration":1229,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:17:39.132 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:18:00.958 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:18:09.134 [info] {"source":"oban","duration":1253,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:18:39.137 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:19:00.959 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:19:09.138 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:19:39.140 [info] {"source":"oban","duration":1309,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:20:00.959 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:20:09.143 [info] {"source":"oban","duration":1533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:20:39.144 [info] {"source":"oban","duration":1182,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:21:00.960 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:21:09.147 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:21:39.148 [info] {"source":"oban","duration":1356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:22:00.961 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:22:09.150 [info] {"source":"oban","duration":1128,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:22:39.152 [info] {"source":"oban","duration":1117,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:23:00.962 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:23:09.154 [info] {"source":"oban","duration":930,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:23:39.156 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:24:00.963 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:24:09.158 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:24:39.161 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:25:00.964 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:25:09.163 [info] {"source":"oban","duration":1517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:25:39.164 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:26:00.966 [info] {"source":"oban","duration":395,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:26:09.166 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:26:39.168 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:27:00.967 [info] {"source":"oban","duration":395,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:27:09.171 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:27:39.173 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:28:00.968 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:28:09.174 [info] {"source":"oban","duration":1316,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:28:39.176 [info] {"source":"oban","duration":1189,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:29:00.968 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:29:09.179 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:29:39.181 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:30:00.969 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:30:09.182 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:30:39.184 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:31:00.971 [info] {"source":"oban","duration":418,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:31:09.186 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:31:39.188 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:32:00.972 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:32:09.190 [info] {"source":"oban","duration":1153,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:32:39.193 [info] {"source":"oban","duration":1631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:33:00.973 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:33:09.195 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:33:39.197 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:34:00.974 [info] {"source":"oban","duration":392,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:34:09.199 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:34:13.440 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770140053440368221,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":11,"tags":["media_item","media_fetching","show_in_dashboard"]} 10:34:13.441 [debug] QUERY OK source="media_items" db=0.6ms queue=0.1ms idle=1091.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" = ?) [89022] 10:34:13.442 [info] User scripts lifecyle file either not present or is empty. Skipping. 10:34:13.443 [debug] QUERY OK source="sources" db=0.6ms idle=1012.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" = ?) [5] 10:34:13.444 [debug] QUERY OK source="media_profiles" db=0.5ms idle=1006.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] 10:34:13.445 [debug] QUERY OK source="media_items" db=0.7ms 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 [89022] 10:34:13.447 [debug] QUERY OK source="media_metadata" db=0.2ms queue=0.1ms idle=6.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" = ?) [89022] 10:34:13.447 [debug] QUERY OK source="media_profiles" db=0.3ms idle=5.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] 10:34:13.448 [debug] QUERY OK source="settings" db=0.2ms 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 [] 10:34:13.449 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=4.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 [] 10:34:13.449 [debug] Running yt-dlp command for action: get_downloadable_status 10:34:13.450 [debug] QUERY OK source="settings" db=0.2ms idle=5.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 [] 10:34:13.451 [debug] QUERY OK source="settings" db=0.2ms 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 [] 10:34:13.451 [debug] QUERY OK source="settings" db=0.3ms 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 [] 10:34:13.452 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/a8/80/a880ffb9da9bae4bc1097e426e94b1f1c1d2e157f9367aa78f4d167fd7125f09.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 10:34:16.243 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/a8/80/a880ffb9da9bae4bc1097e426e94b1f1c1d2e157f9367aa78f4d167fd7125f09.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 10:34:16.243 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 10:34:16.245 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2803593,"event":"job:exception","queue_time":708836,"attempt":11,"tags":["media_item","media_fetching","show_in_dashboard"]} 10:34:39.201 [info] {"source":"oban","duration":1573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:35:00.975 [info] {"source":"oban","duration":481,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:35:09.203 [info] {"source":"oban","duration":1558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:35:39.205 [info] {"source":"oban","duration":1560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:36:00.976 [info] {"source":"oban","duration":387,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:36:09.206 [info] {"source":"oban","duration":1106,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:36:39.208 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:37:00.977 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:37:09.210 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:37:39.212 [info] {"source":"oban","duration":1327,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:38:00.977 [info] {"source":"oban","duration":238,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:38:09.214 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:38:39.216 [info] {"source":"oban","duration":1149,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:39:00.979 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:39:09.218 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:39:39.220 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:40:00.979 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:40:09.222 [info] {"source":"oban","duration":1102,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:40:39.225 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:41:00.980 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:41:09.226 [info] {"source":"oban","duration":1266,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:41:39.228 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:42:00.982 [info] {"source":"oban","duration":399,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:42:09.230 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:42:39.232 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:43:00.983 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:43:09.235 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:43:39.236 [info] {"source":"oban","duration":1331,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:44:00.983 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:44:09.238 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:44:39.241 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:45:00.984 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:45:09.242 [info] {"source":"oban","duration":1253,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:45:39.245 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:46:00.985 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:46:09.246 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:46:39.248 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:47:00.986 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:47:09.250 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:47:39.252 [info] {"source":"oban","duration":1110,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:48:00.987 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:48:09.254 [info] {"source":"oban","duration":1148,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:48:39.257 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:49:00.988 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:49:09.258 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:49:39.260 [info] {"source":"oban","duration":1345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:50:00.989 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:50:09.263 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:50:39.264 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:51:00.990 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:51:09.266 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:51:39.268 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:52:00.992 [info] {"source":"oban","duration":433,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:52:09.270 [info] {"source":"oban","duration":1183,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:52:39.272 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:53:00.993 [info] {"source":"oban","duration":413,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:53:09.274 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:53:39.276 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:54:00.993 [info] {"source":"oban","duration":395,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:54:09.278 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:54:39.280 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:55:00.995 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:55:09.282 [info] {"source":"oban","duration":1197,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:55:39.284 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:56:00.996 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:56:09.287 [info] {"source":"oban","duration":1812,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:56:39.289 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:57:00.997 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:57:09.291 [info] {"source":"oban","duration":1197,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:57:39.293 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:58:00.997 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:58:09.295 [info] {"source":"oban","duration":1317,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:58:39.297 [info] {"source":"oban","duration":1060,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:59:00.999 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:59:09.299 [info] {"source":"oban","duration":1121,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:59:39.302 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:00:01.000 [info] {"source":"oban","duration":388,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:00:09.303 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:00:39.305 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:01:00.000 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:01:09.308 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:01:39.309 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:02:00.001 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:02:09.311 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:02:39.313 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:03:00.003 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:03:09.316 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:03:39.333 [info] {"source":"oban","duration":17369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":1} 11:04:00.004 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:04:09.335 [info] {"source":"oban","duration":1052,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:04:39.337 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:05:00.004 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:05:09.340 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:05:39.342 [info] {"source":"oban","duration":1723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:06:00.005 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:06:09.345 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:06:39.346 [info] {"source":"oban","duration":1362,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:00.006 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:07:09.349 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:39.350 [info] {"source":"oban","duration":1089,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:08:00.008 [info] {"source":"oban","duration":404,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:08:09.352 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:08:39.355 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:09:00.009 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:09:09.356 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:09:39.358 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:10:00.009 [info] {"source":"oban","duration":233,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:10:09.360 [info] {"source":"oban","duration":1181,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:10:39.362 [info] {"source":"oban","duration":1235,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:00.010 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:11:09.364 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:39.366 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:46.207 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770142306207141391,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":12,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:11:46.208 [debug] QUERY OK source="media_items" db=0.3ms idle=858.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" = ?) [89022] 11:11:46.208 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:11:46.209 [debug] QUERY OK source="sources" db=0.3ms idle=859.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" = ?) [5] 11:11:46.209 [debug] QUERY OK source="media_profiles" db=0.3ms idle=859.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] 11:11:46.211 [debug] QUERY OK source="media_items" db=0.7ms idle=10.4ms 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 [89022] 11:11:46.212 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.7ms 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" = ?) [89022] 11:11:46.213 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 11:11:46.214 [debug] QUERY OK source="settings" db=0.3ms idle=4.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 [] 11:11:46.215 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 11:11:46.215 [debug] Running yt-dlp command for action: get_downloadable_status 11:11:46.216 [debug] QUERY OK source="settings" db=0.2ms idle=5.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 [] 11:11:46.217 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 11:11:46.217 [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 [] 11:11:46.218 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/d3/c9/d3c99c3d0574067be787e0993dcd7598174c4633c8badcd4264aeb7a8edf92a7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:11:48.814 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/d3/c9/d3c99c3d0574067be787e0993dcd7598174c4633c8badcd4264aeb7a8edf92a7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 11:11:48.815 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 11:11:48.816 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2608251,"event":"job:exception","queue_time":961394,"attempt":12,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:12:00.012 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:12:09.368 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:12:39.370 [info] {"source":"oban","duration":1055,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:13:00.012 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:13:09.373 [info] {"source":"oban","duration":1564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:13:39.374 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:14:00.014 [info] {"source":"oban","duration":442,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:14:09.377 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:14:39.379 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:15:00.015 [info] {"source":"oban","duration":389,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:15:09.380 [info] {"source":"oban","duration":1263,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:15:39.383 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:16:00.015 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:16:09.384 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:16:39.386 [info] {"source":"oban","duration":1082,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:17:00.016 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:17:09.388 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:17:39.392 [info] {"source":"oban","duration":2588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:18:00.017 [info] {"source":"oban","duration":243,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:18:09.393 [info] {"source":"oban","duration":1052,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:18:39.396 [info] {"source":"oban","duration":1638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:19:00.019 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:19:09.397 [info] {"source":"oban","duration":1298,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:19:39.399 [info] {"source":"oban","duration":1126,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:20:00.019 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:20:09.401 [info] {"source":"oban","duration":1147,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:20:39.403 [info] {"source":"oban","duration":1114,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:21:00.020 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:21:09.405 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:21:39.407 [info] {"source":"oban","duration":1115,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:22:00.021 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:22:09.410 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:22:39.412 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:23:00.023 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:23:09.413 [info] {"source":"oban","duration":1347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:23:39.415 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:24:00.023 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:24:09.417 [info] {"source":"oban","duration":1220,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:24:39.419 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:25:00.024 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:25:09.422 [info] {"source":"oban","duration":1362,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:25:39.424 [info] {"source":"oban","duration":1612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:26:00.025 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:26:09.425 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:26:39.427 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:27:00.026 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:27:09.429 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:27:39.431 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:28:00.027 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:28:09.434 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:28:39.435 [info] {"source":"oban","duration":1188,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:00.028 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:29:09.437 [info] {"source":"oban","duration":1021,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:39.440 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:30:00.030 [info] {"source":"oban","duration":388,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:30:09.441 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:30:39.444 [info] {"source":"oban","duration":1627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:31:00.031 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:31:09.445 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:31:39.447 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:32:00.031 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:32:09.449 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:32:39.451 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:33:00.032 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:33:09.453 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:33:39.455 [info] {"source":"oban","duration":1238,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:34:00.033 [info] {"source":"oban","duration":145,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:34:09.457 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:34:39.459 [info] {"source":"oban","duration":1006,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:35:00.034 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:35:09.462 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:35:39.463 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:36:00.036 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:36:09.465 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:36:39.467 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:37:00.037 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:37:09.469 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:37:39.472 [info] {"source":"oban","duration":2269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:38:00.038 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:38:09.475 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:38:39.476 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:39:00.039 [info] {"source":"oban","duration":383,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:39:09.478 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:39:39.480 [info] {"source":"oban","duration":1179,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:40:00.039 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:40:09.483 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:40:39.484 [info] {"source":"oban","duration":1324,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:41:00.040 [info] {"source":"oban","duration":137,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:41:09.486 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:41:39.489 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:42:00.041 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:42:09.491 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:42:39.492 [info] {"source":"oban","duration":1215,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:43:00.043 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:43:09.494 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:43:39.496 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:44:00.044 [info] {"source":"oban","duration":398,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:44:09.498 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:44:39.500 [info] {"source":"oban","duration":1092,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:45:00.045 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:45:09.502 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:45:39.504 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:46:00.045 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:46:09.507 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:46:39.509 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:47:00.046 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:47:09.510 [info] {"source":"oban","duration":1190,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:47:39.513 [info] {"source":"oban","duration":1708,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:48:00.048 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:48:09.515 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:48:39.517 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:49:00.048 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:49:09.520 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:49:39.522 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:50:00.049 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:50:09.523 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:50:39.526 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:51:00.050 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:51:09.527 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:51:39.529 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:52:00.051 [info] {"source":"oban","duration":383,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:52:09.532 [info] {"source":"oban","duration":1633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:52:39.533 [info] {"source":"oban","duration":1159,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:53:00.053 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:53:09.536 [info] {"source":"oban","duration":1601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:53:39.537 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:54:00.053 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:54:09.538 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:54:39.541 [info] {"source":"oban","duration":1606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:55:00.054 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:55:09.542 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:55:39.545 [info] {"source":"oban","duration":1376,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:56:00.056 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:56:09.546 [info] {"source":"oban","duration":1175,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:56:39.548 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:57:00.056 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:57:09.550 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:57:39.553 [info] {"source":"oban","duration":1505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:58:00.057 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:58:09.554 [info] {"source":"oban","duration":1197,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:58:39.556 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:59:00.058 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:59:09.558 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:59:39.561 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:00:00.059 [info] {"source":"oban","duration":396,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:00:09.562 [info] {"source":"oban","duration":1219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:00:39.564 [info] {"source":"oban","duration":1114,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:01:00.061 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:01:09.566 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:01:39.568 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:02:00.062 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:02:09.570 [info] {"source":"oban","duration":1227,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:02:39.573 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:03:00.062 [info] {"source":"oban","duration":382,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:03:09.575 [info] {"source":"oban","duration":1637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:03:39.576 [info] {"source":"oban","duration":1246,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:04:00.063 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:04:09.579 [info] {"source":"oban","duration":1682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:04:39.581 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:05:00.064 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:05:09.583 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:05:39.585 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:06:00.065 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:06:09.587 [info] {"source":"oban","duration":1191,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:06:39.589 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:07:00.066 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:07:09.591 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:07:39.593 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:08:00.067 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:08:09.595 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:08:39.597 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:09:00.068 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:09:09.599 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:09:39.602 [info] {"source":"oban","duration":1524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:10:00.070 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:10:09.603 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:10:39.606 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:11:00.071 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:11:09.608 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:11:39.610 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:12:00.071 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:12:09.611 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:12:39.613 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:13:00.072 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:13:09.616 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:13:39.617 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:14:00.073 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:14:09.620 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:14:39.621 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:15:00.074 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:15:09.624 [info] {"source":"oban","duration":1648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:15:39.626 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:16:00.075 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:16:09.627 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:16:39.629 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:17:00.077 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:17:09.631 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:17:39.633 [info] {"source":"oban","duration":882,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:18:00.077 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:18:09.635 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:18:39.637 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:19:00.078 [info] {"source":"oban","duration":272,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:19:09.639 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:19:39.642 [info] {"source":"oban","duration":1709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:20:00.079 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:20:09.644 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:20:39.646 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:21:00.080 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:21:01.922 [info] {"args":{"id":106309},"id":2979,"meta":{},"system_time":1770146461922786847,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":14,"tags":["media_item","media_fetching","show_in_dashboard"]} 12:21:01.923 [debug] QUERY OK source="media_items" db=0.5ms idle=573.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" = ?) [106309] 12:21:01.924 [info] User scripts lifecyle file either not present or is empty. Skipping. 12:21:01.925 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=574.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" = ?) [5] 12:21:01.925 [debug] QUERY OK source="media_profiles" db=0.3ms idle=575.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] 12:21:01.926 [debug] QUERY OK source="media_items" db=0.5ms idle=9.5ms 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 [106309] 12:21:01.927 [debug] QUERY OK source="media_metadata" db=0.1ms idle=5.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" = ?) [106309] 12:21:01.928 [debug] QUERY OK source="media_profiles" db=0.2ms idle=4.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] 12:21:01.929 [debug] QUERY OK source="settings" db=0.2ms 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 [] 12:21:01.929 [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 [] 12:21:01.930 [debug] Running yt-dlp command for action: get_downloadable_status 12:21:01.930 [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 [] 12:21:01.931 [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 [] 12:21:01.931 [debug] QUERY OK source="settings" db=0.2ms 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 [] 12:21:01.932 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/18/2f/182f2baf7530db96e8b1e3cf98ebccc658e74e913afcc641687924b8fe2ae543.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 12:21:07.761 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/18/2f/182f2baf7530db96e8b1e3cf98ebccc658e74e913afcc641687924b8fe2ae543.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 12:21:07.761 [debug] Running yt-dlp command for action: download 12:21:07.762 [debug] QUERY OK source="settings" db=0.3ms 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 [] 12:21:07.763 [debug] QUERY OK source="settings" db=0.3ms idle=829.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 [] 12:21:07.763 [debug] QUERY OK source="settings" db=0.3ms idle=413.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 [] 12:21:07.764 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/31/c0/31c0daa7a1f66413449979ad087a75206dd66d3f73fbe629156eee45d2f255df.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 12:21:09.648 [info] {"source":"oban","duration":1662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:21:18.228 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-auto-subs --write-subs --convert-subs srt --sub-langs en --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S]-thumb.%(ext)S --embed-thumbnail --convert-thumbnail jpg --write-info-json --clean-info-json --embed-metadata --remux-video mp4 --format-sort res:2160,+codec:avc:m4a --format bestvideo*+bestaudio/best --output /downloads/Miniscule Season 2/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/31/c0/31c0daa7a1f66413449979ad087a75206dd66d3f73fbe629156eee45d2f255df.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] [jsc] Error solving n challenge request using "deno" provider: Error running deno process (returncode: 1): error: Uncaught (in promise) "found 0 sig function possibilities". input = NChallengeInput(player_url='https://www.youtube.com/s/player/4e51e895/player_ias.vflset/en_US/base.js', challenges=['j9r0RT2_C3FTY7qma', '-u22MOST1BGzrMNJZ', '2787Lbzd0MpVAYonD']) Please report this issue on https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using yt-dlp -U WARNING: [youtube] lLIvNqaXysQ: n challenge solving failed: Some formats may be missing. Ensure you have a supported JavaScript runtime and challenge solver script distribution installed. Review any warnings presented before this message. For more details, refer to https://github.com/yt-dlp/yt-dlp/wiki/EJS 12:21:18.237 [debug] Running yt-dlp command for action: download_thumbnail 12:21:18.238 [debug] QUERY OK source="settings" db=0.4ms idle=888.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 [] 12:21:18.239 [debug] QUERY OK source="settings" db=0.2ms idle=889.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 [] 12:21:18.239 [debug] QUERY OK source="settings" db=0.2ms idle=889.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 [] 12:21:18.239 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/106309/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/ae/bb/aebbc3ebf7fbbf1171423c7df1891133a93225b8e16725ef5463854d575ffb76.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 12:21:24.336 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=lLIvNqaXysQ --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/106309/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/ae/bb/aebbc3ebf7fbbf1171423c7df1891133a93225b8e16725ef5463854d575ffb76.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: 12:21:24.338 [debug] QUERY OK db=0.1ms queue=0.1ms idle=988.2ms begin [] 12:21:24.350 [debug] QUERY OK source="media_items" db=12.4ms UPDATE "media_items" SET "media_downloaded_at" = ?, "media_filepath" = ?, "metadata_filepath" = ?, "thumbnail_filepath" = ?, "updated_at" = ? WHERE "id" = ? [~U[2026-02-03 19:21:18Z], "/downloads/Miniscule Season 2/2026-01-24 A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation/A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation [lLIvNqaXysQ].mp4", "/downloads/Miniscule Season 2/2026-01-24 A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation/A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation [lLIvNqaXysQ].info.json", "/downloads/Miniscule Season 2/2026-01-24 A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation/A Ladybug in Rainy Paris 🐞☂️ Minuscule | 20' Compilation [lLIvNqaXysQ]-thumb.jpg", ~U[2026-02-03 19:21:24Z], 106309] 12:21:24.351 [debug] QUERY OK source="media_metadata" db=0.7ms 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/106309/metadata.json.gz", "/config/metadata/media_items/106309/thumbnail.jpg", 106309, ~U[2026-02-03 19:21:24Z], ~U[2026-02-03 19:21:24Z]] 12:21:24.352 [debug] QUERY OK db=0.5ms commit [] 12:21:24.354 [debug] QUERY OK source="media_items" db=1.3ms idle=1003.3ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? [nil, ~U[2026-02-03 19:21:24Z], 106309] 12:21:24.356 [debug] QUERY OK source="media_items" db=2.2ms idle=1005.0ms UPDATE "media_items" SET "media_size_bytes" = ?, "updated_at" = ? WHERE "id" = ? [114365897, ~U[2026-02-03 19:21:24Z], 106309] 12:21:24.357 [info] User scripts lifecyle file either not present or is empty. Skipping. 12:21:24.358 [info] {"args":{"id":106309},"id":2979,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":22434586,"event":"job:stop","queue_time":464429,"attempt":14,"tags":["media_item","media_fetching","show_in_dashboard"]} 12:21:39.650 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:22:00.081 [info] {"source":"oban","duration":244,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:22:09.651 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:22:39.653 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:23:00.082 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:23:09.655 [info] {"source":"oban","duration":887,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:23:39.657 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:24:00.083 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:24:09.660 [info] {"source":"oban","duration":2272,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:24:39.663 [info] {"source":"oban","duration":1576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:00.084 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:25:09.664 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:28.481 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770146728481360788,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":13,"tags":["media_item","media_fetching","show_in_dashboard"]} 12:25:28.482 [debug] QUERY OK source="media_items" db=0.6ms idle=1132.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" = ?) [89022] 12:25:28.483 [info] User scripts lifecyle file either not present or is empty. Skipping. 12:25:28.484 [debug] QUERY OK source="sources" db=0.5ms idle=1012.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" = ?) [5] 12:25:28.484 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=1006.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] 12:25:28.486 [debug] QUERY OK source="media_items" db=0.7ms idle=11.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 [89022] 12:25:28.487 [debug] QUERY OK source="media_metadata" db=0.2ms idle=6.3ms 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" = ?) [89022] 12:25:28.488 [debug] QUERY OK source="media_profiles" db=0.3ms idle=5.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] 12:25:28.489 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 12:25:28.489 [debug] QUERY OK source="settings" db=0.3ms idle=4.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 [] 12:25:28.490 [debug] Running yt-dlp command for action: get_downloadable_status 12:25:28.491 [debug] QUERY OK source="settings" db=0.2ms idle=5.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 [] 12:25:28.492 [debug] QUERY OK source="settings" db=0.2ms queue=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 [] 12:25:28.492 [debug] QUERY OK source="settings" db=0.2ms 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 [] 12:25:28.493 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/30/40/30403b45b8accd6ff4433bef383605e9d093af745bbe110cc3fd401c70703792.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 12:25:31.042 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/30/40/30403b45b8accd6ff4433bef383605e9d093af745bbe110cc3fd401c70703792.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 12:25:31.043 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 12:25:31.044 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2562220,"event":"job:exception","queue_time":663941,"attempt":13,"tags":["media_item","media_fetching","show_in_dashboard"]} 12:25:39.666 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:26:00.086 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:26:09.668 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:26:39.670 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:27:00.086 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:27:09.672 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:27:39.675 [info] {"source":"oban","duration":1599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:28:00.087 [info] {"source":"oban","duration":291,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:28:09.678 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:28:39.679 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:29:00.088 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:29:09.682 [info] {"source":"oban","duration":1533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:29:39.683 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:30:00.089 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:30:09.686 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:30:39.688 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:31:00.090 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:31:09.690 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:31:39.692 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:32:00.091 [info] {"source":"oban","duration":395,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:32:09.694 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:32:39.696 [info] {"source":"oban","duration":1655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:33:00.093 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:33:09.698 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:33:39.700 [info] {"source":"oban","duration":1563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:34:00.093 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:34:09.702 [info] {"source":"oban","duration":1556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:34:39.703 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:35:00.094 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:35:09.706 [info] {"source":"oban","duration":1630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:35:39.708 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:36:00.095 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:36:09.710 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:36:39.712 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:37:00.096 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:37:09.714 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:37:39.716 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:38:00.097 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:38:09.718 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:38:39.720 [info] {"source":"oban","duration":1649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:39:00.098 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:39:09.722 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:39:39.724 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:40:00.100 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:40:09.727 [info] {"source":"oban","duration":1657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:40:39.729 [info] {"source":"oban","duration":1595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:41:00.101 [info] {"source":"oban","duration":412,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:41:09.731 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:41:39.732 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:42:00.101 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:42:09.734 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:42:39.736 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:43:00.103 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:43:09.738 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:43:39.740 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:44:00.103 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:44:09.742 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:44:39.745 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:45:00.104 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:45:09.747 [info] {"source":"oban","duration":1331,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:45:39.749 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:46:00.105 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:46:09.751 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:46:39.754 [info] {"source":"oban","duration":1896,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:47:00.106 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:47:09.756 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:47:39.758 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:48:00.108 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:48:09.760 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:48:39.762 [info] {"source":"oban","duration":1210,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:49:00.108 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:49:09.765 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:49:39.766 [info] {"source":"oban","duration":911,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:50:00.109 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:50:09.768 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:50:39.770 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:51:00.110 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:51:09.772 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:51:39.775 [info] {"source":"oban","duration":1727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:52:00.111 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:52:09.777 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:52:39.780 [info] {"source":"oban","duration":1465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:53:00.112 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:53:09.781 [info] {"source":"oban","duration":1225,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:53:39.783 [info] {"source":"oban","duration":1337,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:54:00.113 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:54:09.786 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:54:39.787 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:55:00.115 [info] {"source":"oban","duration":378,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:55:09.789 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:55:39.791 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:56:00.116 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:56:09.794 [info] {"source":"oban","duration":1565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:56:39.796 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:57:00.117 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:57:09.797 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:57:39.799 [info] {"source":"oban","duration":1144,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:58:00.117 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:58:09.801 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:58:39.803 [info] {"source":"oban","duration":911,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:59:00.119 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:59:09.805 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:59:39.808 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:00:00.120 [info] {"source":"oban","duration":408,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:00:09.809 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:00:39.812 [info] {"source":"oban","duration":1509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:01:00.120 [info] {"source":"oban","duration":226,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:01:09.813 [info] {"source":"oban","duration":1221,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:01:39.816 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:02:00.122 [info] {"source":"oban","duration":390,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:02:09.818 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:02:39.819 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:03:00.123 [info] {"source":"oban","duration":381,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:03:09.822 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:03:39.823 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:04:00.124 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:04:09.825 [info] {"source":"oban","duration":1124,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:04:39.827 [info] {"source":"oban","duration":1250,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:05:00.125 [info] {"source":"oban","duration":403,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:05:09.829 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:05:39.831 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:06:00.126 [info] {"source":"oban","duration":395,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:06:09.833 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:06:39.835 [info] {"source":"oban","duration":772,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:07:00.127 [info] {"source":"oban","duration":398,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:07:09.837 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:07:39.840 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:08:00.127 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:08:09.842 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:08:39.843 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:09:00.128 [info] {"source":"oban","duration":254,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:09:09.845 [info] {"source":"oban","duration":1263,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:09:39.848 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:10:00.130 [info] {"source":"oban","duration":517,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:10:09.850 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:10:39.851 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:11:00.130 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:11:09.853 [info] {"source":"oban","duration":1282,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:11:39.855 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:12:00.132 [info] {"source":"oban","duration":392,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:12:09.857 [info] {"source":"oban","duration":1166,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:12:39.859 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:13:00.133 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:13:09.861 [info] {"source":"oban","duration":1066,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:13:39.863 [info] {"source":"oban","duration":1009,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:14:00.134 [info] {"source":"oban","duration":396,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:14:09.865 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:14:39.867 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:15:00.135 [info] {"source":"oban","duration":397,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:15:09.869 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:15:39.871 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:16:00.136 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:16:09.874 [info] {"source":"oban","duration":1517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:16:39.876 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:17:00.136 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:17:09.877 [info] {"source":"oban","duration":1241,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:17:39.880 [info] {"source":"oban","duration":1361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:18:00.138 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:18:09.882 [info] {"source":"oban","duration":1541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:18:39.884 [info] {"source":"oban","duration":1755,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:19:00.139 [info] {"source":"oban","duration":400,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:19:09.887 [info] {"source":"oban","duration":1574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:19:39.889 [info] {"source":"oban","duration":1465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:20:00.140 [info] {"source":"oban","duration":399,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:20:09.890 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:20:39.892 [info] {"source":"oban","duration":1159,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:21:00.141 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:21:09.895 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:21:39.897 [info] {"source":"oban","duration":1626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:22:00.141 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:22:09.898 [info] {"source":"oban","duration":1246,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:22:39.900 [info] {"source":"oban","duration":983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:23:00.142 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:23:09.902 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:23:39.905 [info] {"source":"oban","duration":1520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:24:00.144 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:24:09.907 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:24:39.909 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:25:00.145 [info] {"source":"oban","duration":497,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:25:09.910 [info] {"source":"oban","duration":1324,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:25:39.913 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:26:00.145 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:26:09.914 [info] {"source":"oban","duration":1074,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:26:39.917 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:27:00.147 [info] {"source":"oban","duration":387,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:27:09.918 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:27:39.920 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:28:00.148 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:28:09.922 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:28:39.924 [info] {"source":"oban","duration":1323,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:29:00.148 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:29:09.926 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:29:39.929 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:30:00.149 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:30:09.930 [info] {"source":"oban","duration":895,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:30:39.932 [info] {"source":"oban","duration":1227,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:31:00.150 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:31:09.934 [info] {"source":"oban","duration":1325,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:31:39.936 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:32:00.152 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:32:09.938 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:32:39.941 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:33:00.152 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:33:09.943 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:33:39.945 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:34:00.153 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:34:09.946 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:34:39.949 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:35:00.155 [info] {"source":"oban","duration":420,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:35:09.951 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:35:39.952 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:36:00.155 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:36:09.954 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:36:39.956 [info] {"source":"oban","duration":1049,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:37:00.156 [info] {"source":"oban","duration":335,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:37:09.958 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:37:39.960 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:38:00.157 [info] {"source":"oban","duration":243,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:38:09.963 [info] {"source":"oban","duration":1580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:38:39.964 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:39:00.159 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:39:09.966 [info] {"source":"oban","duration":1104,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:39:39.968 [info] {"source":"oban","duration":901,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:40:00.159 [info] {"source":"oban","duration":303,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:40:09.971 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:40:39.973 [info] {"source":"oban","duration":1598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:41:00.161 [info] {"source":"oban","duration":392,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:41:09.975 [info] {"source":"oban","duration":1569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:41:39.977 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:42:00.161 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:42:09.978 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:42:39.980 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:43:00.162 [info] {"source":"oban","duration":253,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:43:09.982 [info] {"source":"oban","duration":1306,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:43:39.985 [info] {"source":"oban","duration":1548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:44:00.163 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:44:09.987 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:44:39.988 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:45:00.165 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:45:09.990 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:45:39.992 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:46:00.165 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:46:09.994 [info] {"source":"oban","duration":1272,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:46:39.996 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:47:00.166 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:47:09.998 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:47:40.000 [info] {"source":"oban","duration":1061,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:48:00.167 [info] {"source":"oban","duration":240,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:48:10.002 [info] {"source":"oban","duration":1095,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:48:40.004 [info] {"source":"oban","duration":1309,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:49:00.168 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:49:10.007 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:49:40.008 [info] {"source":"oban","duration":1204,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:50:00.170 [info] {"source":"oban","duration":407,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:50:10.011 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:50:40.012 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:51:00.170 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:51:10.014 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:51:40.017 [info] {"source":"oban","duration":1633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:52:00.171 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:52:10.019 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:52:40.020 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:53:00.172 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:53:10.022 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:53:40.025 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:54:00.174 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:54:10.026 [info] {"source":"oban","duration":898,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:54:40.028 [info] {"source":"oban","duration":1127,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:55:00.175 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:55:10.030 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:55:40.032 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:56:00.175 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:56:10.034 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:56:40.037 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:57:00.176 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:57:10.039 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:57:40.041 [info] {"source":"oban","duration":1570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:58:00.177 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:58:10.042 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:58:40.044 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:59:00.179 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:59:10.047 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:59:40.048 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:00:00.180 [info] {"source":"oban","duration":374,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:00:10.050 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:00:40.052 [info] {"source":"oban","duration":1197,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:01:00.181 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:01:10.054 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:01:40.056 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:02:00.182 [info] {"source":"oban","duration":510,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:02:10.058 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:02:40.060 [info] {"source":"oban","duration":1125,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:03:00.183 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:03:10.062 [info] {"source":"oban","duration":894,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:03:40.064 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:04:00.183 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:04:10.066 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:04:40.069 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:05:00.185 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:05:10.071 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:05:40.073 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:06:00.186 [info] {"source":"oban","duration":411,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:06:10.074 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:06:40.077 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:07:00.187 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:07:10.078 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:07:40.080 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:08:00.188 [info] {"source":"oban","duration":453,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:08:10.083 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:08:40.085 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:09:00.189 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:09:10.087 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:09:40.089 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:10:00.190 [info] {"source":"oban","duration":386,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:10:10.090 [info] {"source":"oban","duration":867,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:10:40.092 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:11:00.190 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:11:10.094 [info] {"source":"oban","duration":1181,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:11:40.096 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:12:00.191 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:12:10.099 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:12:40.100 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:13:00.192 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:13:10.102 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:13:40.105 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:14:00.194 [info] {"source":"oban","duration":488,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:14:10.106 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:14:40.109 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:15:00.194 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:15:10.110 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:15:40.113 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:16:00.195 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:16:10.115 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:16:40.116 [info] {"source":"oban","duration":1189,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:17:00.196 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:17:10.118 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:17:40.121 [info] {"source":"oban","duration":1367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:18:00.198 [info] {"source":"oban","duration":462,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:18:10.122 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:18:40.124 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:19:00.203 [info] {"source":"oban","duration":3409,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:19:10.126 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:19:40.128 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:20:00.205 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:20:10.130 [info] {"source":"oban","duration":1158,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:20:40.132 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:21:00.206 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:21:10.135 [info] {"source":"oban","duration":1661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:21:40.138 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:22:00.208 [info] {"source":"oban","duration":491,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:22:10.139 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:22:40.142 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:23:00.208 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:23:10.143 [info] {"source":"oban","duration":1144,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:23:40.145 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:24:00.210 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:24:10.147 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:24:40.149 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:25:00.210 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:25:10.151 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:25:40.154 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:26:00.211 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:26:10.155 [info] {"source":"oban","duration":1003,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:26:40.158 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:27:00.212 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:27:10.159 [info] {"source":"oban","duration":1149,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:27:40.161 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:28:00.213 [info] {"source":"oban","duration":272,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:28:10.163 [info] {"source":"oban","duration":875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:28:40.165 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:29:00.214 [info] {"source":"oban","duration":251,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:29:10.168 [info] {"source":"oban","duration":1625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:29:40.170 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:30:00.216 [info] {"source":"oban","duration":362,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:30:10.172 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:30:40.174 [info] {"source":"oban","duration":1550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:31:00.216 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:31:10.176 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:31:40.177 [info] {"source":"oban","duration":1119,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:32:00.217 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:32:10.180 [info] {"source":"oban","duration":1505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:32:40.182 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:33:00.218 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:33:10.184 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:33:40.186 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:34:00.220 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:34:10.187 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:34:40.189 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:35:00.221 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:35:10.191 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:35:40.193 [info] {"source":"oban","duration":913,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:36:00.221 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:36:10.195 [info] {"source":"oban","duration":880,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:36:40.197 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:37:00.222 [info] {"source":"oban","duration":238,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:37:10.200 [info] {"source":"oban","duration":1587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:37:40.202 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:38:00.224 [info] {"source":"oban","duration":450,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:38:10.203 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:38:40.205 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:39:00.224 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:39:10.207 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:39:40.210 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:40:00.226 [info] {"source":"oban","duration":400,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:40:10.212 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:40:40.213 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:41:00.226 [info] {"source":"oban","duration":303,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:41:10.215 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:41:40.218 [info] {"source":"oban","duration":1586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:42:00.228 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:42:10.219 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:42:40.221 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:43:00.228 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:43:10.224 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:43:40.225 [info] {"source":"oban","duration":1188,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:44:00.230 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:44:10.227 [info] {"source":"oban","duration":1080,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:44:40.230 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:45:00.230 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:45:10.231 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:45:40.233 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:46:00.231 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:46:10.235 [info] {"source":"oban","duration":1319,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:46:40.237 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:47:00.233 [info] {"source":"oban","duration":419,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:47:10.239 [info] {"source":"oban","duration":1061,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:47:40.241 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:48:00.233 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:48:10.243 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:48:40.245 [info] {"source":"oban","duration":1384,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:49:00.235 [info] {"source":"oban","duration":542,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:49:10.247 [info] {"source":"oban","duration":1160,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:49:40.249 [info] {"source":"oban","duration":1202,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:50:00.237 [info] {"source":"oban","duration":404,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:50:10.251 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:50:40.253 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:51:00.237 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:51:10.255 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:51:40.257 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:52:00.239 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:52:10.259 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:52:40.261 [info] {"source":"oban","duration":1060,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:53:00.239 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:53:10.263 [info] {"source":"oban","duration":856,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:53:40.266 [info] {"source":"oban","duration":1562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:54:00.240 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:54:10.267 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:54:40.270 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:00.241 [info] {"source":"oban","duration":388,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:55:10.272 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:40.274 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:52.579 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770155752579303705,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":14,"tags":["media_item","media_fetching","show_in_dashboard"]} 14:55:52.580 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=1230.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" = ?) [89022] 14:55:52.580 [info] User scripts lifecyle file either not present or is empty. Skipping. 14:55:52.581 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=1011.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" = ?) [5] 14:55:52.582 [debug] QUERY OK source="media_profiles" db=0.3ms idle=1006.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] 14:55:52.583 [debug] QUERY OK source="media_items" db=0.6ms 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 [89022] 14:55:52.585 [debug] QUERY OK source="media_metadata" db=0.9ms idle=5.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" = ?) [89022] 14:55:52.586 [debug] QUERY OK source="media_profiles" db=0.2ms idle=5.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] 14:55:52.587 [debug] QUERY OK source="settings" db=0.2ms 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 [] 14:55:52.587 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 14:55:52.588 [debug] Running yt-dlp command for action: get_downloadable_status 14:55:52.589 [debug] QUERY OK source="settings" db=0.1ms idle=5.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 [] 14:55:52.589 [debug] QUERY OK source="settings" db=0.2ms 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 [] 14:55:52.590 [debug] QUERY OK source="settings" db=0.2ms 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 [] 14:55:52.590 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/49/32/4932ee2437b0cb2b25d9b862a32b227e21f845803dd43040e1755c10f765dc87.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 14:55:55.423 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/49/32/4932ee2437b0cb2b25d9b862a32b227e21f845803dd43040e1755c10f765dc87.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 14:55:55.423 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 14:55:55.425 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2845046,"event":"job:exception","queue_time":533738,"attempt":14,"tags":["media_item","media_fetching","show_in_dashboard"]} 14:56:00.242 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:56:10.275 [info] {"source":"oban","duration":1126,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:56:40.278 [info] {"source":"oban","duration":1629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:57:00.244 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:57:10.281 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:57:40.282 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:58:00.244 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:58:10.284 [info] {"source":"oban","duration":1125,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:58:40.287 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:59:00.245 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:59:10.288 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:59:40.290 [info] {"source":"oban","duration":1149,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:00:00.246 [info] {"source":"oban","duration":294,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:00:10.292 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:00:40.294 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:01:00.247 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:01:10.296 [info] {"source":"oban","duration":912,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:01:40.298 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:02:00.249 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:02:10.301 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:02:40.302 [info] {"source":"oban","duration":1328,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:03:00.250 [info] {"source":"oban","duration":440,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:03:10.305 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:03:40.307 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:04:00.250 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:04:10.309 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:04:40.311 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:05:00.251 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:05:10.313 [info] {"source":"oban","duration":1465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:05:40.314 [info] {"source":"oban","duration":1182,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:06:00.252 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:06:10.316 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:06:40.319 [info] {"source":"oban","duration":1509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:07:00.253 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:07:10.320 [info] {"source":"oban","duration":1379,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:07:40.323 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:08:00.255 [info] {"source":"oban","duration":387,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:08:10.325 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:08:40.326 [info] {"source":"oban","duration":1122,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:09:00.256 [info] {"source":"oban","duration":397,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:09:10.328 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:09:40.331 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:10:00.257 [info] {"source":"oban","duration":330,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:10:10.333 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:10:40.335 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:11:00.257 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:11:10.337 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:11:40.340 [info] {"source":"oban","duration":1730,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:12:00.259 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:12:10.343 [info] {"source":"oban","duration":1622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:12:40.344 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:13:00.260 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:13:10.346 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:13:40.348 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:14:00.260 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:14:10.350 [info] {"source":"oban","duration":880,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:14:40.352 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:15:00.262 [info] {"source":"oban","duration":420,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:15:10.354 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:15:40.356 [info] {"source":"oban","duration":884,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:16:00.263 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:16:10.358 [info] {"source":"oban","duration":1027,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:16:40.360 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:17:00.264 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:17:10.362 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:17:40.364 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:18:00.265 [info] {"source":"oban","duration":330,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:18:10.366 [info] {"source":"oban","duration":1071,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:18:40.368 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:19:00.266 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:19:10.370 [info] {"source":"oban","duration":1257,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:19:40.372 [info] {"source":"oban","duration":1254,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:20:00.266 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:20:10.375 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:20:40.376 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:21:00.268 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:21:10.378 [info] {"source":"oban","duration":1216,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:21:40.381 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:22:00.270 [info] {"source":"oban","duration":1592,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:22:10.382 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:22:40.385 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:23:00.271 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:23:10.387 [info] {"source":"oban","duration":1606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:23:40.388 [info] {"source":"oban","duration":1327,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:24:00.272 [info] {"source":"oban","duration":326,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:24:10.390 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:24:40.393 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:25:00.273 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:25:10.394 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:25:40.396 [info] {"source":"oban","duration":944,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:26:00.275 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:26:10.399 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:26:40.401 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:27:00.276 [info] {"source":"oban","duration":451,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:27:10.402 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:27:40.405 [info] {"source":"oban","duration":1608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:28:00.277 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:28:10.406 [info] {"source":"oban","duration":1190,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:28:40.408 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:29:00.277 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:29:10.410 [info] {"source":"oban","duration":1114,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:29:40.412 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:30:00.279 [info] {"source":"oban","duration":394,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:30:10.415 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:30:40.417 [info] {"source":"oban","duration":1676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:31:00.279 [info] {"source":"oban","duration":326,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:31:10.418 [info] {"source":"oban","duration":1355,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:31:40.420 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:32:00.281 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:32:10.422 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:32:40.424 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:33:00.282 [info] {"source":"oban","duration":420,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:33:10.426 [info] {"source":"oban","duration":986,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:33:40.428 [info] {"source":"oban","duration":930,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:34:00.283 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:34:10.430 [info] {"source":"oban","duration":944,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:34:40.432 [info] {"source":"oban","duration":1270,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:00.284 [info] {"source":"oban","duration":387,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:35:10.434 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:40.436 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:36:00.285 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:36:10.439 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:36:40.441 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:37:00.286 [info] {"source":"oban","duration":362,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:37:10.442 [info] {"source":"oban","duration":1327,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:37:40.444 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:38:00.286 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:38:10.446 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:38:40.448 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:00.287 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:39:10.450 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:40.452 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:40:00.288 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:40:10.454 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:40:40.456 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:41:00.289 [info] {"source":"oban","duration":266,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:41:10.458 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:41:40.460 [info] {"source":"oban","duration":1074,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:42:00.291 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:42:10.462 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:42:40.464 [info] {"source":"oban","duration":1077,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:00.291 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:43:10.466 [info] {"source":"oban","duration":1219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:40.468 [info] {"source":"oban","duration":1236,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:44:00.292 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:44:10.470 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:44:40.473 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:45:00.294 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:45:10.476 [info] {"source":"oban","duration":1655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:45:40.478 [info] {"source":"oban","duration":1326,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:46:00.295 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:46:10.481 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:46:40.483 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:47:00.296 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:47:10.484 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:47:40.486 [info] {"source":"oban","duration":1215,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:48:00.296 [info] {"source":"oban","duration":272,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:48:10.489 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:48:40.490 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:49:00.297 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:49:10.492 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:49:40.494 [info] {"source":"oban","duration":1375,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:50:00.298 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:50:10.496 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:50:40.498 [info] {"source":"oban","duration":911,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:51:00.300 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:51:10.500 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:51:40.502 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:52:00.301 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:52:10.504 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:52:40.506 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:53:00.301 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:53:10.508 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:53:40.511 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:54:00.303 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:54:10.512 [info] {"source":"oban","duration":1189,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:54:40.514 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:55:00.304 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:55:10.517 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:55:40.518 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:56:00.304 [info] {"source":"oban","duration":246,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:56:10.521 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:56:40.523 [info] {"source":"oban","duration":1624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:57:00.305 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:57:10.524 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:57:40.526 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:58:00.306 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:58:10.528 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:58:40.530 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:59:00.308 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:59:10.532 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:59:40.535 [info] {"source":"oban","duration":1576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:00:00.308 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:00:10.536 [info] {"source":"oban","duration":1309,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:00:40.539 [info] {"source":"oban","duration":1751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:01:00.309 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:01:10.542 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:01:40.544 [info] {"source":"oban","duration":1668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:02:00.310 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:02:10.546 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:02:40.548 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:03:00.311 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:03:10.550 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:03:40.551 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:04:00.313 [info] {"source":"oban","duration":474,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:04:10.553 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:04:40.556 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:05:00.313 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:05:10.557 [info] {"source":"oban","duration":1116,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:05:40.559 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:06:00.314 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:06:10.561 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:06:40.563 [info] {"source":"oban","duration":1061,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:07:00.316 [info] {"source":"oban","duration":383,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:07:10.565 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:07:40.567 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:08:00.317 [info] {"source":"oban","duration":414,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:08:10.570 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:08:40.572 [info] {"source":"oban","duration":1673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:09:00.318 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:09:10.575 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:09:40.577 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:10:00.319 [info] {"source":"oban","duration":411,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:10:10.578 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:10:40.581 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:11:00.319 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:11:10.582 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:11:40.585 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:12:00.321 [info] {"source":"oban","duration":415,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:12:10.587 [info] {"source":"oban","duration":1520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:12:40.589 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:13:00.321 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:13:10.590 [info] {"source":"oban","duration":1116,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:13:40.592 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:14:00.323 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:14:10.594 [info] {"source":"oban","duration":1234,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:14:40.596 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:15:00.324 [info] {"source":"oban","duration":402,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:15:10.598 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:15:40.600 [info] {"source":"oban","duration":1273,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:16:00.325 [info] {"source":"oban","duration":405,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:16:10.602 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:16:40.605 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:17:00.325 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:17:10.606 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:17:40.609 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:18:00.326 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:18:10.610 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:18:40.612 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:19:00.328 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:19:10.614 [info] {"source":"oban","duration":1142,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:19:40.617 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:20:00.328 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:20:10.618 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:20:40.620 [info] {"source":"oban","duration":1217,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:21:00.329 [info] {"source":"oban","duration":303,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:21:10.622 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:21:40.624 [info] {"source":"oban","duration":1344,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:22:00.331 [info] {"source":"oban","duration":399,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:22:10.626 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:22:40.628 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:23:00.332 [info] {"source":"oban","duration":410,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:23:10.630 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:23:40.632 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:24:00.332 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:24:10.634 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:24:40.636 [info] {"source":"oban","duration":1303,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:25:00.333 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:25:10.638 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:25:40.640 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:26:00.335 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:26:10.642 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:26:40.644 [info] {"source":"oban","duration":1355,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:27:00.335 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:27:10.646 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:27:40.649 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:28:00.336 [info] {"source":"oban","duration":232,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:28:10.650 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:28:40.652 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:29:00.338 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:29:10.654 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:29:40.656 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:30:00.339 [info] {"source":"oban","duration":424,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:30:10.658 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:30:40.660 [info] {"source":"oban","duration":913,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:31:00.340 [info] {"source":"oban","duration":489,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:31:10.662 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:31:40.665 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:32:00.341 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:32:10.666 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:32:40.668 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:33:00.342 [info] {"source":"oban","duration":378,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:33:10.670 [info] {"source":"oban","duration":1270,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:33:40.672 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:34:00.343 [info] {"source":"oban","duration":411,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:34:10.675 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:34:40.676 [info] {"source":"oban","duration":1345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:35:00.343 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:35:10.678 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:35:40.681 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:36:00.344 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:36:10.682 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:36:40.685 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:37:00.346 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:37:10.686 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:37:40.689 [info] {"source":"oban","duration":1671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:38:00.347 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:38:10.691 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:38:40.693 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:39:00.347 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:39:10.695 [info] {"source":"oban","duration":1006,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:39:40.698 [info] {"source":"oban","duration":1617,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:40:00.348 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:40:10.699 [info] {"source":"oban","duration":1367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:40:40.702 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:41:00.350 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:41:10.703 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:41:40.706 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:42:00.350 [info] {"source":"oban","duration":330,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:42:10.708 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:42:40.709 [info] {"source":"oban","duration":1196,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:43:00.351 [info] {"source":"oban","duration":386,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:43:10.711 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:43:40.714 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:44:00.352 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:44:10.715 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:44:40.717 [info] {"source":"oban","duration":1344,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:45:00.354 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:45:10.719 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:45:40.722 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:46:00.354 [info] {"source":"oban","duration":306,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:46:10.723 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:46:40.725 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:47:00.356 [info] {"source":"oban","duration":500,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:47:10.727 [info] {"source":"oban","duration":1204,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:47:40.729 [info] {"source":"oban","duration":1188,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:48:00.356 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:48:10.731 [info] {"source":"oban","duration":1345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:48:40.734 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:49:00.357 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:49:10.735 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:49:40.738 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:50:00.358 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:50:10.740 [info] {"source":"oban","duration":1581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:50:40.741 [info] {"source":"oban","duration":1317,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:51:00.359 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:51:10.743 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:51:40.746 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:52:00.360 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:52:10.747 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:52:40.750 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:53:00.361 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:53:10.751 [info] {"source":"oban","duration":937,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:53:40.753 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:54:00.363 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:54:10.755 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:54:40.757 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:55:00.363 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:55:10.759 [info] {"source":"oban","duration":927,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:55:40.761 [info] {"source":"oban","duration":1356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:56:00.364 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:56:10.764 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:56:40.765 [info] {"source":"oban","duration":1319,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:57:00.365 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:57:10.768 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:57:40.770 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:58:00.367 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:58:10.772 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:58:40.773 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:59:00.367 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:59:10.776 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:59:40.777 [info] {"source":"oban","duration":1265,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:00:00.368 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:00:10.796 [info] {"source":"oban","duration":17788,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":5} 17:00:40.799 [info] {"source":"oban","duration":1594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:01:00.370 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:01:10.801 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:01:40.803 [info] {"source":"oban","duration":1654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:02:00.371 [info] {"source":"oban","duration":444,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:02:10.806 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:02:40.807 [info] {"source":"oban","duration":1411,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:03:00.372 [info] {"source":"oban","duration":457,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:03:10.809 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:03:40.811 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:04:00.373 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:04:10.814 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:04:40.815 [info] {"source":"oban","duration":1283,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:05:00.373 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:05:10.818 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:05:40.819 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:06:00.374 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:06:10.822 [info] {"source":"oban","duration":1791,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:06:40.824 [info] {"source":"oban","duration":1258,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:07:00.375 [info] {"source":"oban","duration":217,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:07:10.827 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:07:40.828 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:08:00.377 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:08:10.830 [info] {"source":"oban","duration":1197,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:08:40.832 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:09:00.378 [info] {"source":"oban","duration":516,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:09:10.834 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:09:40.836 [info] {"source":"oban","duration":1068,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:10:00.379 [info] {"source":"oban","duration":412,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:10:10.838 [info] {"source":"oban","duration":1324,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:10:40.840 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:11:00.380 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:11:10.842 [info] {"source":"oban","duration":1156,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:11:40.844 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:00.382 [info] {"source":"oban","duration":326,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:12:10.846 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:40.849 [info] {"source":"oban","duration":1740,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:13:00.383 [info] {"source":"oban","duration":442,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:13:10.852 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:13:40.854 [info] {"source":"oban","duration":1520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:14:00.384 [info] {"source":"oban","duration":478,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:14:10.855 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:14:40.858 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:15:00.385 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:15:10.860 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:15:40.862 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:16:00.385 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:16:10.864 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:16:40.866 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:17:00.387 [info] {"source":"oban","duration":428,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:17:10.867 [info] {"source":"oban","duration":1210,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:17:40.870 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:00.387 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:18:10.871 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:40.874 [info] {"source":"oban","duration":1593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:19:00.388 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:19:10.875 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:19:40.877 [info] {"source":"oban","duration":1183,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:20:00.389 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:20:10.879 [info] {"source":"oban","duration":836,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:20:40.881 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:21:00.390 [info] {"source":"oban","duration":225,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:21:10.883 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:21:40.886 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:22:00.391 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:22:10.887 [info] {"source":"oban","duration":1306,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:22:40.890 [info] {"source":"oban","duration":1741,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:23:00.393 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:23:10.892 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:23:40.894 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:24:00.393 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:24:10.897 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:24:40.898 [info] {"source":"oban","duration":1171,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:25:00.394 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:25:10.901 [info] {"source":"oban","duration":1579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:25:40.903 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:26:00.396 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:26:10.904 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:26:40.907 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:27:00.396 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:27:10.908 [info] {"source":"oban","duration":887,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:27:40.910 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:28:00.397 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:28:10.912 [info] {"source":"oban","duration":1085,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:28:40.914 [info] {"source":"oban","duration":1017,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:29:00.399 [info] {"source":"oban","duration":543,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:29:10.917 [info] {"source":"oban","duration":1800,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:29:40.920 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:30:00.400 [info] {"source":"oban","duration":403,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:30:10.921 [info] {"source":"oban","duration":1254,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:30:40.923 [info] {"source":"oban","duration":1059,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:31:00.400 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:31:10.926 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:31:40.928 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:32:00.401 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:32:10.930 [info] {"source":"oban","duration":1574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:32:40.932 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:33:00.402 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:33:10.934 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:33:40.936 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:34:00.403 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:34:10.937 [info] {"source":"oban","duration":1251,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:34:40.939 [info] {"source":"oban","duration":1317,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:35:00.404 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:35:10.941 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:35:40.943 [info] {"source":"oban","duration":1273,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:36:00.405 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:36:10.945 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:36:40.947 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:37:00.406 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:37:10.950 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:37:40.952 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:38:00.408 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:38:10.954 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:38:40.956 [info] {"source":"oban","duration":1669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:39:00.408 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:39:10.958 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:39:40.960 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:40:00.409 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:40:10.962 [info] {"source":"oban","duration":1310,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:40:40.965 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:41:00.411 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:41:10.967 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:41:40.968 [info] {"source":"oban","duration":1390,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:42:00.412 [info] {"source":"oban","duration":415,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:42:10.971 [info] {"source":"oban","duration":1682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:42:40.974 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:43:00.414 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:43:10.975 [info] {"source":"oban","duration":1138,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:43:40.977 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:44:00.415 [info] {"source":"oban","duration":355,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:44:10.979 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:44:40.981 [info] {"source":"oban","duration":995,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:45:00.416 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:45:10.983 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:45:40.986 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:46:00.416 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:46:10.988 [info] {"source":"oban","duration":1638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:46:40.990 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:47:00.417 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:47:10.992 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:47:40.993 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:48:00.418 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:48:10.995 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:48:40.997 [info] {"source":"oban","duration":1247,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:49:00.419 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:49:10.999 [info] {"source":"oban","duration":1024,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:49:41.002 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:50:00.421 [info] {"source":"oban","duration":426,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:50:11.003 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:50:41.005 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:51:00.422 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:51:11.007 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:51:41.010 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:52:00.422 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:52:11.011 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:52:41.013 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:53:00.423 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:53:11.015 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:53:41.018 [info] {"source":"oban","duration":1379,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:54:00.424 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:54:11.020 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:54:41.022 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:55:00.425 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:55:11.024 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:55:41.025 [info] {"source":"oban","duration":1317,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:56:00.426 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:56:11.027 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:56:41.029 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:57:00.427 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:57:11.031 [info] {"source":"oban","duration":1215,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:57:41.033 [info] {"source":"oban","duration":1125,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:58:00.428 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:58:11.035 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:58:41.038 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:59:00.430 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:59:11.040 [info] {"source":"oban","duration":1565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:59:41.042 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:00:00.433 [info] {"source":"oban","duration":2425,"event":"plugin:stop","jobs":[2984],"plugin":"Oban.Plugins.Cron"} 18:00:00.440 [info] {"args":{},"id":2984,"meta":{"cron":true,"cron_expr":"0 1 * * *","cron_tz":"Etc/UTC"},"system_time":1770166800440081095,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.Downloading.MediaRetentionWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","local_data"]} 18:00:02.558 [debug] QUERY OK source="media_items" db=2117.2ms queue=0.4ms idle=90.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" 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)) [] 18:00:02.558 [info] Culling 0 media items past their retention date 18:00:02.567 [debug] QUERY OK source="media_items" db=7.4ms queue=0.4ms idle=666.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)) [] 18:00:02.567 [info] Deleting 0 media items that are from before the source cutoff 18:00:02.568 [info] {"args":{},"id":2984,"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":2127271,"event":"job:stop","queue_time":438536,"attempt":1,"tags":["media_item","local_data"]} 18:00:11.043 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:00:41.046 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:01:00.433 [info] {"source":"oban","duration":266,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:01:11.048 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:01:41.051 [info] {"source":"oban","duration":1755,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:02:00.435 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:02:11.054 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:02:41.056 [info] {"source":"oban","duration":1527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:03:00.436 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:03:11.057 [info] {"source":"oban","duration":1384,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:03:41.060 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:04:00.436 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:04:11.062 [info] {"source":"oban","duration":1736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:04:41.064 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:05:00.438 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:05:11.066 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:05:41.068 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:06:00.439 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:06:11.070 [info] {"source":"oban","duration":1206,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:06:41.073 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:07:00.439 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:07:11.075 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:07:41.076 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:08:00.441 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:08:11.078 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:08:41.080 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:09:00.442 [info] {"source":"oban","duration":428,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:09:11.082 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:09:41.085 [info] {"source":"oban","duration":1705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:10:00.442 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:10:11.088 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:10:41.090 [info] {"source":"oban","duration":1669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:11:00.443 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:11:11.092 [info] {"source":"oban","duration":1616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:11:41.094 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:12:00.444 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:12:11.095 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:12:41.098 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:13:00.446 [info] {"source":"oban","duration":407,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:13:11.100 [info] {"source":"oban","duration":1504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:13:41.102 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:14:00.447 [info] {"source":"oban","duration":355,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:14:11.104 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:14:41.106 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:15:00.447 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:15:11.107 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:15:41.110 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:16:00.449 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:16:11.112 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:16:41.113 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:17:00.450 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:17:11.115 [info] {"source":"oban","duration":1151,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:17:41.118 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:18:00.450 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:18:11.120 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:18:41.121 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:19:00.451 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:19:11.123 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:19:41.125 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:20:00.453 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:20:11.128 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:20:41.130 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:21:00.454 [info] {"source":"oban","duration":497,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:21:11.131 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:21:41.134 [info] {"source":"oban","duration":1557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:22:00.455 [info] {"source":"oban","duration":544,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:22:11.135 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:22:41.137 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:23:00.456 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:23:11.139 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:23:41.141 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:24:00.456 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:24:11.143 [info] {"source":"oban","duration":1159,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:24:41.145 [info] {"source":"oban","duration":1217,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:25:00.457 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:25:11.147 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:25:41.149 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:26:00.458 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:26:11.151 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:26:41.154 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:27:00.459 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:27:11.156 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:27:41.157 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:28:00.460 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:28:11.160 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:28:41.161 [info] {"source":"oban","duration":1218,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:29:00.461 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:29:11.163 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:29:41.165 [info] {"source":"oban","duration":1189,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:30:00.463 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:30:11.167 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:30:41.169 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:31:00.464 [info] {"source":"oban","duration":526,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:31:11.171 [info] {"source":"oban","duration":1317,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:31:41.174 [info] {"source":"oban","duration":1560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:32:00.465 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:32:11.175 [info] {"source":"oban","duration":1347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:32:41.177 [info] {"source":"oban","duration":1161,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:33:00.466 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:33:11.179 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:33:41.181 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:34:00.466 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:34:11.184 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:34:41.186 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:35:00.468 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:35:11.188 [info] {"source":"oban","duration":1566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:35:41.190 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:36:00.468 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:36:11.192 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:36:41.194 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:37:00.469 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:37:11.196 [info] {"source":"oban","duration":1384,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:37:41.198 [info] {"source":"oban","duration":1367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:38:00.471 [info] {"source":"oban","duration":355,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:38:11.200 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:38:41.202 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:39:00.472 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:39:11.203 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:39:41.205 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:40:00.473 [info] {"source":"oban","duration":382,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:40:11.207 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:40:41.210 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:41:00.474 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:41:11.211 [info] {"source":"oban","duration":1040,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:41:41.213 [info] {"source":"oban","duration":1270,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:42:00.475 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:42:11.216 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:42:41.217 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:43:00.475 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:43:11.220 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:43:41.222 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:44:00.476 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:44:11.224 [info] {"source":"oban","duration":1634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:44:41.226 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:45:00.478 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:45:11.228 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:45:41.230 [info] {"source":"oban","duration":1532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:46:00.479 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:46:11.232 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:46:41.234 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:47:00.480 [info] {"source":"oban","duration":401,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:47:11.235 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:47:41.237 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:48:00.481 [info] {"source":"oban","duration":407,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:48:11.239 [info] {"source":"oban","duration":1221,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:48:41.242 [info] {"source":"oban","duration":2149,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:49:00.481 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:49:11.244 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:49:41.246 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:50:00.482 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:50:11.249 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:50:41.250 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:51:00.483 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:51:11.252 [info] {"source":"oban","duration":1369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:51:41.255 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:52:00.484 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:52:11.256 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:52:41.259 [info] {"source":"oban","duration":1569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:53:00.486 [info] {"source":"oban","duration":397,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:53:11.260 [info] {"source":"oban","duration":1194,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:53:41.263 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:54:00.486 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:54:11.264 [info] {"source":"oban","duration":1228,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:54:41.267 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:55:00.488 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:55:11.268 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:55:41.271 [info] {"source":"oban","duration":1571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:56:00.489 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:56:11.272 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:56:41.274 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:57:00.490 [info] {"source":"oban","duration":447,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:57:11.276 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:57:41.278 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:58:00.490 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:58:11.281 [info] {"source":"oban","duration":1565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:58:41.283 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:59:00.491 [info] {"source":"oban","duration":253,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:59:11.285 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:59:41.287 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:00:00.494 [info] {"source":"oban","duration":2367,"event":"plugin:stop","jobs":[2985],"plugin":"Oban.Plugins.Cron"} 19:00:00.502 [info] {"args":{},"id":2985,"meta":{"cron":true,"cron_expr":"0 2 * * *","cron_tz":"Etc/UTC"},"system_time":1770170400502067877,"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"]} 19:00:04.455 [debug] QUERY OK source="media_items" db=3952.3ms queue=0.4ms idle=153.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) 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) ) [] 19:00:04.455 [info] Redownloading 0 media items 19:00:04.457 [info] {"args":{},"id":2985,"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":3953984,"event":"job:stop","queue_time":500502,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 19:00:11.289 [info] {"source":"oban","duration":1568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:00:41.291 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:01:00.495 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:01:11.292 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:01:41.295 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:02:00.496 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:02:11.296 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:02:41.298 [info] {"source":"oban","duration":1251,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:03:00.498 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:03:11.301 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:03:41.302 [info] {"source":"oban","duration":1051,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:04:00.498 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:04:11.304 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:04:41.306 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:05:00.499 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:05:11.308 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:05:41.310 [info] {"source":"oban","duration":1094,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:06:00.501 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:06:11.313 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:06:41.315 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:06:41.528 [info] GET / 19:06:41.528 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 19:06:41.532 [debug] QUERY OK source="settings" db=0.3ms idle=1124.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 [] 19:06:41.533 [debug] QUERY OK source="media_profiles" db=0.1ms queue=0.2ms idle=1119.0ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 19:06:41.533 [debug] QUERY OK source="sources" db=0.1ms queue=0.2ms idle=218.2ms SELECT count(s0."id") FROM "sources" AS s0 [] 19:06:41.565 [debug] QUERY OK source="media_items" db=31.4ms queue=0.2ms idle=124.8ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 19:06:41.651 [debug] QUERY OK source="media_items" db=85.0ms queue=0.2ms idle=150.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 19:06:41.652 [debug] QUERY OK source="settings" db=0.5ms idle=119.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 [] 19:06:41.653 [debug] QUERY OK source="settings" db=0.5ms idle=119.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 [] 19:06:41.655 [debug] QUERY OK source="settings" db=0.5ms 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 [] 19:06:41.657 [debug] QUERY OK source="tasks" db=1.0ms idle=91.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"] 19:06:41.660 [debug] QUERY OK source="media_items" db=0.7ms idle=8.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 (?,?)) [102574, 104642] 19:06:41.660 [debug] QUERY OK source="sources" db=1.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" IN (?,?)) [4, 1] 19:06:41.667 [debug] QUERY OK source="media_items" db=1.2ms queue=0.3ms idle=12.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)) [] 19:06:41.669 [debug] QUERY OK source="media_items" db=0.9ms queue=0.4ms 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 (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 19:06:41.670 [debug] QUERY OK source="sources" db=0.4ms idle=11.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" IN (?,?)) [5, 4] 19:06:41.685 [debug] QUERY OK source="media_items" db=10.0ms queue=0.5ms idle=14.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"))) [] 19:06:41.688 [debug] QUERY OK source="media_items" db=1.3ms queue=0.6ms idle=25.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] 19:06:41.689 [debug] QUERY OK source="sources" db=0.4ms idle=21.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" IN (?,?)) [1, 4] 19:06:41.693 [info] Sent 200 in 165ms 19:06:42.003 [info] CONNECTED TO Phoenix.LiveView.Socket in 94µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "bCA9NAp1SSUDOiEIJzx2KHdvBDkgO30_-OEYZ90BNLnyOr3C362sWn4l", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:06:42.020 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "media_state" => "downloaded"} 19:06:42.022 [debug] QUERY OK source="media_items" db=1.0ms idle=351.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)) [] 19:06:42.023 [debug] QUERY OK source="media_items" db=0.9ms idle=352.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] 19:06:42.024 [debug] QUERY OK source="sources" db=0.4ms idle=338.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" IN (?,?)) [5, 4] 19:06:42.024 [debug] Replied in 4ms 19:06:42.029 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "media_state" => "pending"} 19:06:42.037 [debug] QUERY OK source="media_items" db=7.4ms idle=342.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"))) [] 19:06:42.039 [debug] QUERY OK source="media_items" db=1.6ms queue=0.1ms idle=348.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] 19:06:42.041 [debug] QUERY OK source="sources" db=0.6ms idle=18.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" IN (?,?)) [1, 4] 19:06:42.041 [debug] Replied in 11ms 19:06:42.045 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS"} 19:06:42.046 [debug] QUERY OK source="tasks" db=0.9ms idle=22.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"] 19:06:42.048 [debug] QUERY OK source="media_items" db=0.7ms idle=23.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" IN (?,?)) [102574, 104642] 19:06:42.049 [debug] QUERY OK source="sources" db=0.9ms 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" IN (?,?)) [4, 1] 19:06:42.049 [debug] Replied in 4ms 19:06:44.618 [info] GET / 19:06:44.618 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 19:06:44.619 [debug] QUERY OK source="settings" db=0.4ms idle=1269.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 [] 19:06:44.620 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1207.0ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 19:06:44.621 [debug] QUERY OK source="sources" db=0.3ms idle=1200.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 19:06:44.622 [debug] QUERY OK source="media_items" db=0.9ms idle=206.0ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 19:06:44.623 [debug] QUERY OK source="media_items" db=0.6ms idle=200.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 19:06:44.623 [debug] QUERY OK source="settings" db=0.3ms 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 [] 19:06:44.624 [debug] QUERY OK source="settings" db=0.2ms 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 [] 19:06:44.625 [debug] QUERY OK source="settings" db=0.3ms 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 [] 19:06:44.627 [debug] QUERY OK source="tasks" db=0.7ms idle=4.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"] 19:06:44.629 [debug] QUERY OK source="media_items" db=0.7ms queue=0.1ms 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", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [102574, 104642] 19:06:44.629 [debug] QUERY OK source="sources" db=0.9ms 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" IN (?,?)) [4, 1] 19:06:44.632 [debug] QUERY OK source="media_items" db=0.8ms 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 (NOT (m0."media_filepath" IS NULL)) [] 19:06:44.634 [debug] QUERY OK source="media_items" db=1.0ms idle=7.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] 19:06:44.635 [debug] QUERY OK source="sources" db=0.5ms 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" IN (?,?)) [5, 4] 19:06:44.640 [info] CONNECTED TO Phoenix.LiveView.Socket in 41µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "bCA9NAp1SSUDOiEIJzx2KHdvBDkgO30_-OEYZ90BNLnyOr3C362sWn4l", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:06:44.641 [debug] QUERY OK source="media_items" db=1.4ms idle=10.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"))) [] 19:06:44.643 [debug] QUERY OK source="media_items" db=1.3ms idle=11.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] 19:06:44.644 [debug] QUERY OK source="sources" db=0.6ms idle=10.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" IN (?,?)) [1, 4] 19:06:44.645 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "media_state" => "downloaded"} 19:06:44.646 [debug] QUERY OK source="media_items" db=0.5ms idle=11.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)) [] 19:06:44.647 [debug] QUERY OK source="media_items" db=0.7ms idle=10.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] 19:06:44.647 [info] Sent 200 in 29ms 19:06:44.648 [debug] QUERY OK source="sources" db=0.3ms idle=6.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" IN (?,?)) [5, 4] 19:06:44.648 [debug] Replied in 3ms 19:06:44.653 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "media_state" => "pending"} 19:06:44.655 [debug] QUERY OK source="media_items" db=1.5ms idle=10.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"))) [] 19:06:44.656 [debug] QUERY OK source="media_items" db=1.3ms idle=11.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] 19:06:44.658 [debug] QUERY OK source="sources" db=0.7ms idle=11.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" IN (?,?)) [1, 4] 19:06:44.658 [debug] Replied in 5ms 19:06:44.662 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS"} 19:06:44.663 [debug] QUERY OK source="tasks" db=0.6ms idle=15.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"] 19:06:44.665 [debug] QUERY OK source="media_items" db=0.7ms idle=16.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", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [102574, 104642] 19:06:44.665 [debug] QUERY OK source="sources" db=0.6ms idle=9.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" IN (?,?)) [4, 1] 19:06:44.666 [debug] Replied in 3ms 19:06:44.740 [info] CONNECTED TO Phoenix.LiveView.Socket in 54µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "cgILGQd4Hz50FRAuCyx2MSEXeBs6HWRq3mstW4fY9c__cb3ZeNNQMH-9", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:06:44.753 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "media_state" => "downloaded"} 19:06:44.754 [debug] QUERY OK source="media_items" db=0.5ms idle=97.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)) [] 19:06:44.755 [debug] QUERY OK source="media_items" db=0.7ms idle=96.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] 19:06:44.756 [debug] QUERY OK source="sources" db=0.4ms 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", s0."id" FROM "sources" AS s0 WHERE (s0."id" IN (?,?)) [5, 4] 19:06:44.757 [debug] Replied in 3ms 19:06:44.761 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "media_state" => "pending"} 19:06:44.763 [debug] QUERY OK source="media_items" db=1.1ms idle=96.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"))) [] 19:06:44.764 [debug] QUERY OK source="media_items" db=1.0ms idle=97.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] 19:06:44.765 [debug] QUERY OK source="sources" db=0.3ms idle=10.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" IN (?,?)) [1, 4] 19:06:44.765 [debug] Replied in 4ms 19:06:44.769 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS"} 19:06:44.770 [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"] 19:06:44.772 [debug] QUERY OK source="media_items" db=0.5ms idle=14.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 (?,?)) [102574, 104642] 19:06:44.772 [debug] QUERY OK source="sources" db=0.5ms idle=8.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" IN (?,?)) [4, 1] 19:06:44.772 [debug] Replied in 3ms 19:06:48.311 [info] GET /sources 19:06:48.311 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 19:06:48.312 [debug] QUERY OK source="settings" db=0.3ms idle=1962.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 [] 19:06:48.313 [debug] QUERY OK source="settings" db=0.2ms idle=1893.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 [] 19:06:48.314 [debug] QUERY OK source="settings" db=0.4ms idle=1888.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 [] 19:06:48.315 [debug] QUERY OK source="settings" db=0.2ms idle=893.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 [] 19:06:48.315 [debug] QUERY OK source="settings" db=0.2ms idle=887.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 [] 19:06:48.319 [debug] QUERY OK source="sources" db=2.4ms queue=0.8ms idle=4.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)) [] 19:06:48.326 [debug] QUERY OK source="sources" db=4.0ms queue=1.0ms 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", 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] 19:06:48.331 [info] Sent 200 in 19ms 19:06:48.430 [info] CONNECTED TO Phoenix.LiveView.Socket in 42µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "BgARATh9KD94TwsbGg13Dik6ZigTJyFjGoilh1QX59DjrC2emcPbdrh0", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:06:48.448 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 19:06:48.452 [debug] QUERY OK source="sources" db=2.6ms idle=133.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)) [] 19:06:48.456 [debug] QUERY OK source="sources" db=3.6ms idle=132.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] 19:06:48.457 [debug] Replied in 8ms 19:06:49.751 [info] GET /media_profiles 19:06:49.751 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 19:06:49.753 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.5ms idle=1300.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" [] 19:06:49.754 [debug] QUERY OK source="settings" db=0.4ms idle=1297.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 [] 19:06:49.754 [debug] QUERY OK source="settings" db=0.2ms idle=404.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 [] 19:06:49.756 [debug] QUERY OK source="settings" db=0.3ms idle=330.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 [] 19:06:49.758 [info] Sent 200 in 6ms 19:06:54.430 [info] GET /media_profiles/1/ 19:06:54.430 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 19:06:54.431 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.4ms idle=1081.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 WHERE (m0."id" = ?) [1] 19:06:54.432 [debug] QUERY OK source="sources" db=0.3ms queue=0.4ms idle=1082.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."media_profile_id" = ?) ORDER BY s0."custom_name" [1] 19:06:54.433 [debug] QUERY OK source="settings" db=0.3ms idle=1083.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 [] 19:06:54.434 [debug] QUERY OK source="settings" db=0.3ms idle=999.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 [] 19:06:54.436 [debug] QUERY OK source="settings" db=0.9ms 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 [] 19:06:54.439 [info] Sent 200 in 9ms 19:07:00.502 [info] {"source":"oban","duration":421,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:07:01.831 [info] GET /media_profiles 19:07:01.832 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 19:07:01.833 [debug] QUERY OK source="media_profiles" db=0.5ms idle=1382.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", (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" [] 19:07:01.834 [debug] QUERY OK source="settings" db=0.2ms idle=1376.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 [] 19:07:01.834 [debug] QUERY OK source="settings" db=0.3ms idle=1332.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 [] 19:07:01.835 [debug] QUERY OK source="settings" db=0.2ms idle=381.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 [] 19:07:01.838 [info] Sent 200 in 6ms 19:07:04.108 [info] GET / 19:07:04.108 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 19:07:04.109 [debug] QUERY OK source="settings" db=0.2ms idle=759.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 [] 19:07:04.110 [debug] QUERY OK source="media_profiles" db=0.1ms idle=760.2ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 19:07:04.110 [debug] QUERY OK source="sources" db=0.1ms idle=760.5ms SELECT count(s0."id") FROM "sources" AS s0 [] 19:07:04.116 [debug] QUERY OK source="media_items" db=6.0ms idle=653.4ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 19:07:04.117 [debug] QUERY OK source="media_items" db=0.5ms idle=652.9ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 19:07:04.118 [debug] QUERY OK source="settings" db=0.3ms idle=8.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 [] 19:07:04.119 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=8.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 [] 19:07:04.120 [debug] QUERY OK source="settings" db=0.2ms idle=9.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 [] 19:07:04.122 [debug] QUERY OK source="tasks" db=0.8ms 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"] 19:07:04.124 [debug] QUERY OK source="media_items" db=0.6ms 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", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [102574, 104642] 19:07:04.125 [debug] QUERY OK source="sources" db=1.0ms 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" IN (?,?)) [4, 1] 19:07:04.128 [debug] QUERY OK source="media_items" db=0.6ms idle=8.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)) [] 19:07:04.129 [debug] QUERY OK source="media_items" db=0.8ms 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 (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 19:07:04.130 [debug] QUERY OK source="sources" db=0.4ms 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", s0."id" FROM "sources" AS s0 WHERE (s0."id" IN (?,?)) [5, 4] 19:07:04.141 [debug] QUERY OK source="media_items" db=6.7ms idle=10.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"))) [] 19:07:04.143 [debug] QUERY OK source="media_items" db=1.5ms idle=16.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] 19:07:04.144 [debug] QUERY OK source="sources" db=0.5ms idle=15.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" IN (?,?)) [1, 4] 19:07:04.147 [info] Sent 200 in 39ms 19:07:04.282 [info] CONNECTED TO Phoenix.LiveView.Socket in 47µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "Nhw0CTF5MywhEncjWXYNL3xucxogFHoKwsLda5JKld8R18HD87EPWA3Y", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:07:04.285 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "media_state" => "downloaded"} 19:07:04.286 [debug] QUERY OK source="media_items" db=0.6ms idle=156.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)) [] 19:07:04.287 [debug] QUERY OK source="media_items" db=0.9ms idle=156.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] 19:07:04.289 [debug] QUERY OK source="sources" db=0.5ms idle=147.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" IN (?,?)) [5, 4] 19:07:04.289 [debug] Replied in 3ms 19:07:04.294 [debug] MOUNT Pinchflat.Pages.HistoryTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "media_state" => "pending"} 19:07:04.296 [debug] QUERY OK source="media_items" db=1.4ms idle=151.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"))) [] 19:07:04.298 [debug] QUERY OK source="media_items" db=1.3ms queue=0.1ms idle=152.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] 19:07:04.299 [debug] QUERY OK source="sources" db=0.5ms idle=12.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" IN (?,?)) [1, 4] 19:07:04.299 [debug] Replied in 5ms 19:07:04.303 [debug] MOUNT Pinchflat.Pages.JobTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS"} 19:07:04.304 [debug] QUERY OK source="tasks" db=0.7ms idle=16.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"] 19:07:04.306 [debug] QUERY OK source="media_items" db=0.5ms idle=16.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", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [102574, 104642] 19:07:04.307 [debug] QUERY OK source="sources" db=0.8ms idle=9.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" IN (?,?)) [4, 1] 19:07:04.307 [debug] Replied in 4ms 19:07:11.317 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:07:41.319 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:08:00.502 [info] {"source":"oban","duration":335,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:08:11.321 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:08:41.323 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:09:00.504 [info] {"source":"oban","duration":387,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:09:11.325 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:09:41.328 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:10:00.505 [info] {"source":"oban","duration":388,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:10:11.330 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:10:41.332 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:11:00.506 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:11:11.333 [info] {"source":"oban","duration":1240,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:11:41.336 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:12:00.507 [info] {"source":"oban","duration":503,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:12:11.338 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:12:41.339 [info] {"source":"oban","duration":1145,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:13:00.507 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:13:07.030 [info] GET /media_profiles 19:13:07.030 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 19:13:07.031 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=804.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", (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" [] 19:13:07.032 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=799.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 [] 19:13:07.033 [debug] QUERY OK source="settings" db=0.3ms idle=683.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 [] 19:13:07.034 [debug] QUERY OK source="settings" db=0.2ms idle=684.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 [] 19:13:07.036 [info] Sent 200 in 6ms 19:13:07.040 [info] CONNECTED TO Phoenix.LiveView.Socket in 57µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "Nhw0CTF5MywhEncjWXYNL3xucxogFHoKwsLda5JKld8R18HD87EPWA3Y", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:13:09.298 [info] GET /media_profiles/1 19:13:09.298 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 19:13:09.299 [debug] QUERY OK source="media_profiles" db=0.3ms idle=949.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 WHERE (m0."id" = ?) [1] 19:13:09.300 [debug] QUERY OK source="sources" db=0.6ms idle=949.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."media_profile_id" = ?) ORDER BY s0."custom_name" [1] 19:13:09.301 [debug] QUERY OK source="settings" db=0.3ms idle=951.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 [] 19:13:09.301 [debug] QUERY OK source="settings" db=0.2ms idle=69.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 [] 19:13:09.302 [debug] QUERY OK source="settings" db=0.3ms idle=63.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 [] 19:13:09.305 [info] Sent 200 in 7ms 19:13:11.341 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:13:13.970 [info] GET /media_profiles/1/edit 19:13:13.970 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.edit/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 19:13:13.972 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=1621.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" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 19:13:13.973 [debug] QUERY OK source="settings" db=0.5ms idle=1622.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 [] 19:13:13.973 [debug] QUERY OK source="settings" db=0.4ms idle=1623.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 [] 19:13:13.975 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=733.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 [] 19:13:13.978 [info] Sent 200 in 8ms 19:13:27.408 [info] GET /media_profiles 19:13:27.409 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 19:13:27.409 [debug] QUERY OK source="media_profiles" db=0.4ms idle=137.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", (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" [] 19:13:27.410 [debug] QUERY OK source="settings" db=0.2ms idle=131.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 [] 19:13:27.410 [debug] QUERY OK source="settings" db=0.1ms idle=61.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 [] 19:13:27.411 [debug] QUERY OK source="settings" db=0.1ms idle=61.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 [] 19:13:27.413 [info] Sent 200 in 4ms 19:13:31.599 [info] GET /sources 19:13:31.599 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 19:13:31.600 [debug] QUERY OK source="settings" db=0.3ms idle=320.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 [] 19:13:31.601 [debug] QUERY OK source="settings" db=0.2ms idle=314.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 [] 19:13:31.602 [debug] QUERY OK source="settings" db=0.3ms idle=252.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 [] 19:13:31.603 [debug] QUERY OK source="settings" db=0.3ms idle=253.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 [] 19:13:31.603 [debug] QUERY OK source="settings" db=0.2ms idle=253.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 [] 19:13:31.606 [debug] QUERY OK source="sources" db=2.2ms idle=3.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)) [] 19:13:31.611 [debug] QUERY OK source="sources" db=3.6ms 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", 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] 19:13:31.615 [info] Sent 200 in 16ms 19:13:31.749 [info] CONNECTED TO Phoenix.LiveView.Socket in 43µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "LRoeJDMWIFIUGBUjL3cqDBArBSgnIR0LlufIcZY5YnZRG9ogTr3bPtTX", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:13:31.755 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 19:13:31.758 [debug] QUERY OK source="sources" db=2.4ms idle=154.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)) [] 19:13:31.763 [debug] QUERY OK source="sources" db=3.7ms idle=156.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] 19:13:31.763 [debug] Replied in 8ms 19:13:33.854 [info] GET /sources/new 19:13:33.854 [debug] Processing with PinchflatWeb.Sources.SourceController.new/2 Parameters: %{} Pipelines: [:browser] 19:13:33.856 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.4ms idle=571.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" [] 19:13:33.856 [debug] QUERY OK source="settings" db=0.3ms idle=565.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 [] 19:13:33.857 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=507.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 [] 19:13:33.858 [debug] QUERY OK source="settings" db=0.2ms idle=508.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 [] 19:13:33.859 [debug] QUERY OK source="settings" db=0.3ms 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 [] 19:13:33.860 [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 [] 19:13:33.865 [info] Sent 200 in 11ms 19:13:33.917 [info] CONNECTED TO Phoenix.LiveView.Socket in 43µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "LRoeJDMWIFIUGBUjL3cqDBArBSgnIR0LlufIcZY5YnZRG9ogTr3bPtTX", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:13:41.343 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:14:00.509 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:14:11.345 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:14:12.261 [info] GET /sources 19:14:12.261 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 19:14:12.262 [debug] QUERY OK source="settings" db=0.4ms idle=1897.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 [] 19:14:12.263 [debug] QUERY OK source="settings" db=0.2ms idle=917.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 [] 19:14:12.264 [debug] QUERY OK source="settings" db=0.2ms idle=914.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 [] 19:14:12.265 [debug] QUERY OK source="settings" db=0.2ms idle=905.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 [] 19:14:12.265 [debug] QUERY OK source="settings" db=0.1ms idle=899.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 [] 19:14:12.269 [debug] QUERY OK source="sources" db=2.5ms idle=3.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)) [] 19:14:12.273 [debug] QUERY OK source="sources" db=3.5ms 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", 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] 19:14:12.278 [info] Sent 200 in 16ms 19:14:12.373 [info] CONNECTED TO Phoenix.LiveView.Socket in 33µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "ciYbGCAaQVYFFTkgGTksXBI7WjhCYzgY3IcupV81HcvQqwi7Vblr56qK", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:14:12.387 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 19:14:12.390 [debug] QUERY OK source="sources" db=2.2ms idle=122.1ms 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)) [] 19:14:12.394 [debug] QUERY OK source="sources" db=3.7ms idle=121.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] 19:14:12.395 [debug] Replied in 7ms 19:14:41.347 [info] {"source":"oban","duration":1258,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:15:00.509 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:15:11.350 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:15:41.351 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:16:00.510 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:16:11.353 [info] {"source":"oban","duration":1343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:16:41.355 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:17:00.511 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:17:11.357 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:17:41.359 [info] {"source":"oban","duration":1066,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:18:00.513 [info] {"source":"oban","duration":528,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:18:07.344 [info] GET /sources/new 19:18:07.344 [debug] Processing with PinchflatWeb.Sources.SourceController.new/2 Parameters: %{} Pipelines: [:browser] 19:18:07.346 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=1491.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" [] 19:18:07.346 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1485.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 [] 19:18:07.347 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=997.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 [] 19:18:07.348 [debug] QUERY OK source="settings" db=0.2ms idle=491.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 [] 19:18:07.349 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=485.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 [] 19:18:07.350 [debug] QUERY OK source="settings" db=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 [] 19:18:07.354 [info] CONNECTED TO Phoenix.LiveView.Socket in 40µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "ciYbGCAaQVYFFTkgGTksXBI7WjhCYzgY3IcupV81HcvQqwi7Vblr56qK", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:18:07.356 [info] Sent 200 in 11ms 19:18:07.362 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 19:18:07.365 [debug] QUERY OK source="sources" db=2.2ms idle=15.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)) [] 19:18:07.369 [debug] QUERY OK source="sources" db=3.8ms idle=18.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] 19:18:07.370 [debug] Replied in 8ms 19:18:11.362 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:18:12.951 [info] GET /sources 19:18:12.951 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 19:18:12.952 [debug] QUERY OK source="settings" db=0.3ms idle=1590.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 [] 19:18:12.953 [debug] QUERY OK source="settings" db=0.3ms idle=1087.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 [] 19:18:12.954 [debug] QUERY OK source="settings" db=0.2ms idle=1081.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 [] 19:18:12.955 [debug] QUERY OK source="settings" db=0.4ms idle=87.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 [] 19:18:12.956 [debug] QUERY OK source="settings" db=0.2ms idle=80.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 [] 19:18:12.959 [debug] QUERY OK source="sources" db=2.1ms idle=4.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)) [] 19:18:12.963 [debug] QUERY OK source="sources" db=3.5ms idle=6.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] 19:18:12.967 [info] Sent 200 in 16ms 19:18:13.050 [info] CONNECTED TO Phoenix.LiveView.Socket in 43µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "FQArKgYEMzMhQT0CIDciIBwLcRkTMTxiToSGVHJTl7rsHygKXRGSddu1", "_live_referer" => "undefined", "_mount_attempts" => "0", "_mounts" => "0", "_track_static" => %{"0" => "https://pinchflat.guano.duckdns.org/assets/app-84c55c57753816656f5134f541d32ba5.css?vsn=d", "1" => "https://pinchflat.guano.duckdns.org/assets/app-521b5c83d8b2f79295a25943104e99d5.js?vsn=d"}, "vsn" => "2.0.0"} 19:18:13.069 [debug] MOUNT PinchflatWeb.Sources.SourceLive.IndexTableLive Parameters: :not_mounted_at_router Session: %{"_csrf_token" => "AoxmPLygMvOqhNEkDY6JwUIS", "initial_sort_direction" => :asc, "initial_sort_key" => :custom_name, "results_per_page" => 10} 19:18:13.072 [debug] QUERY OK source="sources" db=2.4ms idle=115.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)) [] 19:18:13.077 [debug] QUERY OK source="sources" db=3.6ms idle=117.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] 19:18:13.077 [debug] Replied in 8ms 19:18:14.330 [info] GET /media_profiles 19:18:14.330 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 19:18:14.331 [debug] QUERY OK source="media_profiles" db=0.5ms idle=1367.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", (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" [] 19:18:14.332 [debug] QUERY OK source="settings" db=0.3ms idle=1259.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 [] 19:18:14.332 [debug] QUERY OK source="settings" db=0.2ms idle=1255.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 [] 19:18:14.333 [debug] QUERY OK source="settings" db=0.3ms idle=462.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 [] 19:18:14.335 [info] Sent 200 in 5ms 19:18:15.570 [info] GET /media_profiles/2 19:18:15.570 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.show/2 Parameters: %{"id" => "2"} Pipelines: [:browser] 19:18:15.571 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=698.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 WHERE (m0."id" = ?) [2] 19:18:15.572 [debug] QUERY OK source="sources" db=0.3ms idle=692.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."media_profile_id" = ?) ORDER BY s0."custom_name" [2] 19:18:15.573 [debug] QUERY OK source="settings" db=0.2ms idle=223.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 [] 19:18:15.575 [debug] QUERY OK source="settings" db=1.7ms idle=223.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 [] 19:18:15.575 [debug] QUERY OK source="settings" db=0.1ms idle=225.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 [] 19:18:15.577 [info] Sent 200 in 7ms 19:18:20.909 [info] GET /media_profiles 19:18:20.909 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 19:18:20.910 [debug] QUERY OK source="media_profiles" db=0.5ms idle=1560.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", (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" [] 19:18:20.911 [debug] QUERY OK source="settings" db=0.3ms idle=1028.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 [] 19:18:20.912 [debug] QUERY OK source="settings" db=0.2ms idle=1022.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 [] 19:18:20.913 [debug] QUERY OK source="settings" db=0.2ms idle=28.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 [] 19:18:20.915 [info] Sent 200 in 6ms 19:18:22.299 [info] GET /media_profiles/new 19:18:22.300 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.new/2 Parameters: %{} Pipelines: [:browser] 19:18:22.300 [debug] QUERY OK source="settings" db=0.3ms idle=1388.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 [] 19:18:22.301 [debug] QUERY OK source="settings" db=0.2ms idle=1389.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 [] 19:18:22.302 [debug] QUERY OK source="settings" db=0.3ms idle=1388.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 [] 19:18:22.303 [debug] QUERY OK source="settings" db=0.4ms idle=415.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 [] 19:18:22.304 [debug] QUERY OK source="settings" db=0.2ms idle=409.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 [] 19:18:22.307 [info] Sent 200 in 8ms 19:18:34.301 [info] GET /media_profiles 19:18:34.301 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 19:18:34.302 [debug] QUERY OK source="media_profiles" db=0.3ms idle=951.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", (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" [] 19:18:34.302 [debug] QUERY OK source="settings" db=0.2ms idle=952.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 [] 19:18:34.303 [debug] QUERY OK source="settings" db=0.1ms idle=953.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 [] 19:18:34.303 [debug] QUERY OK source="settings" db=0.2ms idle=387.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 [] 19:18:34.305 [info] Sent 200 in 4ms 19:18:41.363 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:19:00.515 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:19:11.365 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:19:41.367 [info] {"source":"oban","duration":1247,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:20:00.515 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:20:11.370 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:20:41.371 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:21:00.517 [info] {"source":"oban","duration":465,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:21:11.373 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:21:41.375 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:22:00.518 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:22:11.377 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:22:41.380 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:23:00.519 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:23:11.382 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:23:41.384 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:24:00.520 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:24:11.386 [info] {"source":"oban","duration":1575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:24:41.387 [info] {"source":"oban","duration":1364,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:25:00.522 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:25:11.390 [info] {"source":"oban","duration":1540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:25:41.391 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:26:00.522 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:26:11.393 [info] {"source":"oban","duration":1381,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:26:41.396 [info] {"source":"oban","duration":1575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:27:00.524 [info] {"source":"oban","duration":382,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:27:11.399 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:27:41.401 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:28:00.525 [info] {"source":"oban","duration":512,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:28:11.403 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:28:41.405 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:29:00.525 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:29:11.407 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:29:41.409 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:30:00.527 [info] {"source":"oban","duration":326,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:30:11.410 [info] {"source":"oban","duration":1142,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:30:41.413 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:31:00.527 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:31:11.415 [info] {"source":"oban","duration":1782,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:31:41.418 [info] {"source":"oban","duration":1631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:32:00.528 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:32:11.420 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:32:41.422 [info] {"source":"oban","duration":1624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:33:00.530 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:33:11.424 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:33:41.426 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:34:00.531 [info] {"source":"oban","duration":381,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:34:11.428 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:34:41.430 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:35:00.532 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:35:11.432 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:35:41.433 [info] {"source":"oban","duration":1046,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:36:00.532 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:36:11.436 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:36:41.437 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:37:00.534 [info] {"source":"oban","duration":507,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:37:11.439 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:37:41.441 [info] {"source":"oban","duration":944,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:38:00.534 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:38:11.443 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:38:41.446 [info] {"source":"oban","duration":1624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:39:00.535 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:39:11.448 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:39:41.450 [info] {"source":"oban","duration":1578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:40:00.537 [info] {"source":"oban","duration":431,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:40:11.452 [info] {"source":"oban","duration":1600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:40:41.454 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:41:00.537 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:41:11.457 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:41:41.459 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:42:00.538 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:42:11.461 [info] {"source":"oban","duration":1500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:42:24.960 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770172944960362941,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":15,"tags":["media_item","media_fetching","show_in_dashboard"]} 19:42:24.970 [debug] QUERY OK source="media_items" db=8.9ms queue=0.1ms idle=1611.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" = ?) [89022] 19:42:24.971 [info] User scripts lifecyle file either not present or is empty. Skipping. 19:42:24.974 [debug] QUERY OK source="sources" db=2.8ms idle=1028.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" = ?) [5] 19:42:24.982 [debug] QUERY OK source="media_profiles" db=7.6ms queue=0.1ms idle=1024.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] 19:42:24.991 [debug] QUERY OK source="media_items" db=7.8ms idle=36.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 [89022] 19:42:24.993 [debug] QUERY OK source="media_metadata" db=0.3ms idle=32.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" = ?) [89022] 19:42:24.993 [debug] QUERY OK source="media_profiles" db=0.3ms idle=22.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] 19:42:24.994 [debug] QUERY OK source="settings" db=0.2ms idle=19.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 [] 19:42:24.995 [debug] QUERY OK source="settings" db=0.2ms idle=12.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 [] 19:42:24.995 [debug] Running yt-dlp command for action: get_downloadable_status 19:42:24.997 [debug] QUERY OK source="settings" db=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 [] 19:42:24.997 [debug] QUERY OK source="settings" db=0.3ms 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 [] 19:42:24.998 [debug] QUERY OK source="settings" db=0.3ms 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 [] 19:42:24.998 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/c9/ca/c9ca453d52b84dfe6ef9b67bcdd206fcd717f8c3b86378b9fd604a01c90db4db.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 19:42:27.624 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/c9/ca/c9ca453d52b84dfe6ef9b67bcdd206fcd717f8c3b86378b9fd604a01c90db4db.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 19:42:27.625 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 19:42:27.626 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2665252,"event":"job:exception","queue_time":526969,"attempt":15,"tags":["media_item","media_fetching","show_in_dashboard"]} 19:42:41.462 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:43:00.540 [info] {"source":"oban","duration":430,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:43:11.465 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:43:41.466 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:44:00.541 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:44:11.468 [info] {"source":"oban","duration":1207,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:44:41.471 [info] {"source":"oban","duration":1604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:45:00.542 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:45:11.472 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:45:41.474 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:46:00.543 [info] {"source":"oban","duration":405,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:46:11.476 [info] {"source":"oban","duration":1207,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:46:41.478 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:47:00.551 [info] {"source":"oban","duration":6717,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:47:11.481 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:47:41.482 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:48:00.553 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:48:11.485 [info] {"source":"oban","duration":1369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:48:41.487 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:49:00.554 [info] {"source":"oban","duration":409,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:49:11.489 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:49:41.491 [info] {"source":"oban","duration":1693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:50:00.554 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:50:11.494 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:50:41.496 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:51:00.555 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:51:11.497 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:51:41.499 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:52:00.556 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:52:11.502 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:52:41.504 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:53:00.557 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:53:11.505 [info] {"source":"oban","duration":1238,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:53:41.507 [info] {"source":"oban","duration":1306,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:54:00.559 [info] {"source":"oban","duration":410,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:54:11.509 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:54:41.512 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:55:00.559 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:55:11.514 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:55:41.516 [info] {"source":"oban","duration":1542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:56:00.560 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:56:11.518 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:56:41.519 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:56:43.845 [debug] Tzdata polling for update. 19:56:43.988 [debug] Tzdata polling shows the loaded tz database is up to date. 19:57:00.561 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:57:11.521 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:57:41.523 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:58:00.562 [info] {"source":"oban","duration":261,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:58:11.525 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:58:41.527 [info] {"source":"oban","duration":1225,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:59:00.563 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:59:11.529 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:59:41.531 [info] {"source":"oban","duration":911,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:00:00.564 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:00:11.534 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:00:41.536 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:01:00.566 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:01:11.537 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:01:41.539 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:02:00.566 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:02:11.541 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:02:41.543 [info] {"source":"oban","duration":1326,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:03:00.568 [info] {"source":"oban","duration":971,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:03:11.545 [info] {"source":"oban","duration":1072,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:03:41.548 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:04:00.569 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:04:11.549 [info] {"source":"oban","duration":1376,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:04:41.551 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:05:00.571 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:05:11.553 [info] {"source":"oban","duration":1376,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:05:41.556 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:06:00.572 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:06:11.557 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:06:41.559 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:07:00.572 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:07:11.561 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:07:41.564 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:08:00.573 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:08:11.565 [info] {"source":"oban","duration":1036,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:08:41.567 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:09:00.574 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:09:11.570 [info] {"source":"oban","duration":1361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:09:41.571 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:10:00.575 [info] {"source":"oban","duration":259,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:10:11.573 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:10:41.576 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:11:00.576 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:11:11.578 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:11:41.580 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:12:00.577 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:12:11.582 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:12:41.583 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:13:00.579 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:13:11.586 [info] {"source":"oban","duration":1384,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:13:41.588 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:14:00.580 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:14:11.589 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:14:41.591 [info] {"source":"oban","duration":1327,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:15:00.581 [info] {"source":"oban","duration":414,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:15:11.593 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:15:41.595 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:16:00.582 [info] {"source":"oban","duration":412,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:16:11.597 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:16:41.599 [info] {"source":"oban","duration":1227,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:17:00.582 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:17:11.601 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:17:41.603 [info] {"source":"oban","duration":1072,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:18:00.583 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:18:11.605 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:18:41.607 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:19:00.584 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:19:11.610 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:19:41.612 [info] {"source":"oban","duration":1604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:20:00.585 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:20:11.614 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:20:41.616 [info] {"source":"oban","duration":1645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:21:00.586 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:21:11.617 [info] {"source":"oban","duration":1307,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:21:41.619 [info] {"source":"oban","duration":1230,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:22:00.588 [info] {"source":"oban","duration":404,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:22:11.622 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:22:41.624 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:23:00.588 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:23:11.625 [info] {"source":"oban","duration":1218,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:23:41.628 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:24:00.590 [info] {"source":"oban","duration":423,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:24:11.629 [info] {"source":"oban","duration":1082,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:24:41.631 [info] {"source":"oban","duration":1345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:25:00.590 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:25:11.633 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:25:41.635 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:26:00.592 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:26:11.637 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:26:41.639 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:27:00.593 [info] {"source":"oban","duration":485,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:27:11.642 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:27:41.644 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:28:00.594 [info] {"source":"oban","duration":530,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:28:11.645 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:28:41.647 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:29:00.594 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:29:11.649 [info] {"source":"oban","duration":1109,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:29:41.652 [info] {"source":"oban","duration":1389,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:30:00.596 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:30:11.653 [info] {"source":"oban","duration":1240,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:30:41.655 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:31:00.597 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:31:11.658 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:31:41.659 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:32:00.597 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:32:11.661 [info] {"source":"oban","duration":1030,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:32:41.664 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:33:00.598 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:33:11.665 [info] {"source":"oban","duration":1166,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:33:41.667 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:34:00.600 [info] {"source":"oban","duration":455,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:34:11.669 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:34:41.671 [info] {"source":"oban","duration":894,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:35:00.601 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:35:11.674 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:35:41.676 [info] {"source":"oban","duration":1390,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:36:00.601 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:36:11.677 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:36:41.679 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:37:00.602 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:37:11.682 [info] {"source":"oban","duration":1663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:37:41.684 [info] {"source":"oban","duration":1651,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:38:00.604 [info] {"source":"oban","duration":381,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:38:11.685 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:38:41.687 [info] {"source":"oban","duration":1250,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:39:00.605 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:39:11.690 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:39:41.692 [info] {"source":"oban","duration":1540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:40:00.606 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:40:11.693 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:40:41.695 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:41:00.606 [info] {"source":"oban","duration":291,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:41:11.697 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:41:41.699 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:42:00.607 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:42:11.701 [info] {"source":"oban","duration":1155,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:42:41.703 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:43:00.608 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:43:11.705 [info] {"source":"oban","duration":831,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:43:41.708 [info] {"source":"oban","duration":1588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:44:00.609 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:44:11.709 [info] {"source":"oban","duration":1349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:44:41.711 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:45:00.611 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:45:11.713 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:45:41.715 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:46:00.612 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:46:11.717 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:46:41.720 [info] {"source":"oban","duration":1835,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:47:00.613 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:47:11.722 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:47:41.725 [info] {"source":"oban","duration":1401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:48:00.613 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:48:11.727 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:48:41.728 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:49:00.614 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:49:11.730 [info] {"source":"oban","duration":1309,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:49:41.732 [info] {"source":"oban","duration":1331,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:00.616 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:50:11.735 [info] {"source":"oban","duration":1611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:41.736 [info] {"source":"oban","duration":1124,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:51:00.617 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:51:11.738 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:51:41.741 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:52:00.617 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:52:11.742 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:52:41.744 [info] {"source":"oban","duration":1309,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:53:00.619 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:53:11.746 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:53:41.748 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:54:00.620 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:54:11.751 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:54:41.753 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:55:00.620 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:55:11.755 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:55:41.757 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:56:00.621 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:56:11.759 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:56:41.761 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:57:00.622 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:57:11.762 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:57:41.764 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:00.623 [info] {"source":"oban","duration":232,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:58:11.766 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:41.768 [info] {"source":"oban","duration":1238,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:59:00.624 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:59:11.770 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:59:41.772 [info] {"source":"oban","duration":1145,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:00:00.625 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:00:11.775 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:00:41.776 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:01:00.627 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:01:11.779 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:01:41.780 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:02:00.628 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:02:11.782 [info] {"source":"oban","duration":1240,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:02:41.784 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:03:00.628 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:03:11.786 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:03:41.789 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:04:00.629 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:04:11.790 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:04:41.792 [info] {"source":"oban","duration":1356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:05:00.631 [info] {"source":"oban","duration":380,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:05:11.794 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:05:41.796 [info] {"source":"oban","duration":1196,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:06:00.631 [info] {"source":"oban","duration":301,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:06:11.798 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:06:41.800 [info] {"source":"oban","duration":1219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:07:00.633 [info] {"source":"oban","duration":563,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:07:11.802 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:07:41.805 [info] {"source":"oban","duration":1794,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:08:00.634 [info] {"source":"oban","duration":401,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:08:11.808 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:08:41.810 [info] {"source":"oban","duration":1585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:09:00.634 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:09:11.812 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:09:41.814 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:10:00.635 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:10:11.815 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:10:41.817 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:11:00.637 [info] {"source":"oban","duration":433,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:11:11.819 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:11:41.822 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:12:00.638 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:12:11.823 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:12:41.825 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:13:00.638 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:13:11.827 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:13:41.829 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:14:00.639 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:14:11.831 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:14:41.833 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:15:00.641 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:15:11.835 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:15:41.837 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:16:00.642 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:16:11.840 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:16:41.841 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:17:00.642 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:17:11.843 [info] {"source":"oban","duration":1356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:17:41.846 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:18:00.644 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:18:11.847 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:18:41.850 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:19:00.645 [info] {"source":"oban","duration":444,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:19:11.851 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:19:41.853 [info] {"source":"oban","duration":901,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:20:00.645 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:20:11.855 [info] {"source":"oban","duration":910,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:20:41.857 [info] {"source":"oban","duration":1166,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:21:00.647 [info] {"source":"oban","duration":482,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:21:11.859 [info] {"source":"oban","duration":930,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:21:41.861 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:22:00.647 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:22:11.863 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:22:41.865 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:23:00.649 [info] {"source":"oban","duration":386,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:23:11.867 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:23:41.869 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:24:00.649 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:24:11.872 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:24:41.874 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:25:00.650 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:25:11.876 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:25:41.878 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:26:00.652 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:26:11.880 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:26:41.881 [info] {"source":"oban","duration":1228,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:27:00.653 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:27:11.883 [info] {"source":"oban","duration":990,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:27:41.886 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:28:00.653 [info] {"source":"oban","duration":226,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:28:11.887 [info] {"source":"oban","duration":1266,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:28:41.889 [info] {"source":"oban","duration":1078,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:29:00.654 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:29:11.891 [info] {"source":"oban","duration":1175,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:29:41.893 [info] {"source":"oban","duration":1093,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:30:00.655 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:30:11.895 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:30:41.897 [info] {"source":"oban","duration":1221,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:31:00.657 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:31:11.899 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:31:41.901 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:32:00.658 [info] {"source":"oban","duration":407,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:32:11.904 [info] {"source":"oban","duration":1651,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:32:41.907 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:33:00.659 [info] {"source":"oban","duration":355,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:33:11.909 [info] {"source":"oban","duration":1630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:33:41.911 [info] {"source":"oban","duration":1559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:34:00.659 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:34:11.913 [info] {"source":"oban","duration":1653,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:34:41.915 [info] {"source":"oban","duration":1605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:35:00.660 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:35:11.916 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:35:41.919 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:36:00.661 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:36:11.920 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:36:41.923 [info] {"source":"oban","duration":1493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:37:00.662 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:37:11.925 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:37:41.926 [info] {"source":"oban","duration":1126,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:38:00.664 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:38:11.929 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:38:41.930 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:39:00.665 [info] {"source":"oban","duration":383,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:39:11.932 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:39:41.934 [info] {"source":"oban","duration":882,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:40:00.665 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:40:11.937 [info] {"source":"oban","duration":1680,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:40:41.938 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:41:00.667 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:41:11.941 [info] {"source":"oban","duration":1499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:41:41.943 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:42:00.668 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:42:11.945 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:42:41.946 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:43:00.669 [info] {"source":"oban","duration":403,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:43:11.949 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:43:41.951 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:44:00.670 [info] {"source":"oban","duration":434,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:44:11.952 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:44:41.955 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:45:00.670 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:45:11.957 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:45:41.958 [info] {"source":"oban","duration":1204,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:46:00.672 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:46:11.960 [info] {"source":"oban","duration":1310,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:46:41.962 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:47:00.672 [info] {"source":"oban","duration":396,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:47:11.964 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:47:41.966 [info] {"source":"oban","duration":1169,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:48:00.674 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:48:11.968 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:48:41.971 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:49:00.674 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:49:11.973 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:49:41.974 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:50:00.675 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:50:11.976 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:50:41.978 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:51:00.677 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:51:11.980 [info] {"source":"oban","duration":1045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:51:41.983 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:52:00.677 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:52:11.984 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:52:41.987 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:53:00.678 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:53:11.989 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:53:41.991 [info] {"source":"oban","duration":1628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:54:00.679 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:54:11.993 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:54:41.994 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:55:00.680 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:55:11.996 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:55:41.998 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:56:00.682 [info] {"source":"oban","duration":378,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:56:12.001 [info] {"source":"oban","duration":1700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:56:42.004 [info] {"source":"oban","duration":1663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:57:00.682 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:57:12.006 [info] {"source":"oban","duration":1628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:57:42.008 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:58:00.684 [info] {"source":"oban","duration":399,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:58:12.009 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:58:42.012 [info] {"source":"oban","duration":1716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:59:00.684 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:59:12.015 [info] {"source":"oban","duration":1761,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:59:42.018 [info] {"source":"oban","duration":1768,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:00:00.685 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:00:12.021 [info] {"source":"oban","duration":1676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:00:42.022 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:01:00.686 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:01:12.024 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:01:42.027 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:02:00.687 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:02:12.028 [info] {"source":"oban","duration":1066,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:02:42.030 [info] {"source":"oban","duration":1036,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:03:00.688 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:03:12.032 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:03:42.034 [info] {"source":"oban","duration":894,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:04:00.689 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:04:12.037 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:04:42.038 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:05:00.690 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:05:12.040 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:05:42.043 [info] {"source":"oban","duration":1544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:06:00.692 [info] {"source":"oban","duration":362,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:06:12.045 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:06:42.047 [info] {"source":"oban","duration":1531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:07:00.693 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:07:12.048 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:07:42.050 [info] {"source":"oban","duration":875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:08:00.693 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:08:12.052 [info] {"source":"oban","duration":1235,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:08:42.054 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:09:00.694 [info] {"source":"oban","duration":254,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:09:12.056 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:09:42.058 [info] {"source":"oban","duration":927,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:10:00.695 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:10:12.061 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:10:42.063 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:11:00.697 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:11:12.064 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:11:42.066 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:12:00.697 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:12:12.069 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:12:42.070 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:13:00.699 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:13:12.073 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:13:42.074 [info] {"source":"oban","duration":1307,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:14:00.700 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:14:12.077 [info] {"source":"oban","duration":1690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:14:42.080 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:15:00.701 [info] {"source":"oban","duration":399,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:15:12.082 [info] {"source":"oban","duration":1596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:15:42.084 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:16:00.701 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:16:12.086 [info] {"source":"oban","duration":1688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:16:42.087 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:17:00.703 [info] {"source":"oban","duration":383,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:17:12.089 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:17:42.091 [info] {"source":"oban","duration":1077,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:18:00.704 [info] {"source":"oban","duration":492,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:18:12.094 [info] {"source":"oban","duration":1586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:18:42.095 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:19:00.704 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:19:12.097 [info] {"source":"oban","duration":1141,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:19:42.099 [info] {"source":"oban","duration":937,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:20:00.705 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:20:12.101 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:20:42.103 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:21:00.707 [info] {"source":"oban","duration":436,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:21:12.106 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:21:42.107 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:22:00.708 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:22:12.110 [info] {"source":"oban","duration":1592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:22:42.112 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:23:00.709 [info] {"source":"oban","duration":382,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:23:12.114 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:23:42.116 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:24:00.709 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:24:12.117 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:24:42.119 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:25:00.711 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:25:12.121 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:25:42.123 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:26:00.712 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:26:12.125 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:26:42.127 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:27:00.712 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:27:12.129 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:27:42.131 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:00.714 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:28:12.134 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:42.136 [info] {"source":"oban","duration":1684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:29:00.715 [info] {"source":"oban","duration":383,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:29:12.139 [info] {"source":"oban","duration":1365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:29:42.141 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:30:00.716 [info] {"source":"oban","duration":404,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:30:12.142 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:30:42.145 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:31:00.716 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:31:12.147 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:31:42.149 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:32:00.717 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:32:12.151 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:32:42.152 [info] {"source":"oban","duration":1254,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:33:00.718 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:33:12.154 [info] {"source":"oban","duration":1184,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:33:42.156 [info] {"source":"oban","duration":1265,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:34:00.719 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:34:12.158 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:34:42.160 [info] {"source":"oban","duration":1081,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:35:00.721 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:35:12.162 [info] {"source":"oban","duration":1231,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:35:42.164 [info] {"source":"oban","duration":1092,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:36:00.722 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:36:12.166 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:36:42.169 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:00.723 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:37:12.171 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:42.173 [info] {"source":"oban","duration":1520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:00.723 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:38:12.175 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:42.177 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:00.724 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:39:12.179 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:42.180 [info] {"source":"oban","duration":1385,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:00.725 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:40:12.182 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:42.185 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:00.727 [info] {"source":"oban","duration":711,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:41:12.186 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:42.188 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:00.729 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:42:12.190 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:42.192 [info] {"source":"oban","duration":1226,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:00.730 [info] {"source":"oban","duration":390,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:43:12.194 [info] {"source":"oban","duration":895,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:42.196 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:00.730 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:44:12.198 [info] {"source":"oban","duration":913,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:42.201 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:00.731 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:45:12.203 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:42.204 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:00.733 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:46:12.207 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:42.209 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:00.733 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:47:12.211 [info] {"source":"oban","duration":1540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:42.213 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:00.734 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:48:12.214 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:42.217 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:00.736 [info] {"source":"oban","duration":301,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:49:12.219 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:42.221 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:00.737 [info] {"source":"oban","duration":392,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:50:12.223 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:42.224 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:00.738 [info] {"source":"oban","duration":408,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:51:12.226 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:42.228 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:00.739 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:52:12.230 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:42.233 [info] {"source":"oban","duration":1567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:00.740 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:53:12.235 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:42.237 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:00.741 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:54:12.238 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:42.241 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:00.741 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:55:12.243 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:42.245 [info] {"source":"oban","duration":1617,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:00.742 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:56:12.246 [info] {"source":"oban","duration":1218,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:42.249 [info] {"source":"oban","duration":1364,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:00.744 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:57:12.251 [info] {"source":"oban","duration":1302,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:42.253 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:00.745 [info] {"source":"oban","duration":424,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:58:12.255 [info] {"source":"oban","duration":983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:42.257 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:00.746 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:59:12.259 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:42.261 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:00.747 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:00:12.263 [info] {"source":"oban","duration":1122,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:42.266 [info] {"source":"oban","duration":2038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:00.748 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:01:12.268 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:42.270 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:00.748 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:02:12.273 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:42.274 [info] {"source":"oban","duration":1206,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:00.750 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:03:12.276 [info] {"source":"oban","duration":1443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:42.279 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:00.750 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:04:12.281 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:42.283 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:00.751 [info] {"source":"oban","duration":301,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:05:12.284 [info] {"source":"oban","duration":1207,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:42.286 [info] {"source":"oban","duration":1055,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:00.753 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:06:12.288 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:42.290 [info] {"source":"oban","duration":1219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:00.753 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:07:12.292 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:42.294 [info] {"source":"oban","duration":1266,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:00.755 [info] {"source":"oban","duration":418,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:08:12.296 [info] {"source":"oban","duration":1302,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:42.298 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:00.755 [info] {"source":"oban","duration":266,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:09:12.301 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:42.302 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:00.757 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:10:12.304 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:42.306 [info] {"source":"oban","duration":1307,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:00.757 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:11:12.309 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:42.311 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:00.758 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:12:12.313 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:42.314 [info] {"source":"oban","duration":1241,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:00.760 [info] {"source":"oban","duration":386,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:13:12.316 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:42.319 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:00.761 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:14:12.320 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:42.323 [info] {"source":"oban","duration":1465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:00.762 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:15:12.324 [info] {"source":"oban","duration":1083,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:42.326 [info] {"source":"oban","duration":1188,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:00.763 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:16:12.328 [info] {"source":"oban","duration":866,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:42.330 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:00.763 [info] {"source":"oban","duration":419,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:17:12.333 [info] {"source":"oban","duration":1678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:42.334 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:00.764 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:18:12.336 [info] {"source":"oban","duration":1375,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:42.339 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:00.766 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:19:12.341 [info] {"source":"oban","duration":1616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:42.344 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:00.766 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:20:12.346 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:42.348 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:00.767 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:21:12.349 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:42.351 [info] {"source":"oban","duration":1375,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:00.769 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:22:12.353 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:42.355 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:00.770 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:23:12.357 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:42.359 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:00.770 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:24:12.361 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:42.363 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:00.771 [info] {"source":"oban","duration":330,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:25:12.365 [info] {"source":"oban","duration":742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:42.367 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:00.772 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:26:12.370 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:42.372 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:00.774 [info] {"source":"oban","duration":411,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:27:12.373 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:42.376 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:00.774 [info] {"source":"oban","duration":253,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:28:12.378 [info] {"source":"oban","duration":1369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:42.380 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:00.776 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:29:12.381 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:42.383 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:00.777 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:30:12.385 [info] {"source":"oban","duration":1235,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:42.387 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:00.777 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:31:12.389 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:42.391 [info] {"source":"oban","duration":1042,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:00.778 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:32:12.393 [info] {"source":"oban","duration":884,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:42.395 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:00.779 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:33:12.397 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:42.400 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:00.781 [info] {"source":"oban","duration":412,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:34:12.401 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:42.403 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:00.781 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:35:12.405 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:42.407 [info] {"source":"oban","duration":1049,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:00.782 [info] {"source":"oban","duration":254,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:36:12.409 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:42.411 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:00.783 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:37:12.413 [info] {"source":"oban","duration":1228,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:42.416 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:00.784 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:38:12.417 [info] {"source":"oban","duration":1224,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:42.419 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:00.785 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:39:12.421 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:42.423 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:00.787 [info] {"source":"oban","duration":355,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:40:12.425 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:42.427 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:00.787 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:41:12.429 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:42.432 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:00.788 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:42:12.434 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:42.435 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:00.789 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:43:12.438 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:42.439 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:00.790 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:44:12.442 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:42.443 [info] {"source":"oban","duration":1196,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:00.792 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:45:12.445 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:42.447 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:00.793 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:46:12.449 [info] {"source":"oban","duration":894,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:42.455 [info] {"source":"oban","duration":4539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:00.794 [info] {"source":"oban","duration":415,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:47:12.457 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:42.460 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:00.795 [info] {"source":"oban","duration":410,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:48:12.462 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:42.463 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:00.795 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:49:12.465 [info] {"source":"oban","duration":912,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:42.467 [info] {"source":"oban","duration":1100,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:00.797 [info] {"source":"oban","duration":430,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:50:12.470 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:42.472 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:00.798 [info] {"source":"oban","duration":406,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:51:12.473 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:42.476 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:00.798 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:52:12.478 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:42.479 [info] {"source":"oban","duration":1170,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:00.800 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:53:12.481 [info] {"source":"oban","duration":1209,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:42.484 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:00.800 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:54:12.485 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:42.487 [info] {"source":"oban","duration":1316,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:00.801 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:55:12.490 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:42.491 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:00.803 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:56:12.493 [info] {"source":"oban","duration":1140,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:42.496 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:00.804 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:57:12.497 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:42.499 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:00.805 [info] {"source":"oban","duration":396,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:58:12.502 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:42.503 [info] {"source":"oban","duration":1361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:00.806 [info] {"source":"oban","duration":436,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:59:12.505 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:42.507 [info] {"source":"oban","duration":1362,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:00:00.806 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:00:12.509 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:00:42.511 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:00.808 [info] {"source":"oban","duration":490,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:01:12.514 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:42.515 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:00.808 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:02:12.517 [info] {"source":"oban","duration":1115,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:42.519 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:00.810 [info] {"source":"oban","duration":482,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:03:12.521 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:42.523 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:00.811 [info] {"source":"oban","duration":381,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:04:12.525 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:42.527 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:00.812 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:05:12.529 [info] {"source":"oban","duration":1264,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:42.531 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:00.812 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:06:12.533 [info] {"source":"oban","duration":1160,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:42.536 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:00.813 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:07:12.537 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:42.540 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:00.814 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:08:12.542 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:42.544 [info] {"source":"oban","duration":1747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:00.816 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:09:12.547 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:42.549 [info] {"source":"oban","duration":1575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:00.817 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:10:12.550 [info] {"source":"oban","duration":1207,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:42.552 [info] {"source":"oban","duration":1102,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:00.818 [info] {"source":"oban","duration":378,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:11:12.554 [info] {"source":"oban","duration":984,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:42.556 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:00.818 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:12:12.558 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:42.560 [info] {"source":"oban","duration":1189,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:00.820 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:13:12.562 [info] {"source":"oban","duration":1310,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:42.565 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:00.821 [info] {"source":"oban","duration":434,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:14:12.567 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:42.570 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:00.821 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:15:12.572 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:42.573 [info] {"source":"oban","duration":1179,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:00.822 [info] {"source":"oban","duration":404,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:16:12.576 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:42.578 [info] {"source":"oban","duration":1799,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:00.824 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:17:12.580 [info] {"source":"oban","duration":1200,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:42.583 [info] {"source":"oban","duration":1550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:00.825 [info] {"source":"oban","duration":413,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:18:12.584 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:42.586 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:00.826 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:19:12.589 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:42.590 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:00.826 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:20:12.592 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:42.595 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:00.827 [info] {"source":"oban","duration":303,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:21:12.596 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:42.598 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:00.828 [info] {"source":"oban","duration":326,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:22:12.600 [info] {"source":"oban","duration":1272,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:42.602 [info] {"source":"oban","duration":734,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:00.829 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:23:12.605 [info] {"source":"oban","duration":1380,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:42.606 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:00.830 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:24:12.609 [info] {"source":"oban","duration":1390,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:42.610 [info] {"source":"oban","duration":1150,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:00.831 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:25:12.612 [info] {"source":"oban","duration":1345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:42.614 [info] {"source":"oban","duration":1133,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:00.833 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:26:12.617 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:42.618 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:00.833 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:27:12.620 [info] {"source":"oban","duration":1298,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:42.622 [info] {"source":"oban","duration":1254,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:00.834 [info] {"source":"oban","duration":291,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:28:12.625 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:42.626 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:00.835 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:29:12.628 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:42.630 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:00.836 [info] {"source":"oban","duration":291,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:30:12.632 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:42.634 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:00.838 [info] {"source":"oban","duration":432,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:31:12.637 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:42.639 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:00.838 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:32:12.641 [info] {"source":"oban","duration":1781,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:42.644 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:00.840 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:33:12.646 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:42.647 [info] {"source":"oban","duration":1376,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:00.841 [info] {"source":"oban","duration":397,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:34:12.650 [info] {"source":"oban","duration":1710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:42.651 [info] {"source":"oban","duration":1160,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:00.842 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:35:12.653 [info] {"source":"oban","duration":1184,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:42.655 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:00.843 [info] {"source":"oban","duration":383,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:36:12.657 [info] {"source":"oban","duration":1225,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:42.659 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:00.844 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:37:12.662 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:42.664 [info] {"source":"oban","duration":1620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:00.845 [info] {"source":"oban","duration":390,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:38:12.665 [info] {"source":"oban","duration":1055,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:42.667 [info] {"source":"oban","duration":1221,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:00.846 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:39:12.669 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:42.672 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:00.846 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:40:12.674 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:42.675 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:00.847 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:41:12.678 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:42.680 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:00.849 [info] {"source":"oban","duration":392,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:42:12.681 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:42.683 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:43:00.850 [info] {"source":"oban","duration":416,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:43:12.686 [info] {"source":"oban","duration":1646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:43:42.688 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:44:00.851 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:44:12.690 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:44:42.692 [info] {"source":"oban","duration":1310,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:00.852 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:45:12.694 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:42.696 [info] {"source":"oban","duration":1053,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:46:00.853 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:46:12.699 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:46:42.700 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:47:00.854 [info] {"source":"oban","duration":398,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:47:12.702 [info] {"source":"oban","duration":1106,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:47:42.705 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:48:00.855 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:48:12.706 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:48:42.709 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:49:00.856 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:49:12.711 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:49:42.713 [info] {"source":"oban","duration":1541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:50:00.856 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:50:12.715 [info] {"source":"oban","duration":1562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:50:42.717 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:51:00.858 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:51:12.719 [info] {"source":"oban","duration":1533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:51:42.720 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:52:00.859 [info] {"source":"oban","duration":424,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:52:12.722 [info] {"source":"oban","duration":1147,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:52:42.724 [info] {"source":"oban","duration":1079,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:53:00.859 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:53:12.726 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:53:42.728 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:54:00.860 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:54:12.730 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:54:42.732 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:55:00.861 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:55:12.734 [info] {"source":"oban","duration":1206,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:55:42.736 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:56:00.862 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:56:12.739 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:56:42.741 [info] {"source":"oban","duration":1389,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:57:00.863 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:57:12.742 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:57:42.744 [info] {"source":"oban","duration":1267,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:58:00.865 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:58:12.747 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:58:42.748 [info] {"source":"oban","duration":1164,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:59:00.865 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:59:12.751 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:59:42.753 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:00:00.866 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:00:12.754 [info] {"source":"oban","duration":1194,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:00:42.756 [info] {"source":"oban","duration":1066,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:01:00.867 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:01:12.758 [info] {"source":"oban","duration":1264,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:01:42.760 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:02:00.868 [info] {"source":"oban","duration":397,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:02:12.762 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:02:42.764 [info] {"source":"oban","duration":1369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:03:00.869 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:03:12.766 [info] {"source":"oban","duration":1093,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:03:42.769 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:04:00.870 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:04:12.771 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:04:42.773 [info] {"source":"oban","duration":1639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:05:00.871 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:05:12.775 [info] {"source":"oban","duration":1713,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:05:42.778 [info] {"source":"oban","duration":1631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:06:00.872 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:06:12.780 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:06:42.781 [info] {"source":"oban","duration":1266,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:07:00.873 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:07:12.783 [info] {"source":"oban","duration":1282,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:07:42.785 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:08:00.875 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:08:12.787 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:08:42.789 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:09:00.876 [info] {"source":"oban","duration":477,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:09:12.792 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:09:42.794 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:10:00.877 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:10:12.796 [info] {"source":"oban","duration":1273,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:10:42.798 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:11:00.878 [info] {"source":"oban","duration":398,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:11:12.800 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:11:42.802 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:12:00.878 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:12:12.805 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:12:42.807 [info] {"source":"oban","duration":1634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:13:00.880 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:13:12.808 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:13:42.810 [info] {"source":"oban","duration":1141,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:14:00.881 [info] {"source":"oban","duration":394,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:14:12.813 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:14:42.815 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:15:00.882 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:15:12.817 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:15:42.818 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:16:00.883 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:16:12.820 [info] {"source":"oban","duration":1219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:16:42.822 [info] {"source":"oban","duration":1082,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:00.884 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:17:12.825 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:42.827 [info] {"source":"oban","duration":1533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:18:00.884 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:18:12.829 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:18:42.830 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:19:00.886 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:19:12.832 [info] {"source":"oban","duration":1113,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:19:42.834 [info] {"source":"oban","duration":1307,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:20:00.886 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:20:12.837 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:20:42.839 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:21:00.888 [info] {"source":"oban","duration":387,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:21:12.841 [info] {"source":"oban","duration":1663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:21:42.844 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:22:00.889 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:22:12.845 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:22:42.848 [info] {"source":"oban","duration":1558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:23:00.889 [info] {"source":"oban","duration":355,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:23:12.849 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:23:42.851 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:00.891 [info] {"source":"oban","duration":439,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:24:12.853 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:42.855 [info] {"source":"oban","duration":1265,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:25:00.891 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:25:12.857 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:25:42.860 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:00.893 [info] {"source":"oban","duration":523,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:26:12.861 [info] {"source":"oban","duration":1307,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:42.863 [info] {"source":"oban","duration":1331,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:27:00.893 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:27:12.865 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:27:42.867 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:28:00.894 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:28:12.870 [info] {"source":"oban","duration":1591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:28:42.873 [info] {"source":"oban","duration":1539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:29:00.896 [info] {"source":"oban","duration":424,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:29:12.875 [info] {"source":"oban","duration":1592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:29:42.877 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:30:00.896 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:30:12.878 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:30:42.880 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:31:00.898 [info] {"source":"oban","duration":404,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:31:12.883 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:31:42.884 [info] {"source":"oban","duration":1196,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:32:00.898 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:32:12.886 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:32:42.888 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:33:00.900 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:33:12.890 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:33:42.892 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:34:00.900 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:34:12.894 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:34:42.896 [info] {"source":"oban","duration":902,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:35:00.901 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:35:12.898 [info] {"source":"oban","duration":1144,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:35:42.900 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:36:00.902 [info] {"source":"oban","duration":218,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:36:12.903 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:36:42.905 [info] {"source":"oban","duration":1579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:00.903 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:37:12.906 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:42.909 [info] {"source":"oban","duration":1852,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:38:00.905 [info] {"source":"oban","duration":390,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:38:12.912 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:38:42.914 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:39:00.906 [info] {"source":"oban","duration":392,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:39:12.916 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:39:42.918 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:40:00.907 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:40:12.919 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:40:42.921 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:41:00.907 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:41:12.923 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:41:42.925 [info] {"source":"oban","duration":1306,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:42:00.909 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:42:12.927 [info] {"source":"oban","duration":1259,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:42:42.929 [info] {"source":"oban","duration":924,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:43:00.909 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:43:12.931 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:43:42.933 [info] {"source":"oban","duration":868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:44:00.910 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:44:12.936 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:44:42.938 [info] {"source":"oban","duration":1527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:45:00.912 [info] {"source":"oban","duration":444,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:45:12.940 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:45:42.942 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:46:00.912 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:46:12.944 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:46:42.946 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:47:00.914 [info] {"source":"oban","duration":395,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:47:12.948 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:47:42.949 [info] {"source":"oban","duration":1121,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:48:00.915 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:48:12.951 [info] {"source":"oban","duration":1266,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:48:42.953 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:49:00.916 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:49:12.955 [info] {"source":"oban","duration":1195,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:49:42.957 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:50:00.916 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:50:12.959 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:50:42.961 [info] {"source":"oban","duration":1081,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:51:00.917 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:51:12.963 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:51:42.965 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:52:00.918 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:52:12.968 [info] {"source":"oban","duration":1596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:52:42.969 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:53:00.920 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:53:12.972 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:53:42.974 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:54:00.921 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:54:12.976 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:54:42.978 [info] {"source":"oban","duration":1569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:55:00.922 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:55:12.980 [info] {"source":"oban","duration":1569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:55:42.982 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:56:00.922 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:56:12.984 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:56:42.985 [info] {"source":"oban","duration":1198,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:00.923 [info] {"source":"oban","duration":248,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:57:12.987 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:42.989 [info] {"source":"oban","duration":1245,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:58:00.924 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:58:12.991 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:58:42.993 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:59:00.925 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:59:12.995 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:59:42.997 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:00:00.927 [info] {"source":"oban","duration":550,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:00:12.999 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:00:43.002 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:01:00.928 [info] {"source":"oban","duration":402,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:01:13.004 [info] {"source":"oban","duration":1601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:01:43.005 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:02:00.928 [info] {"source":"oban","duration":253,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:02:13.007 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:02:43.009 [info] {"source":"oban","duration":1190,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:00.929 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:03:13.012 [info] {"source":"oban","duration":1773,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:43.014 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:04:00.931 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:04:13.016 [info] {"source":"oban","duration":1109,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:04:43.018 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:05:00.931 [info] {"source":"oban","duration":303,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:05:13.020 [info] {"source":"oban","duration":1316,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:05:43.022 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:00.932 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:06:13.025 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:43.026 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:07:00.933 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:07:13.028 [info] {"source":"oban","duration":882,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:07:43.030 [info] {"source":"oban","duration":972,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:08:00.934 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:08:13.032 [info] {"source":"oban","duration":1228,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:08:43.034 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:09:00.936 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:09:13.037 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:09:43.039 [info] {"source":"oban","duration":1356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:10:00.936 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:10:13.041 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:10:43.043 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:11:00.938 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:11:13.045 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:11:43.046 [info] {"source":"oban","duration":1127,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:12:00.938 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:12:13.048 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:12:43.050 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:13:00.940 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:13:13.052 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:13:43.054 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:00.941 [info] {"source":"oban","duration":394,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:14:13.057 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:43.058 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:15:00.941 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:15:13.061 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:15:43.062 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:16:00.943 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:16:13.064 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:16:43.066 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:17:00.944 [info] {"source":"oban","duration":432,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:17:13.069 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:17:43.070 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:18:00.945 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:18:13.072 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:18:43.075 [info] {"source":"oban","duration":1686,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:19:00.945 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:19:13.077 [info] {"source":"oban","duration":1598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:19:43.078 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:20:00.946 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:20:13.080 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:20:43.082 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:21:00.948 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:21:13.085 [info] {"source":"oban","duration":1347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:21:43.087 [info] {"source":"oban","duration":1573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:22:00.948 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:22:13.088 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:22:43.091 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:23:00.949 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:23:13.092 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:23:43.094 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:24:00.951 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:24:13.096 [info] {"source":"oban","duration":849,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:24:43.098 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:25:00.952 [info] {"source":"oban","duration":428,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:25:13.101 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:25:43.102 [info] {"source":"oban","duration":1310,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:26:00.952 [info] {"source":"oban","duration":394,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:26:13.105 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:26:43.107 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:00.953 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:27:13.108 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:43.110 [info] {"source":"oban","duration":1140,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:28:00.955 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:28:13.112 [info] {"source":"oban","duration":1165,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:28:43.114 [info] {"source":"oban","duration":1258,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:29:00.956 [info] {"source":"oban","duration":407,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:29:13.117 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:29:43.118 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:30:00.957 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:30:13.120 [info] {"source":"oban","duration":1364,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:30:43.122 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:31:00.958 [info] {"source":"oban","duration":394,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:31:13.124 [info] {"source":"oban","duration":1110,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:31:43.126 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:32:00.959 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:32:13.128 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:32:43.130 [info] {"source":"oban","duration":869,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:33:00.961 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:33:13.132 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:33:43.134 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:34:00.962 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:34:13.137 [info] {"source":"oban","duration":1532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:34:43.139 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:35:00.963 [info] {"source":"oban","duration":401,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:35:13.140 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:35:43.142 [info] {"source":"oban","duration":1337,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:36:00.963 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:36:13.144 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:36:43.146 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:37:00.964 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:37:13.148 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:37:43.150 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:38:00.965 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:38:13.152 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:38:43.155 [info] {"source":"oban","duration":1589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:39:00.966 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:39:13.156 [info] {"source":"oban","duration":1155,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:39:43.158 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:40:00.968 [info] {"source":"oban","duration":507,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:40:13.160 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:40:43.162 [info] {"source":"oban","duration":1063,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:41:00.969 [info] {"source":"oban","duration":443,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:41:13.165 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:41:43.166 [info] {"source":"oban","duration":1222,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:42:00.970 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:42:13.169 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:42:43.170 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:43:00.971 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:43:13.172 [info] {"source":"oban","duration":1101,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:43:43.174 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:44:00.971 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:44:13.177 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:44:43.178 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:45:00.972 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:45:13.180 [info] {"source":"oban","duration":1204,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:45:43.183 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:46:00.973 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:46:13.184 [info] {"source":"oban","duration":917,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:46:43.186 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:47:00.975 [info] {"source":"oban","duration":727,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:47:13.188 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:47:43.190 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:48:00.976 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:48:13.192 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:48:43.194 [info] {"source":"oban","duration":1149,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:49:00.977 [info] {"source":"oban","duration":294,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:49:13.196 [info] {"source":"oban","duration":869,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:49:43.198 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:50:00.978 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:50:13.200 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:50:43.202 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:51:00.979 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:51:13.205 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:51:43.206 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:52:00.981 [info] {"source":"oban","duration":483,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:52:13.208 [info] {"source":"oban","duration":1362,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:52:43.210 [info] {"source":"oban","duration":1183,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:53:00.981 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:53:13.213 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:53:43.214 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:54:00.983 [info] {"source":"oban","duration":440,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:54:13.217 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:54:43.218 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:00.983 [info] {"source":"oban","duration":254,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:55:13.220 [info] {"source":"oban","duration":1310,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:43.222 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:56:00.984 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:56:13.224 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:56:43.226 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:57:00.985 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:57:13.228 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:57:43.230 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:58:00.987 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:58:13.233 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:58:43.234 [info] {"source":"oban","duration":1254,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:59:00.987 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:59:13.237 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:59:43.239 [info] {"source":"oban","duration":1411,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:00:00.989 [info] {"source":"oban","duration":504,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:00:13.241 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:00:43.242 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:01:00.990 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:01:13.244 [info] {"source":"oban","duration":989,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:01:43.246 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:00.990 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:02:13.248 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:43.250 [info] {"source":"oban","duration":1065,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:03:00.992 [info] {"source":"oban","duration":1032,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:03:13.252 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:03:43.255 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:04:00.994 [info] {"source":"oban","duration":569,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:04:13.256 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:04:43.258 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:05:00.995 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:05:13.260 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:05:43.261 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:06:00.995 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:06:13.264 [info] {"source":"oban","duration":1805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:06:43.266 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:07:00.997 [info] {"source":"oban","duration":416,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:07:13.268 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:07:43.271 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:08:00.997 [info] {"source":"oban","duration":408,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:08:13.272 [info] {"source":"oban","duration":956,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:08:43.274 [info] {"source":"oban","duration":1341,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:09:00.998 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:09:13.276 [info] {"source":"oban","duration":1343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:09:43.278 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:10:00.999 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:10:13.280 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:10:43.282 [info] {"source":"oban","duration":1077,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:11:01.000 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:11:13.284 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:11:43.286 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:12:00.001 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:12:13.288 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:12:43.290 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:13:00.002 [info] {"source":"oban","duration":301,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:13:13.292 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:13:43.294 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:14:00.004 [info] {"source":"oban","duration":381,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:14:13.297 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:14:43.299 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:15:00.005 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:15:13.301 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:15:43.303 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:00.005 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:16:13.304 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:43.307 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:17:00.006 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:17:13.309 [info] {"source":"oban","duration":1643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:17:43.311 [info] {"source":"oban","duration":1550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:18:00.007 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:18:13.312 [info] {"source":"oban","duration":881,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:18:43.314 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:19:00.008 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:19:13.316 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:19:43.318 [info] {"source":"oban","duration":907,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:20:00.010 [info] {"source":"oban","duration":388,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:20:13.320 [info] {"source":"oban","duration":1221,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:20:43.322 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:00.010 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:21:13.324 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:43.326 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:22:00.012 [info] {"source":"oban","duration":492,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:22:13.328 [info] {"source":"oban","duration":1327,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:22:43.331 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:23:00.013 [info] {"source":"oban","duration":421,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:23:13.333 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:23:43.334 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:24:00.013 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:24:13.336 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:24:43.338 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:25:00.015 [info] {"source":"oban","duration":380,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:25:13.340 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:25:43.342 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:26:00.015 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:26:13.344 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:26:43.346 [info] {"source":"oban","duration":1037,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:27:00.016 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:27:13.348 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:27:43.350 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:28:00.017 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:28:13.352 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:28:43.354 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:00.019 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:29:13.356 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:43.358 [info] {"source":"oban","duration":1058,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:30:00.019 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:30:13.361 [info] {"source":"oban","duration":1390,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:30:43.362 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:31:00.021 [info] {"source":"oban","duration":330,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:31:13.364 [info] {"source":"oban","duration":1072,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:31:43.366 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:32:00.021 [info] {"source":"oban","duration":306,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:32:13.368 [info] {"source":"oban","duration":1087,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:32:43.371 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:33:00.022 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:33:13.372 [info] {"source":"oban","duration":1309,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:33:43.374 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:34:00.023 [info] {"source":"oban","duration":401,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:34:13.377 [info] {"source":"oban","duration":1540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:34:43.378 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:35:00.024 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:35:13.381 [info] {"source":"oban","duration":1639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:35:43.382 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:36:00.026 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:36:13.384 [info] {"source":"oban","duration":870,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:36:43.386 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:37:00.027 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:37:13.388 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:37:43.390 [info] {"source":"oban","duration":941,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:38:00.027 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:38:13.392 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:38:43.395 [info] {"source":"oban","duration":1645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:39:00.029 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:39:13.397 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:39:43.399 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:40:00.029 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:40:13.401 [info] {"source":"oban","duration":1406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:40:43.403 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:41:00.030 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:41:13.404 [info] {"source":"oban","duration":1160,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:41:43.406 [info] {"source":"oban","duration":1326,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:42:00.031 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:42:13.408 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:42:43.410 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:43:00.033 [info] {"source":"oban","duration":526,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:43:13.412 [info] {"source":"oban","duration":1064,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:43:43.414 [info] {"source":"oban","duration":1230,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:44:00.034 [info] {"source":"oban","duration":474,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:44:13.417 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:44:43.418 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:00.035 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:45:13.420 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:43.422 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:46:00.036 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:46:13.424 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:46:43.426 [info] {"source":"oban","duration":1117,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:47:00.038 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:47:13.429 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:47:43.431 [info] {"source":"oban","duration":1553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:48:00.038 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:48:13.432 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:48:43.434 [info] {"source":"oban","duration":1220,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:49:00.040 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:49:13.437 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:49:43.439 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:00.040 [info] {"source":"oban","duration":222,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:50:13.440 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:43.442 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:51:00.041 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:51:13.444 [info] {"source":"oban","duration":1001,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:51:43.446 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:52:00.042 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:52:13.448 [info] {"source":"oban","duration":1322,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:52:43.450 [info] {"source":"oban","duration":901,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:53:00.043 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:53:13.452 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:53:43.454 [info] {"source":"oban","duration":828,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:54:00.045 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:54:13.456 [info] {"source":"oban","duration":1142,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:54:43.458 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:55:00.046 [info] {"source":"oban","duration":506,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:55:13.461 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:55:43.462 [info] {"source":"oban","duration":890,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:56:00.047 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:56:13.464 [info] {"source":"oban","duration":1207,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:56:43.466 [info] {"source":"oban","duration":1045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:57:00.048 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:57:13.468 [info] {"source":"oban","duration":1319,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:57:43.471 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:58:00.049 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:58:13.472 [info] {"source":"oban","duration":1070,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:58:43.474 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:59:00.050 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:59:13.476 [info] {"source":"oban","duration":1079,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:59:43.478 [info] {"source":"oban","duration":1060,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:00:00.051 [info] {"source":"oban","duration":416,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:00:13.480 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:00:43.482 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:00.052 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:01:13.484 [info] {"source":"oban","duration":1034,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:43.486 [info] {"source":"oban","duration":1013,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:02:00.053 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:02:13.489 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:02:43.490 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:03:00.054 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:03:13.492 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:03:43.494 [info] {"source":"oban","duration":1187,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:04:00.054 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:04:13.496 [info] {"source":"oban","duration":1139,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:04:43.498 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:05:00.055 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:05:13.501 [info] {"source":"oban","duration":1457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:05:43.502 [info] {"source":"oban","duration":1380,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:06:00.057 [info] {"source":"oban","duration":381,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:06:13.504 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:06:43.507 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:07:00.058 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:07:13.508 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:07:43.510 [info] {"source":"oban","duration":1017,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:08:00.059 [info] {"source":"oban","duration":355,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:08:13.512 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:08:43.514 [info] {"source":"oban","duration":883,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:09:00.060 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:09:13.516 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:09:43.518 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:10:00.061 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:10:13.521 [info] {"source":"oban","duration":1568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:10:43.522 [info] {"source":"oban","duration":1142,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:11:00.061 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:11:13.524 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:11:43.526 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:12:00.062 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:12:13.528 [info] {"source":"oban","duration":1196,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:12:43.530 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:13:00.064 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:13:13.532 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:13:43.534 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:14:00.064 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:14:13.536 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:14:43.538 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:15:00.066 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:15:13.540 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:15:43.542 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:16:00.067 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:16:13.544 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:16:43.546 [info] {"source":"oban","duration":1138,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:17:00.067 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:17:13.548 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:17:43.550 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:18:00.069 [info] {"source":"oban","duration":378,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:18:13.552 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:18:43.555 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:19:00.069 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:19:13.557 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:19:43.559 [info] {"source":"oban","duration":1612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:20:00.071 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:20:13.561 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:20:43.562 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:21:00.071 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:21:13.565 [info] {"source":"oban","duration":1605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:21:43.567 [info] {"source":"oban","duration":1603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:22:00.072 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:22:13.568 [info] {"source":"oban","duration":1078,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:22:43.570 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:23:00.074 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:23:13.573 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:23:43.575 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:00.075 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:24:13.576 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:43.578 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:25:00.075 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:25:13.580 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:25:43.582 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:26:00.077 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:26:13.585 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:26:43.587 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:27:00.077 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:27:13.589 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:27:43.590 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:28:00.078 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:28:13.593 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:28:43.595 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:29:00.079 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:29:13.596 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:29:43.598 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:30:00.081 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:30:13.601 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:30:43.603 [info] {"source":"oban","duration":1558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:31:00.081 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:31:13.604 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:31:43.606 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:32:00.082 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:32:13.608 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:32:43.610 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:33:00.084 [info] {"source":"oban","duration":396,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:33:13.612 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:33:43.614 [info] {"source":"oban","duration":889,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:34:00.085 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:34:13.616 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:34:43.619 [info] {"source":"oban","duration":1500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:35:00.086 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:35:13.620 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:35:43.622 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:36:00.086 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:36:13.625 [info] {"source":"oban","duration":1591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:36:43.626 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:37:00.087 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:37:13.629 [info] {"source":"oban","duration":1657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:37:43.631 [info] {"source":"oban","duration":1542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:38:00.089 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:38:13.632 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:38:43.634 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:39:00.090 [info] {"source":"oban","duration":392,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:39:13.637 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:39:43.638 [info] {"source":"oban","duration":1364,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:00.090 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:40:13.641 [info] {"source":"oban","duration":1541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:43.642 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:41:00.092 [info] {"source":"oban","duration":405,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:41:13.644 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:41:43.646 [info] {"source":"oban","duration":1282,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:42:00.093 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:42:13.648 [info] {"source":"oban","duration":721,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:42:43.649 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:43:00.093 [info] {"source":"oban","duration":330,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:43:13.651 [info] {"source":"oban","duration":1331,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:43:43.654 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:44:00.095 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:44:13.656 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:44:43.657 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:45:00.095 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:45:13.659 [info] {"source":"oban","duration":1137,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:45:43.661 [info] {"source":"oban","duration":983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:46:00.097 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:46:13.663 [info] {"source":"oban","duration":1049,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:46:43.665 [info] {"source":"oban","duration":1380,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:47:00.098 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:47:13.667 [info] {"source":"oban","duration":995,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:47:43.669 [info] {"source":"oban","duration":1208,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:48:00.099 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:48:13.671 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:48:43.674 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:49:00.099 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:49:13.675 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:49:43.677 [info] {"source":"oban","duration":875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:50:00.100 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:50:13.679 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:50:43.682 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:51:00.101 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:51:13.684 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:51:43.685 [info] {"source":"oban","duration":1151,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:00.103 [info] {"source":"oban","duration":513,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:52:13.688 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:43.689 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:53:00.103 [info] {"source":"oban","duration":303,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:53:13.691 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:53:43.693 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:54:00.105 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:54:13.695 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:54:43.698 [info] {"source":"oban","duration":1684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:55:00.105 [info] {"source":"oban","duration":400,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:55:13.699 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:55:43.701 [info] {"source":"oban","duration":1176,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:56:00.107 [info] {"source":"oban","duration":402,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:56:13.703 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:56:43.705 [info] {"source":"oban","duration":1115,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:57:00.107 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:57:13.707 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:57:43.709 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:58:00.109 [info] {"source":"oban","duration":459,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:58:13.711 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:58:43.714 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:59:00.109 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:59:13.716 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:59:43.717 [info] {"source":"oban","duration":1106,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:00:00.110 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:00:13.719 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:00:43.722 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:00.111 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:01:13.724 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:43.725 [info] {"source":"oban","duration":1138,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:57.177 [info] {"args":{"id":89022},"id":2981,"meta":{},"system_time":1770206517177397563,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":16,"tags":["media_item","media_fetching","show_in_dashboard"]} 05:01:57.178 [debug] QUERY OK source="media_items" db=0.4ms queue=0.1ms idle=1826.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" = ?) [89022] 05:01:57.179 [info] User scripts lifecyle file either not present or is empty. Skipping. 05:01:57.180 [debug] QUERY OK source="sources" db=0.5ms idle=1012.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" = ?) [5] 05:01:57.181 [debug] QUERY OK source="media_profiles" db=0.6ms idle=1007.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] 05:01:57.182 [debug] QUERY OK source="media_items" db=0.7ms idle=11.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 [89022] 05:01:57.184 [debug] QUERY OK source="media_metadata" db=0.2ms idle=6.7ms 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" = ?) [89022] 05:01:57.184 [debug] QUERY OK source="media_profiles" db=0.4ms idle=5.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] 05:01:57.185 [debug] QUERY OK source="settings" db=0.2ms 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 [] 05:01:57.186 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 05:01:57.186 [debug] Running yt-dlp command for action: get_downloadable_status 05:01:57.187 [debug] QUERY OK source="settings" db=0.1ms idle=5.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:01:57.188 [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 [] 05:01:57.188 [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 [] 05:01:57.189 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f4/25/f425130302b0a839d00795df16cc0ea014054332336ebb55b1b3ca1a7792a876.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 05:01:59.828 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nu-0hFsz_PM --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f4/25/f425130302b0a839d00795df16cc0ea014054332336ebb55b1b3ca1a7792a876.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available. 05:01:59.828 [error] yt-dlp download error for media item #89022: "ERROR: [youtube] nu-0hFsz_PM: This live stream recording is not available.\n" 05:01:59.830 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":89022},"id":2981,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2652107,"event":"job:exception","queue_time":549676,"attempt":16,"tags":["media_item","media_fetching","show_in_dashboard"]} 05:02:00.112 [info] {"source":"oban","duration":425,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:02:13.728 [info] {"source":"oban","duration":1557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:02:43.729 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:03:00.114 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:03:13.732 [info] {"source":"oban","duration":1554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:03:43.733 [info] {"source":"oban","duration":1005,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:04:00.115 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:04:13.735 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:04:43.737 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:05:00.116 [info] {"source":"oban","duration":387,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:05:13.739 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:05:43.741 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:06:00.117 [info] {"source":"oban","duration":405,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:06:13.743 [info] {"source":"oban","duration":1125,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:06:43.746 [info] {"source":"oban","duration":1646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:07:00.118 [info] {"source":"oban","duration":383,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:07:13.749 [info] {"source":"oban","duration":1465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:07:43.751 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:08:00.119 [info] {"source":"oban","duration":416,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:08:13.752 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:08:43.755 [info] {"source":"oban","duration":1579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:09:00.119 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:09:13.756 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:09:43.759 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:10:00.120 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:10:13.761 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:10:43.762 [info] {"source":"oban","duration":1077,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:11:00.121 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:11:13.764 [info] {"source":"oban","duration":1202,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:11:43.766 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:12:00.122 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:12:13.768 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:12:43.770 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:00.123 [info] {"source":"oban","duration":227,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:13:13.772 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:43.774 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:14:00.125 [info] {"source":"oban","duration":455,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:14:13.776 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:14:43.779 [info] {"source":"oban","duration":1670,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:15:00.125 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:15:13.781 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:15:43.784 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:16:00.126 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:16:13.786 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:16:43.788 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:17:00.127 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:17:13.790 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:17:43.791 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:18:00.129 [info] {"source":"oban","duration":456,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:18:13.793 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:18:43.795 [info] {"source":"oban","duration":1282,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:19:00.129 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:19:13.798 [info] {"source":"oban","duration":1643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:19:43.800 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:20:00.130 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:20:13.802 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:20:43.803 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:21:00.131 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:21:13.805 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:21:43.807 [info] {"source":"oban","duration":1077,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:22:00.132 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:22:13.809 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:22:43.811 [info] {"source":"oban","duration":1193,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:23:00.133 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:23:13.814 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:23:43.815 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:24:00.135 [info] {"source":"oban","duration":420,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:24:13.818 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:24:43.820 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:25:00.135 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:25:13.821 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:25:43.823 [info] {"source":"oban","duration":1364,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:26:00.137 [info] {"source":"oban","duration":362,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:26:13.825 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:26:43.827 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:27:00.138 [info] {"source":"oban","duration":402,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:27:13.829 [info] {"source":"oban","duration":1328,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:27:43.831 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:28:00.138 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:28:13.833 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:28:43.835 [info] {"source":"oban","duration":1096,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:29:00.140 [info] {"source":"oban","duration":335,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:29:13.837 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:29:43.839 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:30:00.140 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:30:13.841 [info] {"source":"oban","duration":883,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:30:43.844 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:31:00.141 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:31:13.846 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:31:43.848 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:32:00.142 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:32:13.850 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:32:43.852 [info] {"source":"oban","duration":1669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:33:00.144 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:33:13.854 [info] {"source":"oban","duration":1646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:33:43.856 [info] {"source":"oban","duration":1534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:34:00.144 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:34:13.857 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:34:43.859 [info] {"source":"oban","duration":1390,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:35:00.145 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:35:13.861 [info] {"source":"oban","duration":1095,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:35:43.863 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:36:00.146 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:36:13.865 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:36:43.867 [info] {"source":"oban","duration":895,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:37:00.147 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:37:13.870 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:37:43.871 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:38:00.148 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:38:13.873 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:38:43.876 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:39:00.150 [info] {"source":"oban","duration":378,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:39:13.878 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:39:43.880 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:40:00.150 [info] {"source":"oban","duration":294,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:40:13.882 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:40:43.883 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:41:00.151 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:41:13.886 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:41:43.887 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:42:00.153 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:42:13.889 [info] {"source":"oban","duration":1064,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:42:43.891 [info] {"source":"oban","duration":1243,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:43:00.153 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:43:13.894 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:43:43.895 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:44:00.155 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:44:13.897 [info] {"source":"oban","duration":907,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:44:43.899 [info] {"source":"oban","duration":1260,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:45:00.156 [info] {"source":"oban","duration":411,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:45:13.901 [info] {"source":"oban","duration":851,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:45:43.903 [info] {"source":"oban","duration":1132,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:46:00.156 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:46:13.905 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:46:43.908 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:47:00.157 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:47:13.910 [info] {"source":"oban","duration":1468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:47:43.912 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:48:00.158 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:48:13.914 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:48:43.915 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:49:00.160 [info] {"source":"oban","duration":380,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:49:13.918 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:49:43.919 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:50:00.161 [info] {"source":"oban","duration":335,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:50:13.922 [info] {"source":"oban","duration":1401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:50:43.924 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:51:00.162 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:51:13.925 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:51:43.928 [info] {"source":"oban","duration":1542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:52:00.163 [info] {"source":"oban","duration":326,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:52:13.930 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:52:43.931 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:53:00.164 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:53:13.933 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:53:43.935 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:54:00.165 [info] {"source":"oban","duration":415,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:54:13.937 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:54:43.940 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:55:00.168 [info] {"source":"oban","duration":2219,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:55:13.942 [info] {"source":"oban","duration":1650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:55:43.943 [info] {"source":"oban","duration":1218,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:56:00.170 [info] {"source":"oban","duration":355,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:56:13.946 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:56:43.948 [info] {"source":"oban","duration":1635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:57:00.172 [info] {"source":"oban","duration":404,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:57:13.949 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:57:43.951 [info] {"source":"oban","duration":1381,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:58:00.172 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:58:13.954 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:58:43.956 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:59:00.173 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:59:13.958 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:59:43.959 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:00:00.174 [info] {"source":"oban","duration":382,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:00:13.961 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:00:43.963 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:01:00.175 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:01:13.965 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:01:43.967 [info] {"source":"oban","duration":889,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:02:00.177 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:02:13.969 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:02:43.972 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:03:00.178 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:03:13.974 [info] {"source":"oban","duration":1696,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:03:43.976 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:04:00.178 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:04:13.979 [info] {"source":"oban","duration":1584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:04:43.981 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:05:00.179 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:05:13.983 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:05:43.984 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:06:00.181 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:06:13.986 [info] {"source":"oban","duration":1025,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:06:43.988 [info] {"source":"oban","duration":1381,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:07:00.182 [info] {"source":"oban","duration":407,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:07:13.991 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:07:43.992 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:08:00.182 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:08:13.995 [info] {"source":"oban","duration":1379,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:08:43.996 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:09:00.184 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:09:13.998 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:09:44.000 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:10:00.184 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:10:14.002 [info] {"source":"oban","duration":996,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:10:44.004 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:11:00.186 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:11:14.006 [info] {"source":"oban","duration":1283,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:11:44.009 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:12:00.187 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:12:14.011 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:12:44.013 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:13:00.188 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:13:14.015 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:13:44.017 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:14:00.188 [info] {"source":"oban","duration":439,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:14:14.018 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:14:44.021 [info] {"source":"oban","duration":1533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:15:00.189 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:15:14.022 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:15:44.024 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:00.190 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:16:14.026 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:44.028 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:17:00.192 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:17:14.030 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:17:44.032 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:18:00.192 [info] {"source":"oban","duration":374,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:18:14.034 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:18:44.037 [info] {"source":"oban","duration":1381,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:19:00.193 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:19:14.039 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:19:44.040 [info] {"source":"oban","duration":1159,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:00.195 [info] {"source":"oban","duration":386,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:20:14.043 [info] {"source":"oban","duration":1634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:44.044 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:21:00.196 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:21:14.046 [info] {"source":"oban","duration":1227,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:21:44.048 [info] {"source":"oban","duration":1337,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:00.196 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:22:14.051 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:44.052 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:23:00.198 [info] {"source":"oban","duration":589,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:23:14.055 [info] {"source":"oban","duration":1681,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:23:44.056 [info] {"source":"oban","duration":1049,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:00.198 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:24:14.059 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:44.060 [info] {"source":"oban","duration":1281,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:25:00.200 [info] {"source":"oban","duration":487,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:25:14.062 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:25:44.064 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:26:00.201 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:26:14.066 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:26:44.068 [info] {"source":"oban","duration":1068,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:27:00.201 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:27:14.070 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:27:44.072 [info] {"source":"oban","duration":1115,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:00.202 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:28:14.074 [info] {"source":"oban","duration":1246,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:44.076 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:29:00.203 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:29:14.078 [info] {"source":"oban","duration":1225,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:29:44.080 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:30:00.204 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:30:14.082 [info] {"source":"oban","duration":1323,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:30:44.084 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:00.206 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:31:14.086 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:44.088 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:32:00.207 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:32:14.090 [info] {"source":"oban","duration":1061,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:32:44.092 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:33:00.207 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:33:14.094 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:33:44.096 [info] {"source":"oban","duration":727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:00.208 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:34:14.097 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:44.099 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:35:00.210 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:35:14.102 [info] {"source":"oban","duration":1485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:35:44.104 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:36:00.211 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:36:14.105 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:36:44.108 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:00.211 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:37:14.109 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:44.111 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:38:00.213 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:38:14.113 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:38:44.116 [info] {"source":"oban","duration":1620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:39:00.214 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:39:14.117 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:39:44.120 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:40:00.215 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:40:14.121 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:40:44.123 [info] {"source":"oban","duration":1086,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:00.216 [info] {"source":"oban","duration":406,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:41:14.125 [info] {"source":"oban","duration":1181,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:44.127 [info] {"source":"oban","duration":930,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:42:00.217 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:42:14.129 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:42:44.131 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:43:00.217 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:43:14.133 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:43:44.135 [info] {"source":"oban","duration":1219,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:00.218 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:44:14.138 [info] {"source":"oban","duration":1598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:44.140 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:45:00.220 [info] {"source":"oban","duration":386,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:45:14.142 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:45:44.143 [info] {"source":"oban","duration":847,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:46:00.220 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:46:14.145 [info] {"source":"oban","duration":1249,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:46:44.147 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:47:00.221 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:47:14.149 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:47:44.152 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:48:00.222 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:48:14.154 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:48:44.155 [info] {"source":"oban","duration":1249,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:49:00.223 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:49:14.157 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:49:44.159 [info] {"source":"oban","duration":1079,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:50:00.225 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:50:14.161 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:50:44.163 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:51:00.225 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:51:14.165 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:51:44.168 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:52:00.227 [info] {"source":"oban","duration":513,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:52:14.170 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:52:44.172 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:53:00.229 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:53:14.174 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:53:44.175 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:54:00.229 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:54:14.177 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:54:44.179 [info] {"source":"oban","duration":1206,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:55:00.230 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:55:14.182 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:55:44.184 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:56:00.231 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:56:14.185 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:56:44.187 [info] {"source":"oban","duration":1158,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:57:00.232 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:57:14.189 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:57:44.191 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:58:00.233 [info] {"source":"oban","duration":394,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:58:14.193 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:58:44.195 [info] {"source":"oban","duration":917,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:59:00.234 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:59:14.197 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:59:44.200 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:00:00.236 [info] {"source":"oban","duration":392,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:00:14.201 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:00:44.204 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:01:00.236 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:01:14.205 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:01:44.207 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:02:00.238 [info] {"source":"oban","duration":417,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:02:14.209 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:02:44.211 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:03:00.239 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:03:14.213 [info] {"source":"oban","duration":1194,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:03:44.215 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:04:00.239 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:04:14.217 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:04:44.220 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:05:00.240 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:05:14.221 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:05:44.223 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:06:00.241 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:06:14.225 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:06:44.227 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:07:00.242 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:07:14.230 [info] {"source":"oban","duration":1447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:07:44.231 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:08:00.243 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:08:14.233 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:08:44.235 [info] {"source":"oban","duration":1182,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:09:00.244 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:09:14.237 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:09:44.240 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:10:00.246 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:10:14.242 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:10:44.243 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:11:00.246 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:11:14.245 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:11:44.247 [info] {"source":"oban","duration":1100,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:12:00.248 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:12:14.249 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:12:44.252 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:13:00.252 [info] {"source":"oban","duration":2834,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:13:14.253 [info] {"source":"oban","duration":1307,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:13:44.255 [info] {"source":"oban","duration":1027,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:14:00.254 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:14:14.257 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:14:44.259 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:15:00.255 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:15:14.262 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:15:44.264 [info] {"source":"oban","duration":1638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:16:00.257 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:16:14.266 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:16:44.268 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:17:00.258 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:17:14.269 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:17:44.272 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:18:00.259 [info] {"source":"oban","duration":403,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:18:14.273 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:18:44.275 [info] {"source":"oban","duration":1036,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:19:00.259 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:19:14.277 [info] {"source":"oban","duration":1298,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:19:44.280 [info] {"source":"oban","duration":1495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:20:00.261 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:20:14.281 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:20:44.283 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:21:00.261 [info] {"source":"oban","duration":291,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:21:14.285 [info] {"source":"oban","duration":1046,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:21:44.287 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:22:00.262 [info] {"source":"oban","duration":301,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:22:14.289 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:22:44.291 [info] {"source":"oban","duration":889,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:23:00.263 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:23:14.293 [info] {"source":"oban","duration":1045,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:23:44.296 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:24:00.264 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:24:14.298 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:24:44.300 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:25:00.266 [info] {"source":"oban","duration":444,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:25:14.301 [info] {"source":"oban","duration":1158,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:25:44.303 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:26:00.267 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:26:14.306 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:26:44.307 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:27:00.268 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:27:14.310 [info] {"source":"oban","duration":1647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:27:44.312 [info] {"source":"oban","duration":1259,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:28:00.269 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:28:14.315 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:28:44.316 [info] {"source":"oban","duration":1014,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:29:00.270 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:29:14.318 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:29:44.320 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:30:00.270 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:30:14.323 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:30:44.324 [info] {"source":"oban","duration":1305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:31:00.271 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:31:14.326 [info] {"source":"oban","duration":1188,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:31:44.329 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:32:00.273 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:32:14.331 [info] {"source":"oban","duration":1640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:32:44.334 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:33:00.274 [info] {"source":"oban","duration":524,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:33:14.336 [info] {"source":"oban","duration":1523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:33:44.337 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:34:00.274 [info] {"source":"oban","duration":330,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:34:14.339 [info] {"source":"oban","duration":1156,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:34:44.342 [info] {"source":"oban","duration":1579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:35:00.275 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:35:14.344 [info] {"source":"oban","duration":1567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:35:44.345 [info] {"source":"oban","duration":1194,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:36:00.276 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:36:14.348 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:36:44.349 [info] {"source":"oban","duration":1329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:37:00.277 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:37:14.351 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:37:44.354 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:38:00.278 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:38:14.355 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:38:44.357 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:39:00.279 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:39:14.359 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:39:44.361 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:40:00.281 [info] {"source":"oban","duration":425,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:40:14.363 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:40:44.365 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:41:00.281 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:41:14.367 [info] {"source":"oban","duration":1151,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:41:44.369 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:42:00.282 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:42:14.371 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:42:44.373 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:43:00.284 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:43:14.375 [info] {"source":"oban","duration":1021,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:43:44.377 [info] {"source":"oban","duration":887,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:44:00.284 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:44:14.380 [info] {"source":"oban","duration":1298,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:44:44.381 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:45:00.285 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:45:14.383 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:45:44.385 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:46:00.286 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:46:14.387 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:46:44.389 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:47:00.288 [info] {"source":"oban","duration":511,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:47:14.391 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:47:44.394 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:48:00.288 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:48:14.395 [info] {"source":"oban","duration":1116,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:48:44.398 [info] {"source":"oban","duration":1649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:49:00.290 [info] {"source":"oban","duration":383,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:49:14.400 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:49:44.401 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:50:00.291 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:50:14.404 [info] {"source":"oban","duration":1601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:50:44.407 [info] {"source":"oban","duration":1599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:51:00.292 [info] {"source":"oban","duration":382,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:51:14.409 [info] {"source":"oban","duration":1559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:51:44.411 [info] {"source":"oban","duration":1538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:52:00.293 [info] {"source":"oban","duration":502,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:52:14.412 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:52:44.414 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:53:00.294 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:53:14.417 [info] {"source":"oban","duration":1544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:53:44.419 [info] {"source":"oban","duration":1585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:54:00.295 [info] {"source":"oban","duration":690,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:54:14.421 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:54:44.422 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:55:00.297 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:55:14.424 [info] {"source":"oban","duration":991,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:55:44.427 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:56:00.298 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:56:14.428 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:56:44.430 [info] {"source":"oban","duration":1119,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:57:00.299 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:57:14.432 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:57:44.435 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:58:00.299 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:58:14.436 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:58:44.438 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:00.301 [info] {"source":"oban","duration":394,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:59:14.440 [info] {"source":"oban","duration":982,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:44.443 [info] {"source":"oban","duration":1466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:00:00.301 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:00:14.445 [info] {"source":"oban","duration":1410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:00:44.447 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:00.303 [info] {"source":"oban","duration":536,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:01:14.448 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:44.450 [info] {"source":"oban","duration":1106,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:02:00.303 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:02:14.452 [info] {"source":"oban","duration":1258,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:02:44.454 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:00.304 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:03:14.456 [info] {"source":"oban","duration":1140,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:44.459 [info] {"source":"oban","duration":1397,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:04:00.306 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:04:14.461 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:04:44.462 [info] {"source":"oban","duration":1383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:05:00.307 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:05:14.464 [info] {"source":"oban","duration":1310,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:05:44.467 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:06:00.308 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:06:14.469 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:06:44.470 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:07:00.308 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:07:14.472 [info] {"source":"oban","duration":1078,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:07:44.474 [info] {"source":"oban","duration":1158,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:08:00.309 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:08:14.476 [info] {"source":"oban","duration":1356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:08:44.478 [info] {"source":"oban","duration":1063,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:09:00.310 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:09:14.480 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:09:44.482 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:00.311 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:10:14.484 [info] {"source":"oban","duration":861,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:44.486 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:11:00.313 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:11:14.488 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:11:44.490 [info] {"source":"oban","duration":1122,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:12:00.313 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:12:14.493 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:12:44.494 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:13:00.315 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:13:14.496 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:13:44.498 [info] {"source":"oban","duration":1401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:14:00.315 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:14:14.500 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:14:44.503 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:15:00.316 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:15:14.505 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:15:44.507 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:16:00.317 [info] {"source":"oban","duration":326,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:16:14.508 [info] {"source":"oban","duration":1272,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:16:44.510 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:00.318 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:17:14.512 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:44.515 [info] {"source":"oban","duration":1582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:18:00.319 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:18:14.517 [info] {"source":"oban","duration":1306,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:18:44.519 [info] {"source":"oban","duration":1074,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:19:00.321 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:19:14.521 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:19:44.523 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:20:00.322 [info] {"source":"oban","duration":424,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:20:14.525 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:20:44.528 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:21:00.322 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:21:14.530 [info] {"source":"oban","duration":1701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:21:44.532 [info] {"source":"oban","duration":1498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:22:00.324 [info] {"source":"oban","duration":395,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:22:14.534 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:22:44.536 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:23:00.324 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:23:14.538 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:23:44.540 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:24:00.326 [info] {"source":"oban","duration":431,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:24:14.541 [info] {"source":"oban","duration":1376,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:24:44.543 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:25:00.326 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:25:14.545 [info] {"source":"oban","duration":987,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:25:44.547 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:26:00.327 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:26:14.549 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:26:44.551 [info] {"source":"oban","duration":886,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:27:00.328 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:27:14.553 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:27:44.555 [info] {"source":"oban","duration":935,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:28:00.330 [info] {"source":"oban","duration":431,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:28:14.558 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:28:44.560 [info] {"source":"oban","duration":1569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:29:00.331 [info] {"source":"oban","duration":389,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:29:14.562 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:29:44.563 [info] {"source":"oban","duration":1234,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:30:00.332 [info] {"source":"oban","duration":381,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:30:14.565 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:30:44.567 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:31:00.335 [info] {"source":"oban","duration":1690,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:31:14.569 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:31:44.571 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:32:00.337 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:32:14.573 [info] {"source":"oban","duration":1016,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:32:44.575 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:33:00.338 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:33:14.577 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:33:44.580 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:34:00.339 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:34:14.581 [info] {"source":"oban","duration":995,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:34:44.583 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:35:00.341 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:35:14.585 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:35:44.587 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:36:00.341 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:36:14.589 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:36:44.592 [info] {"source":"oban","duration":1407,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:37:00.342 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:37:14.594 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:37:44.596 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:38:00.344 [info] {"source":"oban","duration":431,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:38:14.597 [info] {"source":"oban","duration":1176,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:38:44.599 [info] {"source":"oban","duration":1238,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:39:00.344 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:39:14.601 [info] {"source":"oban","duration":1337,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:39:44.603 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:40:00.346 [info] {"source":"oban","duration":447,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:40:14.605 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:40:44.607 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:41:00.346 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:41:14.609 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:41:44.611 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:42:00.347 [info] {"source":"oban","duration":409,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:42:14.613 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:42:44.615 [info] {"source":"oban","duration":1077,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:43:00.349 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:43:14.617 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:43:44.619 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:44:00.350 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:44:14.622 [info] {"source":"oban","duration":1559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:44:44.624 [info] {"source":"oban","duration":1742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:45:00.350 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:45:14.627 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:45:44.628 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:46:00.352 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:46:14.630 [info] {"source":"oban","duration":1198,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:46:44.632 [info] {"source":"oban","duration":1089,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:47:00.352 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:47:14.635 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:47:44.636 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:48:00.353 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:48:14.639 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:48:44.641 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:49:00.354 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:49:14.643 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:49:44.644 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:50:00.355 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:50:14.647 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:50:44.648 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:51:00.357 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:51:14.650 [info] {"source":"oban","duration":902,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:51:44.652 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:52:00.357 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:52:14.655 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:52:44.656 [info] {"source":"oban","duration":1210,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:53:00.359 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:53:14.658 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:53:44.660 [info] {"source":"oban","duration":1258,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:54:00.360 [info] {"source":"oban","duration":435,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:54:14.663 [info] {"source":"oban","duration":1533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:54:44.665 [info] {"source":"oban","duration":1441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:55:00.360 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:55:14.666 [info] {"source":"oban","duration":1343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:55:44.668 [info] {"source":"oban","duration":1070,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:56:00.362 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:56:14.670 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:56:44.673 [info] {"source":"oban","duration":1502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:57:00.362 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:57:14.674 [info] {"source":"oban","duration":1238,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:57:44.677 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:58:00.364 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:58:14.678 [info] {"source":"oban","duration":1085,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:58:44.680 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:59:00.365 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:59:14.682 [info] {"source":"oban","duration":910,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:59:44.684 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:00:00.365 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:00:14.686 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:00:44.689 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:01:00.367 [info] {"source":"oban","duration":485,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:01:14.690 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:01:44.693 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:02:00.367 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:02:14.694 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:02:44.696 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:03:00.369 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:03:14.698 [info] {"source":"oban","duration":1181,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:03:44.700 [info] {"source":"oban","duration":1364,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:04:00.369 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:04:14.702 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:04:44.705 [info] {"source":"oban","duration":1440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:05:00.370 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:05:14.706 [info] {"source":"oban","duration":1125,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:05:44.708 [info] {"source":"oban","duration":1075,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:06:00.372 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:06:14.710 [info] {"source":"oban","duration":1249,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:06:44.712 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:07:00.373 [info] {"source":"oban","duration":443,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:07:14.714 [info] {"source":"oban","duration":1140,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:07:44.716 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:08:00.374 [info] {"source":"oban","duration":374,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:08:14.718 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:08:44.720 [info] {"source":"oban","duration":964,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:09:00.374 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:09:14.722 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:09:44.725 [info] {"source":"oban","duration":1634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:10:00.375 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:10:14.726 [info] {"source":"oban","duration":1338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:10:44.728 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:11:00.377 [info] {"source":"oban","duration":521,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:11:14.731 [info] {"source":"oban","duration":1579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:11:44.733 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:12:00.377 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:12:14.734 [info] {"source":"oban","duration":1353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:12:44.737 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:13:00.378 [info] {"source":"oban","duration":243,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:13:14.739 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:13:44.740 [info] {"source":"oban","duration":1024,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:14:00.380 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:14:14.742 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:14:44.744 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:15:00.380 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:15:14.746 [info] {"source":"oban","duration":1059,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:15:44.748 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:16:00.382 [info] {"source":"oban","duration":419,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:16:14.750 [info] {"source":"oban","duration":1153,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:16:44.752 [info] {"source":"oban","duration":1069,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:17:00.383 [info] {"source":"oban","duration":476,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:17:14.755 [info] {"source":"oban","duration":1470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:17:44.757 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:18:00.384 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:18:14.758 [info] {"source":"oban","duration":1089,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:18:44.761 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:19:00.384 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:19:14.763 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:19:44.765 [info] {"source":"oban","duration":1399,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:20:00.386 [info] {"source":"oban","duration":450,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:20:14.766 [info] {"source":"oban","duration":1325,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:20:44.769 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:21:00.386 [info] {"source":"oban","duration":291,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:21:14.771 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:21:44.773 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:22:00.387 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:22:14.775 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:22:44.776 [info] {"source":"oban","duration":1294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:23:00.388 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:23:14.778 [info] {"source":"oban","duration":1130,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:23:44.780 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:24:00.390 [info] {"source":"oban","duration":473,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:24:14.782 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:24:44.784 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:25:00.390 [info] {"source":"oban","duration":294,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:25:14.787 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:25:44.789 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:26:00.391 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:26:14.790 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:26:44.793 [info] {"source":"oban","duration":1432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:27:00.393 [info] {"source":"oban","duration":449,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:27:14.795 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:27:44.796 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:28:00.393 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:28:14.798 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:28:44.800 [info] {"source":"oban","duration":1347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:29:00.394 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:29:14.802 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:29:44.804 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:30:00.396 [info] {"source":"oban","duration":488,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:30:14.806 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:30:44.808 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:31:00.396 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:31:14.810 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:31:44.813 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:32:00.398 [info] {"source":"oban","duration":416,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:32:14.814 [info] {"source":"oban","duration":1108,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:32:44.816 [info] {"source":"oban","duration":1172,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:33:00.399 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:33:14.819 [info] {"source":"oban","duration":1487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:33:44.821 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:34:00.400 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:34:14.822 [info] {"source":"oban","duration":1237,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:34:44.825 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:35:00.400 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:35:14.827 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:35:44.828 [info] {"source":"oban","duration":1264,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:36:00.401 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:36:14.830 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:36:44.833 [info] {"source":"oban","duration":1389,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:37:00.402 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:37:14.834 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:37:44.836 [info] {"source":"oban","duration":999,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:38:00.404 [info] {"source":"oban","duration":494,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:38:14.838 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:38:44.840 [info] {"source":"oban","duration":1260,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:39:00.405 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:39:14.843 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:39:44.844 [info] {"source":"oban","duration":1180,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:40:00.405 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:40:14.846 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:40:44.848 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:41:00.406 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:41:14.851 [info] {"source":"oban","duration":1512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:41:44.853 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:42:00.408 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:42:14.855 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:42:44.857 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:43:00.409 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:43:14.858 [info] {"source":"oban","duration":1367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:43:44.861 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:44:00.409 [info] {"source":"oban","duration":259,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:44:14.863 [info] {"source":"oban","duration":1501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:44:44.865 [info] {"source":"oban","duration":1570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:45:00.410 [info] {"source":"oban","duration":294,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:45:14.866 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:45:44.868 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:46:00.412 [info] {"source":"oban","duration":407,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:46:14.870 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:46:44.872 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:47:00.413 [info] {"source":"oban","duration":418,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:47:14.875 [info] {"source":"oban","duration":1524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:47:44.876 [info] {"source":"oban","duration":1277,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:48:00.414 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:48:14.878 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:48:44.880 [info] {"source":"oban","duration":1215,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:49:00.415 [info] {"source":"oban","duration":362,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:49:14.883 [info] {"source":"oban","duration":1546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:49:44.885 [info] {"source":"oban","duration":1496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:50:00.415 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:50:14.886 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:50:44.889 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:51:00.416 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:51:14.891 [info] {"source":"oban","duration":1446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:51:44.893 [info] {"source":"oban","duration":1426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:52:00.417 [info] {"source":"oban","duration":399,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:52:14.895 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:52:44.896 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:53:00.418 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:53:14.899 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:53:44.900 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:54:00.419 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:54:14.903 [info] {"source":"oban","duration":1675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:54:44.905 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:55:00.421 [info] {"source":"oban","duration":362,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:55:14.908 [info] {"source":"oban","duration":1339,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:55:44.909 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:56:00.423 [info] {"source":"oban","duration":2066,"event":"plugin:stop","jobs":[2986],"plugin":"Oban.Plugins.Cron"} 09:56:00.431 [info] {"args":{},"id":2986,"meta":{"cron":true,"cron_expr":"56 16 * * *","cron_tz":"Etc/UTC"},"system_time":1770224160431083138,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","event":"job:start","attempt":1,"tags":["local_data"]} 09:56:00.431 [info] Updating yt-dlp 09:56:00.431 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update 09:56:04.080 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update exited: 0 with: Current version: stable@2026.01.31 from yt-dlp/yt-dlp Latest version: stable@2026.02.04 from yt-dlp/yt-dlp Current Build Hash: 2fbc54f753ead15bb85af8c7fbd61480cd4263d17edd63b3a585bb75f8c237b1 Updating to stable@2026.02.04 from yt-dlp/yt-dlp ... Updated yt-dlp to stable@2026.02.04 from yt-dlp/yt-dlp 09:56:04.080 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 09:56:05.439 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2026.02.04 09:56:05.440 [debug] QUERY OK source="settings" db=0.3ms idle=1087.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 [] 09:56:05.440 [debug] QUERY OK source="settings" db=0.2ms idle=1088.5ms UPDATE "settings" SET "yt_dlp_version" = ? WHERE "id" = ? ["2026.02.04", 1] 09:56:05.441 [info] {"args":{},"id":2986,"meta":{"cron":true,"cron_expr":"56 16 * * *","cron_tz":"Etc/UTC"},"state":"success","max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","duration":5009724,"event":"job:stop","queue_time":429496,"attempt":1,"tags":["local_data"]} 09:56:14.911 [info] {"source":"oban","duration":1111,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:56:44.913 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:57:00.425 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:57:14.916 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:57:44.918 [info] {"source":"oban","duration":1577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:58:00.425 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:58:14.920 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:58:44.922 [info] {"source":"oban","duration":1568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:59:00.426 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:59:14.924 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:59:44.926 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:00:00.427 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:00:14.927 [info] {"source":"oban","duration":1323,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:00:44.929 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:00.429 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:01:14.931 [info] {"source":"oban","duration":1091,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:44.933 [info] {"source":"oban","duration":1212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:02:00.430 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:02:14.935 [info] {"source":"oban","duration":1057,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:02:44.937 [info] {"source":"oban","duration":1151,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:03:00.430 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:03:14.939 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:03:44.941 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:04:00.432 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:04:14.944 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:04:44.945 [info] {"source":"oban","duration":867,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:00.433 [info] {"source":"oban","duration":473,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:05:14.948 [info] {"source":"oban","duration":1524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:44.949 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:06:00.433 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:06:14.951 [info] {"source":"oban","duration":1102,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:06:44.953 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:00.435 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:07:14.955 [info] {"source":"oban","duration":1282,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:44.958 [info] {"source":"oban","duration":1717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:08:00.435 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:08:14.961 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:08:44.963 [info] {"source":"oban","duration":1579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:09:00.437 [info] {"source":"oban","duration":440,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:09:14.965 [info] {"source":"oban","duration":1517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:09:44.967 [info] {"source":"oban","duration":1149,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:10:00.438 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:10:14.970 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:10:44.971 [info] {"source":"oban","duration":1347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:11:00.438 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:11:14.973 [info] {"source":"oban","duration":1223,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:11:44.975 [info] {"source":"oban","duration":985,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:12:00.440 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:12:14.977 [info] {"source":"oban","duration":1144,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:12:44.979 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:13:00.441 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:13:14.982 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:13:44.983 [info] {"source":"oban","duration":1271,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:14:00.442 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:14:14.986 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:14:44.988 [info] {"source":"oban","duration":1609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:00.443 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:15:14.989 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:44.992 [info] {"source":"oban","duration":1560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:16:00.443 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:16:14.994 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:16:44.996 [info] {"source":"oban","duration":1604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:17:00.445 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:17:14.997 [info] {"source":"oban","duration":1194,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:17:45.000 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:18:00.446 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:18:15.002 [info] {"source":"oban","duration":1469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:18:45.003 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:19:00.446 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:19:15.006 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:19:45.007 [info] {"source":"oban","duration":1331,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:20:00.450 [info] {"source":"oban","duration":2036,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:20:15.009 [info] {"source":"oban","duration":1060,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:20:45.011 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:21:00.453 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:21:15.014 [info] {"source":"oban","duration":1451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:21:45.016 [info] {"source":"oban","duration":1336,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:22:00.454 [info] {"source":"oban","duration":441,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:22:15.019 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:22:45.021 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:23:00.456 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:23:15.023 [info] {"source":"oban","duration":1551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:23:45.025 [info] {"source":"oban","duration":1626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:24:00.457 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:24:15.027 [info] {"source":"oban","duration":1200,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:24:45.030 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:25:00.458 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:25:15.032 [info] {"source":"oban","duration":1459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:25:45.033 [info] {"source":"oban","duration":1291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:26:00.459 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:26:15.036 [info] {"source":"oban","duration":1486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:26:45.038 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:27:00.459 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:27:15.040 [info] {"source":"oban","duration":1555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:27:45.042 [info] {"source":"oban","duration":1405,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:28:00.461 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:28:15.044 [info] {"source":"oban","duration":2273,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:28:45.046 [info] {"source":"oban","duration":1113,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:29:00.462 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:29:15.049 [info] {"source":"oban","duration":1351,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:29:45.051 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:30:00.462 [info] {"source":"oban","duration":306,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:30:15.053 [info] {"source":"oban","duration":1576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:30:45.054 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:31:00.463 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:31:15.057 [info] {"source":"oban","duration":1509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:31:45.059 [info] {"source":"oban","duration":1526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:32:00.464 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:32:15.060 [info] {"source":"oban","duration":1311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:32:45.062 [info] {"source":"oban","duration":1007,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:33:00.466 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:33:15.064 [info] {"source":"oban","duration":1156,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:33:45.066 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:34:00.467 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:34:15.068 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:34:45.071 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:35:00.467 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:35:15.073 [info] {"source":"oban","duration":1449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:35:45.074 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:36:00.469 [info] {"source":"oban","duration":402,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:36:15.077 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:36:45.078 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:37:00.470 [info] {"source":"oban","duration":400,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:37:15.081 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:37:45.083 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:38:00.470 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:38:15.085 [info] {"source":"oban","duration":1500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:38:45.087 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:39:00.471 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:39:15.089 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:39:45.091 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:40:00.472 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:40:15.092 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:40:45.095 [info] {"source":"oban","duration":1589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:41:00.473 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:41:15.097 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:41:45.099 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:42:00.474 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:42:15.101 [info] {"source":"oban","duration":1393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:42:45.102 [info] {"source":"oban","duration":1094,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:43:00.475 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:43:15.104 [info] {"source":"oban","duration":1196,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:43:45.106 [info] {"source":"oban","duration":1202,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:44:00.477 [info] {"source":"oban","duration":416,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:44:15.108 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:44:45.110 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:45:00.478 [info] {"source":"oban","duration":335,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:45:15.112 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:45:45.115 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:46:00.479 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:46:15.117 [info] {"source":"oban","duration":1534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:46:45.119 [info] {"source":"oban","duration":1566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:47:00.480 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:47:15.120 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:47:45.123 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:48:00.481 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:48:15.125 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:48:45.127 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:49:00.482 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:49:15.128 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:49:45.131 [info] {"source":"oban","duration":1535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:50:00.482 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:50:15.133 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:50:45.135 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:51:00.484 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:51:15.136 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:51:45.138 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:52:00.485 [info] {"source":"oban","duration":439,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:52:15.140 [info] {"source":"oban","duration":1017,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:52:45.142 [info] {"source":"oban","duration":1137,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:53:00.485 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:53:15.144 [info] {"source":"oban","duration":766,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:53:45.147 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:54:00.486 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:54:15.149 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:54:45.151 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:55:00.487 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:55:15.153 [info] {"source":"oban","duration":1668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:55:45.155 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:56:00.488 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:56:15.157 [info] {"source":"oban","duration":1524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:56:45.159 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:57:00.490 [info] {"source":"oban","duration":399,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:57:15.160 [info] {"source":"oban","duration":1238,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:57:45.163 [info] {"source":"oban","duration":1687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:58:00.490 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:58:15.165 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:58:45.168 [info] {"source":"oban","duration":1510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:59:00.492 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:59:15.169 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:59:45.172 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:00:00.492 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:00:15.173 [info] {"source":"oban","duration":1248,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:00:45.176 [info] {"source":"oban","duration":1603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:01:00.493 [info] {"source":"oban","duration":205,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:01:15.177 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:01:45.180 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:02:00.495 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:02:15.182 [info] {"source":"oban","duration":1515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:02:45.184 [info] {"source":"oban","duration":1529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:03:00.496 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:03:15.185 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:03:45.189 [info] {"source":"oban","duration":2528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":1} 11:04:00.496 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:04:15.191 [info] {"source":"oban","duration":1481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:04:45.193 [info] {"source":"oban","duration":1763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:05:00.498 [info] {"source":"oban","duration":488,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:05:15.196 [info] {"source":"oban","duration":1452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:05:45.198 [info] {"source":"oban","duration":1664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:06:00.499 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:06:15.200 [info] {"source":"oban","duration":1425,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:06:45.201 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:00.500 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:07:15.203 [info] {"source":"oban","duration":1153,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:45.206 [info] {"source":"oban","duration":1809,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:08:00.500 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:08:15.208 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:08:45.210 [info] {"source":"oban","duration":1079,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:09:00.502 [info] {"source":"oban","duration":362,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:09:15.212 [info] {"source":"oban","duration":1044,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:09:45.215 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:10:00.502 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:10:15.216 [info] {"source":"oban","duration":1413,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:10:45.219 [info] {"source":"oban","duration":1580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:00.503 [info] {"source":"oban","duration":222,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:11:15.221 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:45.223 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:12:00.504 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:12:15.225 [info] {"source":"oban","duration":1579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:12:45.227 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:13:00.506 [info] {"source":"oban","duration":507,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:13:15.229 [info] {"source":"oban","duration":1095,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:13:45.232 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:14:00.507 [info] {"source":"oban","duration":383,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:14:15.233 [info] {"source":"oban","duration":1064,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:14:45.236 [info] {"source":"oban","duration":1572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:15:00.507 [info] {"source":"oban","duration":326,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:15:15.237 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:15:45.239 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:16:00.508 [info] {"source":"oban","duration":423,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:16:15.241 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:16:45.243 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:17:00.510 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:17:15.246 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:17:45.248 [info] {"source":"oban","duration":1631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:18:00.510 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:18:15.251 [info] {"source":"oban","duration":1813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:18:45.254 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:19:00.511 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:19:15.255 [info] {"source":"oban","duration":1123,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:19:45.258 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:20:00.512 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:20:15.259 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:20:45.262 [info] {"source":"oban","duration":1757,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:21:00.514 [info] {"source":"oban","duration":362,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:21:15.265 [info] {"source":"oban","duration":1370,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:21:45.266 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:22:00.516 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:22:15.268 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:22:45.270 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:23:00.516 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:23:15.272 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:23:45.275 [info] {"source":"oban","duration":1381,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:24:00.518 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:24:15.276 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:24:45.278 [info] {"source":"oban","duration":953,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:25:00.519 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:25:15.281 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:25:45.283 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:26:00.519 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:26:15.284 [info] {"source":"oban","duration":1318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:26:45.287 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:27:00.521 [info] {"source":"oban","duration":399,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:27:15.288 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:27:45.290 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:28:00.521 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:28:15.292 [info] {"source":"oban","duration":1116,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:28:45.294 [info] {"source":"oban","duration":1256,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:00.523 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:29:15.296 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:45.298 [info] {"source":"oban","duration":1165,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:30:00.523 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:30:15.300 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:30:45.302 [info] {"source":"oban","duration":1209,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:31:00.524 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:31:15.304 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:31:45.306 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:32:00.525 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:32:15.308 [info] {"source":"oban","duration":875,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:32:45.310 [info] {"source":"oban","duration":1022,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:33:00.526 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:33:15.313 [info] {"source":"oban","duration":1460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:33:45.315 [info] {"source":"oban","duration":1484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:34:00.528 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:34:15.317 [info] {"source":"oban","duration":1614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:34:45.318 [info] {"source":"oban","duration":1128,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:35:00.529 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:35:15.321 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:35:45.322 [info] {"source":"oban","duration":1033,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:36:00.530 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:36:15.324 [info] {"source":"oban","duration":892,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:36:45.326 [info] {"source":"oban","duration":1196,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:37:00.530 [info] {"source":"oban","duration":303,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:37:15.328 [info] {"source":"oban","duration":742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:37:45.329 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:38:00.532 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:38:15.331 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:38:45.333 [info] {"source":"oban","duration":1186,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:39:00.532 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:39:15.336 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:39:45.337 [info] {"source":"oban","duration":1027,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:40:00.533 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:40:15.339 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:40:45.342 [info] {"source":"oban","duration":1453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:41:00.534 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:41:15.343 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:41:45.345 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:42:00.535 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:42:15.347 [info] {"source":"oban","duration":1187,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:42:45.349 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:43:00.536 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:43:15.351 [info] {"source":"oban","duration":1035,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:43:45.353 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:44:00.537 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:44:15.355 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:44:45.357 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:45:00.539 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:45:15.359 [info] {"source":"oban","duration":1215,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:45:45.361 [info] {"source":"oban","duration":1250,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:46:00.540 [info] {"source":"oban","duration":539,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:46:15.363 [info] {"source":"oban","duration":877,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:46:45.365 [info] {"source":"oban","duration":1215,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:47:00.541 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:47:15.367 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:47:45.369 [info] {"source":"oban","duration":864,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:48:00.543 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:48:15.371 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:48:45.373 [info] {"source":"oban","duration":1121,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:49:00.543 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:49:15.375 [info] {"source":"oban","duration":1375,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:49:45.377 [info] {"source":"oban","duration":1204,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:50:00.544 [info] {"source":"oban","duration":379,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:50:15.379 [info] {"source":"oban","duration":1290,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:50:45.381 [info] {"source":"oban","duration":1157,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:51:00.546 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:51:15.383 [info] {"source":"oban","duration":1334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:51:45.386 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:52:00.547 [info] {"source":"oban","duration":402,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:52:15.388 [info] {"source":"oban","duration":1637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:52:45.389 [info] {"source":"oban","duration":1182,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:53:00.548 [info] {"source":"oban","duration":413,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:53:15.391 [info] {"source":"oban","duration":1241,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:53:45.393 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:54:00.548 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:54:15.396 [info] {"source":"oban","duration":1438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:54:45.397 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:55:00.549 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:55:15.399 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:55:45.401 [info] {"source":"oban","duration":1170,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:56:00.550 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:56:15.403 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:56:45.405 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:57:00.552 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:57:15.408 [info] {"source":"oban","duration":1458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:57:45.410 [info] {"source":"oban","duration":1473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:58:00.552 [info] {"source":"oban","duration":241,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:58:15.411 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:58:45.413 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:59:00.554 [info] {"source":"oban","duration":539,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:59:15.416 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:59:45.417 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:00:00.555 [info] {"source":"oban","duration":251,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:00:15.419 [info] {"source":"oban","duration":1265,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:00:45.421 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:01:00.557 [info] {"source":"oban","duration":429,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:01:15.423 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:01:45.425 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:02:00.557 [info] {"source":"oban","duration":381,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:02:15.427 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:02:45.430 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:03:00.559 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:03:15.431 [info] {"source":"oban","duration":908,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:03:45.433 [info] {"source":"oban","duration":962,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:04:00.559 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:04:15.435 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:04:45.437 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:05:00.560 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:05:15.439 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:05:45.441 [info] {"source":"oban","duration":1398,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:06:00.562 [info] {"source":"oban","duration":565,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:06:15.444 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:06:45.445 [info] {"source":"oban","duration":1179,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:07:00.564 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:07:15.447 [info] {"source":"oban","duration":1264,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:07:45.449 [info] {"source":"oban","duration":1169,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:08:00.565 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:08:15.452 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:08:45.453 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:09:00.565 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:09:15.455 [info] {"source":"oban","duration":879,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:09:45.458 [info] {"source":"oban","duration":1433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:10:00.566 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:10:15.459 [info] {"source":"oban","duration":913,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:10:45.461 [info] {"source":"oban","duration":1070,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:11:00.568 [info] {"source":"oban","duration":528,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:11:15.463 [info] {"source":"oban","duration":869,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:11:45.465 [info] {"source":"oban","duration":1036,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:12:00.568 [info] {"source":"oban","duration":229,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:12:15.467 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:12:45.469 [info] {"source":"oban","duration":832,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:13:00.569 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:13:15.471 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:13:45.473 [info] {"source":"oban","duration":1371,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:14:00.571 [info] {"source":"oban","duration":376,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:14:15.475 [info] {"source":"oban","duration":1153,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:14:45.477 [info] {"source":"oban","duration":1319,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:15:00.571 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:15:15.479 [info] {"source":"oban","duration":1303,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:15:45.482 [info] {"source":"oban","duration":1795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:16:00.572 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:16:15.484 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:16:45.486 [info] {"source":"oban","duration":1115,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:17:00.573 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:17:15.488 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:17:45.491 [info] {"source":"oban","duration":1552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:18:00.574 [info] {"source":"oban","duration":330,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:18:15.492 [info] {"source":"oban","duration":1000,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:18:45.494 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:19:00.575 [info] {"source":"oban","duration":335,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:19:15.496 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:19:45.499 [info] {"source":"oban","duration":1483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:20:00.577 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:20:15.500 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:20:45.502 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:21:00.577 [info] {"source":"oban","duration":301,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:21:15.504 [info] {"source":"oban","duration":1107,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:21:45.507 [info] {"source":"oban","duration":1381,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:22:00.579 [info] {"source":"oban","duration":464,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:22:15.508 [info] {"source":"oban","duration":1416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:22:45.511 [info] {"source":"oban","duration":1462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:23:00.579 [info] {"source":"oban","duration":367,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:23:15.512 [info] {"source":"oban","duration":1082,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:23:45.515 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:24:00.580 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:24:15.517 [info] {"source":"oban","duration":1475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:24:45.518 [info] {"source":"oban","duration":1323,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:00.581 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:25:15.520 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:45.522 [info] {"source":"oban","duration":1011,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:26:00.582 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:26:15.524 [info] {"source":"oban","duration":1191,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:26:45.526 [info] {"source":"oban","duration":990,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:27:00.584 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:27:15.528 [info] {"source":"oban","duration":1065,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:27:45.530 [info] {"source":"oban","duration":910,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:28:00.585 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:28:15.532 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:28:45.534 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:29:00.585 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:29:15.537 [info] {"source":"oban","duration":1641,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:29:45.540 [info] {"source":"oban","duration":1549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:30:00.586 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:30:15.542 [info] {"source":"oban","duration":1547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:30:45.544 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:31:00.588 [info] {"source":"oban","duration":406,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:31:15.546 [info] {"source":"oban","duration":1250,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:31:45.549 [info] {"source":"oban","duration":1442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:32:00.588 [info] {"source":"oban","duration":294,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:32:15.550 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:32:45.552 [info] {"source":"oban","duration":1316,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:33:00.590 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:33:15.554 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:33:45.556 [info] {"source":"oban","duration":998,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:34:00.591 [info] {"source":"oban","duration":468,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:34:15.559 [info] {"source":"oban","duration":1592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:34:45.560 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:35:00.591 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:35:15.563 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:35:45.564 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:36:00.592 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:36:15.567 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:36:45.568 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:37:00.593 [info] {"source":"oban","duration":328,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:37:15.570 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:37:45.572 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:38:00.594 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:38:15.575 [info] {"source":"oban","duration":1437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:38:45.577 [info] {"source":"oban","duration":1513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:39:00.596 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:39:15.578 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:39:45.580 [info] {"source":"oban","duration":997,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:40:00.596 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:40:15.582 [info] {"source":"oban","duration":1254,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:40:45.585 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:41:00.597 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:41:15.586 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:41:45.588 [info] {"source":"oban","duration":980,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:42:00.598 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:42:15.590 [info] {"source":"oban","duration":1293,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:42:45.592 [info] {"source":"oban","duration":965,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:43:00.599 [info] {"source":"oban","duration":432,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:43:15.594 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:43:45.596 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:44:00.600 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:44:15.598 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:44:45.600 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:45:00.601 [info] {"source":"oban","duration":408,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:45:15.602 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:45:45.605 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:46:00.603 [info] {"source":"oban","duration":530,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:46:15.606 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:46:45.609 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:47:00.604 [info] {"source":"oban","duration":533,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:47:15.610 [info] {"source":"oban","duration":1270,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:47:45.613 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:48:00.605 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:48:15.614 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:48:45.616 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:49:00.605 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:49:15.618 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:49:45.620 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:50:00.606 [info] {"source":"oban","duration":326,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:50:15.622 [info] {"source":"oban","duration":1364,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:50:45.625 [info] {"source":"oban","duration":1543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:51:00.608 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:51:15.627 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:51:45.628 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:52:00.608 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:52:15.630 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:52:45.632 [info] {"source":"oban","duration":879,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:53:00.609 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:53:15.635 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:53:45.636 [info] {"source":"oban","duration":1109,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:54:00.611 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:54:15.638 [info] {"source":"oban","duration":1279,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:54:45.641 [info] {"source":"oban","duration":1384,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:55:00.611 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:55:15.642 [info] {"source":"oban","duration":1296,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:55:45.645 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:56:00.612 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:56:15.646 [info] {"source":"oban","duration":1181,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:56:45.648 [info] {"source":"oban","duration":1073,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:57:00.613 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:57:15.650 [info] {"source":"oban","duration":1297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:57:45.652 [info] {"source":"oban","duration":1215,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:58:00.615 [info] {"source":"oban","duration":380,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:58:15.654 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:58:45.656 [info] {"source":"oban","duration":931,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:59:00.615 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:59:15.658 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:59:45.660 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:00:00.617 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:00:15.662 [info] {"source":"oban","duration":1059,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:00:45.664 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:01:00.617 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:01:15.666 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:01:45.668 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:02:00.618 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:02:15.670 [info] {"source":"oban","duration":1220,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:02:45.672 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:03:00.620 [info] {"source":"oban","duration":475,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:03:15.675 [info] {"source":"oban","duration":1500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:03:45.676 [info] {"source":"oban","duration":1216,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:04:00.620 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:04:15.678 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:04:45.681 [info] {"source":"oban","duration":1519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:05:00.621 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:05:15.682 [info] {"source":"oban","duration":1387,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:05:45.684 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:06:00.622 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:06:15.686 [info] {"source":"oban","duration":1100,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:06:45.688 [info] {"source":"oban","duration":1316,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:07:00.623 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:07:15.690 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:07:45.692 [info] {"source":"oban","duration":1306,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:08:00.624 [info] {"source":"oban","duration":253,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:08:15.694 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:08:45.696 [info] {"source":"oban","duration":1004,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:09:00.626 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:09:15.699 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:09:45.701 [info] {"source":"oban","duration":1560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:10:00.626 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:10:15.703 [info] {"source":"oban","duration":1537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:10:45.705 [info] {"source":"oban","duration":1536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:11:00.628 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:11:15.707 [info] {"source":"oban","duration":1448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:11:45.709 [info] {"source":"oban","duration":1421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:12:00.629 [info] {"source":"oban","duration":368,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:12:15.711 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:12:45.713 [info] {"source":"oban","duration":1554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:13:00.629 [info] {"source":"oban","duration":381,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:13:15.714 [info] {"source":"oban","duration":1328,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:13:45.717 [info] {"source":"oban","duration":1491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:14:00.630 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:14:15.719 [info] {"source":"oban","duration":1578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:14:45.721 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:15:00.631 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:15:15.722 [info] {"source":"oban","duration":937,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:15:45.724 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:16:00.632 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:16:15.726 [info] {"source":"oban","duration":968,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:16:45.728 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:17:00.633 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:17:15.731 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:17:45.733 [info] {"source":"oban","duration":1477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:18:00.634 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:18:15.735 [info] {"source":"oban","duration":1542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:18:45.737 [info] {"source":"oban","duration":1463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:19:00.635 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:19:15.738 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:19:45.740 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:20:00.636 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:20:15.742 [info] {"source":"oban","duration":1089,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:20:45.744 [info] {"source":"oban","duration":1203,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:21:00.637 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:21:15.746 [info] {"source":"oban","duration":922,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:21:45.748 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:22:00.639 [info] {"source":"oban","duration":402,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:22:15.750 [info] {"source":"oban","duration":1347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:22:45.752 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:23:00.639 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:23:15.754 [info] {"source":"oban","duration":1198,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:23:45.756 [info] {"source":"oban","duration":961,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:24:00.641 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:24:15.758 [info] {"source":"oban","duration":901,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:24:45.760 [info] {"source":"oban","duration":898,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:25:00.641 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:25:15.763 [info] {"source":"oban","duration":1372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:25:45.764 [info] {"source":"oban","duration":1376,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:26:00.643 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:26:15.766 [info] {"source":"oban","duration":1288,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:26:45.769 [info] {"source":"oban","duration":1589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:27:00.644 [info] {"source":"oban","duration":382,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:27:15.770 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:27:45.773 [info] {"source":"oban","duration":1522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:28:00.645 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:28:15.774 [info] {"source":"oban","duration":1135,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:28:45.776 [info] {"source":"oban","duration":1110,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:29:00.646 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:29:15.779 [info] {"source":"oban","duration":1408,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:29:45.780 [info] {"source":"oban","duration":1018,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:30:00.647 [info] {"source":"oban","duration":455,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:30:15.782 [info] {"source":"oban","duration":907,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:30:45.784 [info] {"source":"oban","duration":1225,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:31:00.647 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:31:15.786 [info] {"source":"oban","duration":1196,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:31:45.788 [info] {"source":"oban","duration":950,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:32:00.649 [info] {"source":"oban","duration":425,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:32:15.790 [info] {"source":"oban","duration":1055,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:32:45.792 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:33:00.650 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:33:15.794 [info] {"source":"oban","duration":988,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:33:45.796 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:34:00.650 [info] {"source":"oban","duration":241,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:34:15.799 [info] {"source":"oban","duration":1696,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:34:45.801 [info] {"source":"oban","duration":1172,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:35:00.651 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:35:15.803 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:35:45.806 [info] {"source":"oban","duration":1644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:36:00.652 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:36:15.808 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:36:45.809 [info] {"source":"oban","duration":1176,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:37:00.653 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:37:15.812 [info] {"source":"oban","duration":1417,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:37:45.814 [info] {"source":"oban","duration":1431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:38:00.654 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:38:15.816 [info] {"source":"oban","duration":1676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:38:45.817 [info] {"source":"oban","duration":1367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:39:00.655 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:39:15.820 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:39:45.821 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:40:00.656 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:40:15.823 [info] {"source":"oban","duration":955,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:40:45.825 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:41:00.658 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:41:15.828 [info] {"source":"oban","duration":1508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:41:45.830 [info] {"source":"oban","duration":1439,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:42:00.659 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:42:15.832 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:42:45.834 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:43:00.659 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:43:15.835 [info] {"source":"oban","duration":1272,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:43:45.837 [info] {"source":"oban","duration":1379,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:44:00.660 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:44:15.839 [info] {"source":"oban","duration":1298,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:44:45.841 [info] {"source":"oban","duration":1054,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:45:00.662 [info] {"source":"oban","duration":438,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:45:15.843 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:45:45.846 [info] {"source":"oban","duration":1414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:46:00.662 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:46:15.847 [info] {"source":"oban","duration":1272,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:46:45.849 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:47:00.663 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:47:15.851 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:47:45.853 [info] {"source":"oban","duration":992,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:48:00.664 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:48:15.855 [info] {"source":"oban","duration":939,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:48:45.857 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:49:00.665 [info] {"source":"oban","duration":386,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:49:15.859 [info] {"source":"oban","duration":1386,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:49:45.861 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:50:00.666 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:50:15.863 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:50:45.866 [info] {"source":"oban","duration":1396,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:51:00.667 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:51:15.867 [info] {"source":"oban","duration":1300,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:51:45.869 [info] {"source":"oban","duration":830,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:52:00.669 [info] {"source":"oban","duration":418,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:52:05.052 [info] GET /sources 13:52:05.052 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 13:52:05.054 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=1701.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 [] 13:52:05.054 [debug] QUERY OK source="settings" db=0.4ms idle=1702.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 [] 13:52:05.056 [debug] QUERY OK source="settings" db=0.3ms idle=826.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 [] 13:52:05.057 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=821.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 [] 13:52:05.058 [debug] QUERY OK source="settings" db=0.3ms idle=706.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 [] 13:52:05.066 [debug] QUERY OK source="sources" db=7.6ms idle=5.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)) [] 13:52:05.076 [debug] QUERY OK source="sources" db=8.9ms queue=0.1ms idle=12.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] 13:52:05.082 [info] Sent 200 in 29ms 13:52:15.871 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:52:45.873 [info] {"source":"oban","duration":1392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:53:00.670 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:53:15.875 [info] {"source":"oban","duration":954,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:53:45.878 [info] {"source":"oban","duration":1400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:54:00.670 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:54:15.879 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:54:45.881 [info] {"source":"oban","duration":1259,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:55:00.671 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:55:15.883 [info] {"source":"oban","duration":925,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:55:45.885 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:56:00.672 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:56:15.887 [info] {"source":"oban","duration":913,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:56:45.889 [info] {"source":"oban","duration":1020,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:57:00.674 [info] {"source":"oban","duration":459,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:57:15.892 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:57:45.893 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:58:00.675 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:58:15.896 [info] {"source":"oban","duration":1388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:58:45.897 [info] {"source":"oban","duration":1210,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:59:00.676 [info] {"source":"oban","duration":386,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:59:15.900 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:59:45.901 [info] {"source":"oban","duration":1241,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:00:00.676 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:00:15.903 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:00:45.906 [info] {"source":"oban","duration":1574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:01:00.678 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:01:15.908 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:01:45.910 [info] {"source":"oban","duration":1499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:02:00.678 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:02:15.911 [info] {"source":"oban","duration":967,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:02:45.913 [info] {"source":"oban","duration":911,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:03:00.679 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:03:15.915 [info] {"source":"oban","duration":945,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:03:45.917 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:04:00.681 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:04:15.919 [info] {"source":"oban","duration":946,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:04:45.921 [info] {"source":"oban","duration":896,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:05:00.681 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:05:15.924 [info] {"source":"oban","duration":1518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:05:45.925 [info] {"source":"oban","duration":1042,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:06:00.683 [info] {"source":"oban","duration":359,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:06:15.928 [info] {"source":"oban","duration":1360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:06:45.930 [info] {"source":"oban","duration":1540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:07:00.684 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:07:15.932 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:07:45.934 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:08:00.684 [info] {"source":"oban","duration":390,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:08:15.935 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:08:45.937 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:09:00.685 [info] {"source":"oban","duration":358,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:09:15.939 [info] {"source":"oban","duration":1292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:09:45.941 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:10:00.686 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:10:15.943 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:10:45.945 [info] {"source":"oban","duration":1298,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:11:00.687 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:11:15.947 [info] {"source":"oban","duration":1342,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:11:45.949 [info] {"source":"oban","duration":906,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:12:00.688 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:12:15.951 [info] {"source":"oban","duration":877,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:12:45.953 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:13:00.690 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:13:15.955 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:13:45.958 [info] {"source":"oban","duration":1445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:14:00.690 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:14:15.960 [info] {"source":"oban","duration":1499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:14:45.961 [info] {"source":"oban","duration":1330,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:15:00.691 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:15:15.963 [info] {"source":"oban","duration":1314,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:15:45.965 [info] {"source":"oban","duration":1233,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:16:00.692 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:16:15.967 [info] {"source":"oban","duration":1164,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:16:45.969 [info] {"source":"oban","duration":1391,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:17:00.694 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:17:15.972 [info] {"source":"oban","duration":1381,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:17:45.974 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:18:00.694 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:18:15.975 [info] {"source":"oban","duration":1138,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:18:45.977 [info] {"source":"oban","duration":1160,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:19:00.695 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:19:15.980 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:19:45.981 [info] {"source":"oban","duration":951,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:20:00.696 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:20:15.983 [info] {"source":"oban","duration":894,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:20:45.985 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:21:00.697 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:21:15.987 [info] {"source":"oban","duration":907,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:21:45.989 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:22:00.698 [info] {"source":"oban","duration":333,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:22:15.991 [info] {"source":"oban","duration":1357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:22:45.993 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:23:00.700 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:23:15.996 [info] {"source":"oban","duration":1575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:23:45.999 [info] {"source":"oban","duration":1595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:24:00.701 [info] {"source":"oban","duration":348,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:24:16.000 [info] {"source":"oban","duration":1228,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:24:46.003 [info] {"source":"oban","duration":1715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:25:00.702 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:25:16.005 [info] {"source":"oban","duration":1369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:25:46.008 [info] {"source":"oban","duration":1624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:26:00.702 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:26:16.010 [info] {"source":"oban","duration":1395,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:26:46.011 [info] {"source":"oban","duration":1023,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:27:00.703 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:27:16.013 [info] {"source":"oban","duration":975,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:27:46.015 [info] {"source":"oban","duration":1192,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:28:00.705 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:28:16.017 [info] {"source":"oban","duration":940,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:28:46.019 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:29:00.706 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:29:16.021 [info] {"source":"oban","duration":1002,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:29:46.023 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:30:00.707 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:30:16.026 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:30:46.028 [info] {"source":"oban","duration":1684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:31:00.707 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:31:16.031 [info] {"source":"oban","duration":1531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:31:46.032 [info] {"source":"oban","duration":1096,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:32:00.709 [info] {"source":"oban","duration":373,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:32:16.034 [info] {"source":"oban","duration":1092,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:32:46.037 [info] {"source":"oban","duration":1435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:33:00.710 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:33:16.039 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:33:46.040 [info] {"source":"oban","duration":1276,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:34:00.710 [info] {"source":"oban","duration":340,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:34:16.042 [info] {"source":"oban","duration":1236,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:34:46.045 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:35:00.711 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:35:16.046 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:35:46.048 [info] {"source":"oban","duration":1143,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:36:00.713 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:36:16.050 [info] {"source":"oban","duration":916,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:36:46.052 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:37:00.714 [info] {"source":"oban","duration":518,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:37:16.054 [info] {"source":"oban","duration":1257,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:37:46.056 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:38:00.714 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:38:16.058 [info] {"source":"oban","duration":1165,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:38:46.061 [info] {"source":"oban","duration":1587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:39:00.715 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:39:16.063 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:39:46.064 [info] {"source":"oban","duration":1258,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:40:00.716 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:40:16.066 [info] {"source":"oban","duration":1331,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:40:46.068 [info] {"source":"oban","duration":1244,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:41:00.717 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:41:04.693 [info] GET /wp-content/plugins/hellopress/wp_filemanager.php 14:41:04.694 [debug] QUERY OK source="settings" db=0.2ms idle=1252.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 [] 14:41:04.695 [debug] QUERY OK source="settings" db=0.2ms idle=1246.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 [] 14:41:04.695 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:04.696 [error] #PID<0.10929.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 1) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-content/plugins/hellopress/wp_filemanager.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-content/plugins/hellopress/wp_filemanager (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/plugins/hellopress/wp_filemanager.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10929.0>, params: %{}, path_info: ["wp-content", "plugins", "hellopress", "wp_filemanager"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/plugins/hellopress/wp_filemanager.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDRTNu4UuevMAAllB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/plugins/hellopress/wp_filemanager.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, 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-content/plugins/hellopress/wp_filemanager (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/plugins/hellopress/wp_filemanager.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10929.0>, params: %{}, path_info: ["wp-content", "plugins", "hellopress", "wp_filemanager"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/plugins/hellopress/wp_filemanager.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0 (truncated) 14:41:04.728 [info] GET /r.php 14:41:04.729 [debug] QUERY OK source="settings" db=0.3ms idle=377.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 [] 14:41:04.729 [debug] QUERY OK source="settings" db=0.3ms idle=285.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 [] 14:41:04.730 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:04.730 [error] #PID<0.10930.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 2) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /r.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 /r (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/r.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10930.0>, params: %{}, path_info: ["r"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/r.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDRbjmoVmG0EAAlmB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/r.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, 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 /r (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/r.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10930.0>, params: %{}, path_info: ["r"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/r.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDRbjmoVmG0EAAlmB"} ], 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 (truncated) 14:41:04.760 [info] GET /100.php 14:41:04.761 [debug] QUERY OK source="settings" db=0.3ms idle=310.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 [] 14:41:04.761 [debug] QUERY OK source="settings" db=0.3ms idle=66.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 [] 14:41:04.762 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:04.762 [error] #PID<0.10931.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 3) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /100.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 /100 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/100.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10931.0>, params: %{}, path_info: ["100"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/100.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDRjKg-uqtvMAAlnB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/100.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, 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 /100 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/100.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10931.0>, params: %{}, path_info: ["100"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/100.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDRjKg-uqtvMAAlnB"} ], 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]}, (truncated) 14:41:04.802 [info] GET /edit-tags.php 14:41:04.803 [debug] QUERY OK source="settings" db=0.2ms idle=107.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 [] 14:41:04.803 [debug] QUERY OK source="settings" db=0.3ms idle=74.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 [] 14:41:04.804 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:04.804 [error] #PID<0.10932.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 4) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /edit-tags.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 /edit-tags (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/edit-tags.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 4, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10932.0>, params: %{}, path_info: ["edit-tags"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/edit-tags.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDRtOqNLM10gAAloB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/edit-tags.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 4, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /edit-tags (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/edit-tags.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 4, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10932.0>, params: %{}, path_info: ["edit-tags"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/edit-tags.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDRtOqNLM10gAAloB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [ (truncated) 14:41:04.832 [info] GET /stindex.php 14:41:04.833 [debug] QUERY OK source="settings" db=0.2ms idle=103.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 [] 14:41:04.833 [debug] QUERY OK source="settings" db=0.3ms idle=72.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 [] 14:41:04.834 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:04.834 [error] #PID<0.10933.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 5) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /stindex.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 /stindex (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/stindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10933.0>, params: %{}, path_info: ["stindex"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/stindex.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDR0VTIrgy4gAAlpB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/stindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /stindex (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/stindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10933.0>, params: %{}, path_info: ["stindex"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/stindex.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDR0VTIrgy4gAAlpB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoeni (truncated) 14:41:04.872 [info] GET /css.php 14:41:04.873 [debug] QUERY OK source="settings" db=0.2ms idle=111.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 [] 14:41:04.873 [debug] QUERY OK source="settings" db=0.3ms idle=70.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 [] 14:41:04.874 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:04.874 [error] #PID<0.10934.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 6) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /css.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 /css (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/css.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 6, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10934.0>, params: %{}, path_info: ["css"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/css.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDR931-9njxAAAlqB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/css.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 6, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /css (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/css.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 6, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10934.0>, params: %{}, path_info: ["css"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/css.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDR931-9njxAAAlqB"} ], 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]}, (truncated) 14:41:04.905 [info] GET /.alf.php 14:41:04.906 [debug] QUERY OK source="settings" db=0.3ms idle=102.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 [] 14:41:04.907 [debug] QUERY OK source="settings" db=0.3ms idle=73.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 [] 14:41:04.907 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:04.907 [error] #PID<0.10935.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 7) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /.alf.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 /.alf (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.alf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 7, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10935.0>, params: %{}, path_info: [".alf"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/.alf.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSFycjIPTvwAAlrB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.alf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 7, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.alf (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.alf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 7, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10935.0>, params: %{}, path_info: [".alf"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/.alf.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSFycjIPTvwAAlrB"} ], 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) 14:41:04.949 [info] GET /wp-trackback.php 14:41:04.950 [debug] QUERY OK source="settings" db=0.3ms idle=116.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 [] 14:41:04.950 [debug] QUERY OK source="settings" db=0.3ms idle=77.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 [] 14:41:04.951 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:04.951 [error] #PID<0.10936.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 8) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-trackback.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-trackback (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-trackback.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 8, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10936.0>, params: %{}, path_info: ["wp-trackback"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-trackback.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSQPAQcykvMAAlsB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-trackback.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 8, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-trackback (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-trackback.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 8, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10936.0>, params: %{}, path_info: ["wp-trackback"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-trackback.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSQPAQcykvMAAlsB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWe (truncated) 14:41:04.981 [info] GET /xvent.php 14:41:04.982 [debug] QUERY OK source="settings" db=0.4ms idle=107.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 [] 14:41:04.982 [debug] QUERY OK source="settings" db=0.3ms idle=75.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 [] 14:41:04.982 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:04.983 [error] #PID<0.10937.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 9) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /xvent.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 /xvent (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xvent.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 9, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10937.0>, params: %{}, path_info: ["xvent"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xvent.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSX0MxWHMzoAAltB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xvent.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 9, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /xvent (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xvent.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 9, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10937.0>, params: %{}, path_info: ["xvent"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xvent.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSX0MxWHMzoAAltB"} ], 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 (truncated) 14:41:05.010 [info] GET /leaf.php 14:41:05.011 [debug] QUERY OK source="settings" db=0.2ms idle=103.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 [] 14:41:05.011 [debug] QUERY OK source="settings" db=0.3ms idle=60.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 [] 14:41:05.011 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.012 [error] #PID<0.10938.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 10) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /leaf.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 /leaf (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/leaf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 10, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10938.0>, params: %{}, path_info: ["leaf"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/leaf.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSevkqDS4fIAAluB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/leaf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 10, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /leaf (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/leaf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 10, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10938.0>, params: %{}, path_info: ["leaf"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/leaf.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSevkqDS4fIAAluB"} ], 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", (truncated) 14:41:05.053 [info] GET /wp-content/admin.php 14:41:05.054 [debug] QUERY OK source="settings" db=0.2ms idle=103.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 [] 14:41:05.054 [debug] QUERY OK source="settings" db=0.2ms idle=72.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 [] 14:41:05.055 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.055 [error] #PID<0.10939.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 11) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-content/admin.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-content/admin (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/admin.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 11, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10939.0>, params: %{}, path_info: ["wp-content", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/admin.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSpEhCBSGtsAAlvB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/admin.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 11, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-content/admin (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/admin.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 11, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10939.0>, params: %{}, path_info: ["wp-content", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/admin.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSpEhCBSGtsAAlvB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, (truncated) 14:41:05.082 [info] GET /radio.php 14:41:05.083 [debug] QUERY OK source="settings" db=0.3ms idle=100.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 [] 14:41:05.083 [debug] QUERY OK source="settings" db=0.3ms idle=72.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 [] 14:41:05.084 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.084 [error] #PID<0.10940.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 12) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /radio.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 /radio (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/radio.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 12, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10940.0>, params: %{}, path_info: ["radio"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/radio.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSv8D-kxXWIAAlwB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/radio.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 12, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /radio (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/radio.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 12, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10940.0>, params: %{}, path_info: ["radio"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/radio.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDSv8D-kxXWIAAlwB"} ], 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/ro (truncated) 14:41:05.122 [info] GET /x.php 14:41:05.123 [debug] QUERY OK source="settings" db=0.2ms idle=111.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 [] 14:41:05.123 [debug] QUERY OK source="settings" db=0.3ms idle=68.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 [] 14:41:05.123 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.124 [error] #PID<0.10941.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 13) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /x.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 /x (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/x.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 13, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10941.0>, params: %{}, path_info: ["x"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/x.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDS5dxzZHKKYAAlxB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/x.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 13, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /x (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/x.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 13, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10941.0>, params: %{}, path_info: ["x"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/x.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDS5dxzZHKKYAAlxB"} ], 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]}, {Pinchfla (truncated) 14:41:05.154 [info] GET /class.php 14:41:05.154 [debug] QUERY OK source="settings" db=0.2ms idle=99.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 [] 14:41:05.155 [debug] QUERY OK source="settings" db=0.2ms idle=71.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 [] 14:41:05.155 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.155 [error] #PID<0.10942.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 14) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /class.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 /class (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/class.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 14, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10942.0>, params: %{}, path_info: ["class"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/class.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTBB9zI5ZLAAAlyB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/class.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 14, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /class (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/class.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 14, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10942.0>, params: %{}, path_info: ["class"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/class.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTBB9zI5ZLAAAlyB"} ], 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/ro (truncated) 14:41:05.190 [info] GET /kiss.php 14:41:05.190 [debug] QUERY OK source="settings" db=0.2ms idle=106.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 [] 14:41:05.191 [debug] QUERY OK source="settings" db=0.2ms idle=67.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 [] 14:41:05.191 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.191 [error] #PID<0.10943.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 15) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /kiss.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 /kiss (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/kiss.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 15, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10943.0>, params: %{}, path_info: ["kiss"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/kiss.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTJl2dvN_NsAAlzB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/kiss.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 15, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /kiss (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/kiss.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 15, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10943.0>, params: %{}, path_info: ["kiss"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/kiss.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTJl2dvN_NsAAlzB"} ], 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", (truncated) 14:41:05.252 [info] GET /file2.php 14:41:05.253 [debug] QUERY OK source="settings" db=0.2ms idle=129.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 [] 14:41:05.254 [debug] QUERY OK source="settings" db=0.3ms idle=98.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 [] 14:41:05.254 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.254 [error] #PID<0.10944.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 16) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /file2.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 /file2 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/file2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 16, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10944.0>, params: %{}, path_info: ["file2"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/file2.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTYjw4_emJMAAl0B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/file2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 16, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /file2 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/file2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 16, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10944.0>, params: %{}, path_info: ["file2"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/file2.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTYjw4_emJMAAl0B"} ], 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/ro (truncated) 14:41:05.282 [info] GET /rip.php 14:41:05.283 [debug] QUERY OK source="settings" db=0.2ms idle=127.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 [] 14:41:05.283 [debug] QUERY OK source="settings" db=0.2ms idle=92.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 [] 14:41:05.283 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.284 [error] #PID<0.10945.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 17) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /rip.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 /rip (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rip.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 17, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10945.0>, params: %{}, path_info: ["rip"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/rip.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTfkJxxsdmoAAl1B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rip.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 17, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rip (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rip.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 17, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10945.0>, params: %{}, path_info: ["rip"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/rip.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTfkJxxsdmoAAl1B"} ], 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] (truncated) 14:41:05.320 [info] GET /export.php 14:41:05.321 [debug] QUERY OK source="settings" db=0.2ms idle=129.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 [] 14:41:05.321 [debug] QUERY OK source="settings" db=0.2ms idle=67.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 [] 14:41:05.321 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.322 [error] #PID<0.10946.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 18) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /export.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 /export (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/export.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 18, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10946.0>, params: %{}, path_info: ["export"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/export.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTon-S5mqnQAAl2B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/export.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 18, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /export (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/export.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 18, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10946.0>, params: %{}, path_info: ["export"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/export.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTon-S5mqnQAAl2B"} ], 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/ (truncated) 14:41:05.361 [info] GET /wp-admin/js/wp-conflg.php 14:41:05.362 [debug] QUERY OK source="settings" db=0.2ms idle=108.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 [] 14:41:05.362 [debug] QUERY OK source="settings" db=0.1ms idle=79.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 [] 14:41:05.363 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.363 [error] #PID<0.10947.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 19) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-admin/js/wp-conflg.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-admin/js/wp-conflg (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-admin/js/wp-conflg.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 19, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10947.0>, params: %{}, path_info: ["wp-admin", "js", "wp-conflg"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-admin/js/wp-conflg.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTyg1H0d_lMAAl3B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-admin/js/wp-conflg.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 19, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-admin/js/wp-conflg (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-admin/js/wp-conflg.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 19, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10947.0>, params: %{}, path_info: ["wp-admin", "js", "wp-conflg"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-admin/js/wp-conflg.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDTyg1H0d_lMAAl3B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil (truncated) 14:41:05.395 [info] GET /ilce.php 14:41:05.396 [debug] QUERY OK source="settings" db=0.2ms idle=112.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 [] 14:41:05.396 [debug] QUERY OK source="settings" db=0.2ms idle=75.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 [] 14:41:05.397 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.397 [error] #PID<0.10948.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 20) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ilce.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 /ilce (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ilce.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 20, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10948.0>, params: %{}, path_info: ["ilce"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ilce.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDT6n3rwkqsMAAl4B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ilce.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 20, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ilce (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ilce.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 20, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10948.0>, params: %{}, path_info: ["ilce"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ilce.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDT6n3rwkqsMAAl4B"} ], 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", (truncated) 14:41:05.427 [info] GET /f5.php 14:41:05.428 [debug] QUERY OK source="settings" db=0.4ms idle=106.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 [] 14:41:05.428 [debug] QUERY OK source="settings" db=0.3ms idle=65.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 [] 14:41:05.428 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.429 [error] #PID<0.10949.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 21) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /f5.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 /f5 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/f5.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 21, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10949.0>, params: %{}, path_info: ["f5"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/f5.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDUCHHAayI58AAl5B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/f5.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 21, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /f5 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/f5.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 21, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10949.0>, params: %{}, path_info: ["f5"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/f5.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDUCHHAayI58AAl5B"} ], 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]}, (truncated) 14:41:05.458 [info] GET /kindex.php 14:41:05.459 [debug] QUERY OK source="settings" db=0.3ms idle=62.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 [] 14:41:05.460 [debug] QUERY OK source="settings" db=0.2ms idle=31.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 [] 14:41:05.460 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.460 [error] #PID<0.10950.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 22) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /kindex.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 /kindex (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/kindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 22, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10950.0>, params: %{}, path_info: ["kindex"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/kindex.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDUJpOiW7uRMAAl6B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/kindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 22, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /kindex (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/kindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 22, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10950.0>, params: %{}, path_info: ["kindex"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/kindex.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDUJpOiW7uRMAAl6B"} ], 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/ (truncated) 14:41:05.491 [info] GET /ini_smarty.php 14:41:05.492 [debug] QUERY OK source="settings" db=0.2ms idle=63.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 [] 14:41:05.492 [debug] QUERY OK source="settings" db=0.2ms idle=46.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 [] 14:41:05.492 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.493 [error] #PID<0.10951.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 23) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ini_smarty.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 /ini_smarty (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ini_smarty.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 23, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10951.0>, params: %{}, path_info: ["ini_smarty"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ini_smarty.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDURaNlwdn8EAAl7B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ini_smarty.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 23, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ini_smarty (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ini_smarty.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 23, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10951.0>, params: %{}, path_info: ["ini_smarty"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ini_smarty.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDURaNlwdn8EAAl7B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, (truncated) 14:41:05.522 [info] GET /temp.php/wp-update.php 14:41:05.523 [debug] QUERY OK source="settings" db=0.2ms idle=69.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 [] 14:41:05.523 [debug] QUERY OK source="settings" db=0.3ms idle=63.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 [] 14:41:05.523 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.524 [error] #PID<0.10952.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 24) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /temp.php/wp-update.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 /temp.php/wp-update (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/temp.php/wp-update.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 24, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10952.0>, params: %{}, path_info: ["temp.php", "wp-update"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/temp.php/wp-update.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDUYzgobEVBsAAl8B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/temp.php/wp-update.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 24, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /temp.php/wp-update (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/temp.php/wp-update.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 24, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10952.0>, params: %{}, path_info: ["temp.php", "wp-update"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/temp.php/wp-update.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDUYzgobEVBsAAl8B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb. (truncated) 14:41:05.561 [info] GET /2026.php 14:41:05.562 [debug] QUERY OK source="settings" db=0.2ms idle=101.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 [] 14:41:05.562 [debug] QUERY OK source="settings" db=0.2ms idle=70.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 [] 14:41:05.562 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.563 [error] #PID<0.10953.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 25) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /2026.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 /2026 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/2026.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 25, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10953.0>, params: %{}, path_info: ["2026"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/2026.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDUiISHm3KVEAAl9B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/2026.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 25, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /2026 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/2026.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 25, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10953.0>, params: %{}, path_info: ["2026"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/2026.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDUiISHm3KVEAAl9B"} ], 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", (truncated) 14:41:05.623 [info] GET /1xleet.php 14:41:05.623 [debug] QUERY OK source="settings" db=0.2ms idle=130.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 [] 14:41:05.624 [debug] QUERY OK source="settings" db=0.2ms idle=100.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 [] 14:41:05.624 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.624 [error] #PID<0.10954.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 26) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /1xleet.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 /1xleet (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/1xleet.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 26, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10954.0>, params: %{}, path_info: ["1xleet"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/1xleet.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDUwyWNf60MMAAl-B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/1xleet.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 26, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /1xleet (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/1xleet.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 26, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10954.0>, params: %{}, path_info: ["1xleet"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/1xleet.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDUwyWNf60MMAAl-B"} ], 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/ (truncated) 14:41:05.669 [info] GET /4index.php 14:41:05.669 [debug] QUERY OK source="settings" db=0.2ms idle=145.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 [] 14:41:05.670 [debug] QUERY OK source="settings" db=0.2ms idle=107.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 [] 14:41:05.670 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.670 [error] #PID<0.10955.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 27) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /4index.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 /4index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/4index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 27, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10955.0>, params: %{}, path_info: ["4index"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/4index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDU7xSnvugL8AAl_B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/4index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 27, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /4index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/4index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 27, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10955.0>, params: %{}, path_info: ["4index"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/4index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDU7xSnvugL8AAl_B"} ], 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/ (truncated) 14:41:05.710 [info] GET /classwithtostring.php 14:41:05.711 [debug] QUERY OK source="settings" db=0.2ms idle=148.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 [] 14:41:05.712 [debug] QUERY OK source="settings" db=0.2ms idle=88.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 [] 14:41:05.712 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.712 [error] #PID<0.10956.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 28) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /classwithtostring.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 /classwithtostring (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/classwithtostring.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 28, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10956.0>, params: %{}, path_info: ["classwithtostring"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/classwithtostring.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDVFwDEbMLqQAAmAB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/classwithtostring.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 28, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /classwithtostring (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/classwithtostring.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 28, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10956.0>, params: %{}, path_info: ["classwithtostring"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/classwithtostring.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDVFwDEbMLqQAAmAB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, (truncated) 14:41:05.738 [info] GET /x7.php 14:41:05.739 [debug] QUERY OK source="settings" db=0.4ms idle=114.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 [] 14:41:05.739 [debug] QUERY OK source="settings" db=0.3ms idle=69.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 [] 14:41:05.740 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.740 [error] #PID<0.10957.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 29) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /x7.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 /x7 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/x7.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 29, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10957.0>, params: %{}, path_info: ["x7"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/x7.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDVMSsLiuL38AAmBB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/x7.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 29, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /x7 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/x7.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 29, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10957.0>, params: %{}, path_info: ["x7"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/x7.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDVMSsLiuL38AAmBB"} ], 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]}, (truncated) 14:41:05.803 [info] GET /update.php 14:41:05.803 [debug] QUERY OK source="settings" db=0.2ms idle=133.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 [] 14:41:05.804 [debug] QUERY OK source="settings" db=0.2ms idle=92.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 [] 14:41:05.804 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.805 [error] #PID<0.10958.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 30) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /update.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 /update (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/update.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 30, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10958.0>, params: %{}, path_info: ["update"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/update.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDVbt4dHG0TEAAmCB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/update.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 30, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /update (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/update.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 30, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10958.0>, params: %{}, path_info: ["update"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/update.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDVbt4dHG0TEAAmCB"} ], 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/ (truncated) 14:41:05.843 [info] GET /1337.php 14:41:05.843 [debug] QUERY OK source="settings" db=0.2ms idle=131.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 [] 14:41:05.844 [debug] QUERY OK source="settings" db=0.2ms idle=104.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 [] 14:41:05.844 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.844 [error] #PID<0.10959.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 31) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /1337.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 /1337 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/1337.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 31, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10959.0>, params: %{}, path_info: ["1337"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/1337.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDVlPcG3BzjgAAmDB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/1337.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 31, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /1337 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/1337.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 31, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10959.0>, params: %{}, path_info: ["1337"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/1337.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDVlPcG3BzjgAAmDB"} ], 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", (truncated) 14:41:05.879 [info] GET /098.php 14:41:05.880 [debug] QUERY OK source="settings" db=0.2ms idle=139.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 [] 14:41:05.880 [debug] QUERY OK source="settings" db=0.2ms idle=76.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 [] 14:41:05.880 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.881 [error] #PID<0.10960.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 32) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /098.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 /098 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/098.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 32, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10960.0>, params: %{}, path_info: ["098"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/098.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDVt695O-2GMAAmEB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/098.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 32, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /098 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/098.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 32, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10960.0>, params: %{}, path_info: ["098"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/098.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDVt695O-2GMAAmEB"} ], 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] (truncated) 14:41:05.912 [info] GET /k.php 14:41:05.912 [debug] QUERY OK source="settings" db=0.2ms idle=108.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 [] 14:41:05.913 [debug] QUERY OK source="settings" db=0.3ms idle=69.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 [] 14:41:05.913 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:05.914 [error] #PID<0.10961.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 33) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /k.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 /k (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/k.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 33, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10961.0>, params: %{}, path_info: ["k"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/k.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDV1tW5oR8jkAAmFB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/k.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 33, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /k (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/k.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 33, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10961.0>, params: %{}, path_info: ["k"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/k.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDV1tW5oR8jkAAmFB"} ], 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]}, {Pinchfla (truncated) 14:41:06.013 [info] GET /alfa123.php 14:41:06.014 [debug] QUERY OK source="settings" db=0.2ms idle=169.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 [] 14:41:06.014 [debug] QUERY OK source="settings" db=0.2ms idle=134.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 [] 14:41:06.014 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.015 [error] #PID<0.10962.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 34) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /alfa123.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 /alfa123 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alfa123.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 34, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10962.0>, params: %{}, path_info: ["alfa123"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/alfa123.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDWN4KdUkm98AAmGB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alfa123.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 34, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /alfa123 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alfa123.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 34, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10962.0>, params: %{}, path_info: ["alfa123"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/alfa123.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDWN4KdUkm98AAmGB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/ph (truncated) 14:41:06.046 [info] GET /wp.php 14:41:06.047 [debug] QUERY OK source="settings" db=0.2ms idle=166.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 [] 14:41:06.047 [debug] QUERY OK source="settings" db=0.2ms idle=134.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 [] 14:41:06.048 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.048 [error] #PID<0.10963.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 35) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp.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 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 35, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10963.0>, params: %{}, path_info: ["wp"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDWVzNTGwQGUAAmHB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 35, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 35, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10963.0>, params: %{}, path_info: ["wp"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDWVzNTGwQGUAAmHB"} ], 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]}, (truncated) 14:41:06.085 [info] GET /xxx.php 14:41:06.087 [debug] QUERY OK source="settings" db=1.1ms idle=172.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 [] 14:41:06.087 [debug] QUERY OK source="settings" db=0.3ms idle=73.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 [] 14:41:06.088 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.088 [error] #PID<0.10964.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 36) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /xxx.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 /xxx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xxx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 36, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10964.0>, params: %{}, path_info: ["xxx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xxx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDWfIknM_F_YAAmIB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xxx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 36, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /xxx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xxx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 36, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10964.0>, params: %{}, path_info: ["xxx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xxx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDWfIknM_F_YAAmIB"} ], 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] (truncated) 14:41:06.118 [info] GET /wpx.php 14:41:06.119 [debug] QUERY OK source="settings" db=0.3ms idle=104.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 [] 14:41:06.119 [debug] QUERY OK source="settings" db=0.3ms 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 [] 14:41:06.120 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.120 [error] #PID<0.10965.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 37) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wpx.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 /wpx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wpx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 37, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10965.0>, params: %{}, path_info: ["wpx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wpx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDWm6fVt-LYcAAmJB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wpx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 37, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wpx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wpx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 37, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10965.0>, params: %{}, path_info: ["wpx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wpx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDWm6fVt-LYcAAmJB"} ], 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] (truncated) 14:41:06.150 [info] GET /defau1t.php 14:41:06.151 [debug] QUERY OK source="settings" db=0.2ms idle=103.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 [] 14:41:06.151 [debug] QUERY OK source="settings" db=0.2ms idle=64.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 [] 14:41:06.151 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.152 [error] #PID<0.10966.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 38) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /defau1t.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 /defau1t (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/defau1t.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 38, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10966.0>, params: %{}, path_info: ["defau1t"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/defau1t.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDWuiW_uUzIkAAmKB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/defau1t.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 38, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /defau1t (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/defau1t.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 38, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10966.0>, params: %{}, path_info: ["defau1t"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/defau1t.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDWuiW_uUzIkAAmKB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/ph (truncated) 14:41:06.215 [info] GET /wp-links.php 14:41:06.216 [debug] QUERY OK source="settings" db=0.2ms idle=128.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 [] 14:41:06.217 [debug] QUERY OK source="settings" db=0.2ms idle=97.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 [] 14:41:06.217 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.217 [error] #PID<0.10967.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 39) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-links.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-links (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-links.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 39, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10967.0>, params: %{}, path_info: ["wp-links"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-links.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDW-I7OinRucAAmLB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-links.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 39, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-links (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-links.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 39, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10967.0>, params: %{}, path_info: ["wp-links"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-links.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDW-I7OinRucAAmLB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: (truncated) 14:41:06.247 [info] GET /qindex.php 14:41:06.248 [debug] QUERY OK source="settings" db=0.2ms idle=128.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 [] 14:41:06.248 [debug] QUERY OK source="settings" db=0.2ms idle=97.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 [] 14:41:06.249 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.249 [error] #PID<0.10968.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 40) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /qindex.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 /qindex (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/qindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 40, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10968.0>, params: %{}, path_info: ["qindex"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/qindex.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDXFs4JXbbK0AAmMB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/qindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 40, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /qindex (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/qindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 40, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10968.0>, params: %{}, path_info: ["qindex"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/qindex.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDXFs4JXbbK0AAmMB"} ], 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/ (truncated) 14:41:06.294 [info] GET /xpwer1.php 14:41:06.295 [debug] QUERY OK source="settings" db=0.2ms idle=143.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 [] 14:41:06.295 [debug] QUERY OK source="settings" db=0.2ms idle=78.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 [] 14:41:06.295 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.296 [error] #PID<0.10969.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 41) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /xpwer1.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 /xpwer1 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xpwer1.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 41, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10969.0>, params: %{}, path_info: ["xpwer1"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xpwer1.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDXQ4h_TlRi4AAmNB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xpwer1.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 41, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /xpwer1 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xpwer1.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 41, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10969.0>, params: %{}, path_info: ["xpwer1"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xpwer1.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDXQ4h_TlRi4AAmNB"} ], 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/ (truncated) 14:41:06.330 [info] GET /owl.php 14:41:06.331 [debug] QUERY OK source="settings" db=0.2ms idle=113.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 [] 14:41:06.331 [debug] QUERY OK source="settings" db=0.2ms idle=82.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 [] 14:41:06.331 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.332 [error] #PID<0.10970.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 42) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /owl.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 /owl (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/owl.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 42, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10970.0>, params: %{}, path_info: ["owl"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/owl.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDXZcayldwEIAAmOB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/owl.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 42, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /owl (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/owl.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 42, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10970.0>, params: %{}, path_info: ["owl"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/owl.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDXZcayldwEIAAmOB"} ], 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] (truncated) 14:41:06.366 [info] GET /act.php 14:41:06.367 [debug] QUERY OK source="settings" db=0.2ms idle=118.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 [] 14:41:06.367 [debug] QUERY OK source="settings" db=0.2ms idle=72.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 [] 14:41:06.368 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.368 [error] #PID<0.10971.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 43) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /act.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 /act (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/act.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 43, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10971.0>, params: %{}, path_info: ["act"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/act.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDXiFqAPNJDYAAmPB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/act.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 43, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /act (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/act.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 43, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10971.0>, params: %{}, path_info: ["act"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/act.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDXiFqAPNJDYAAmPB"} ], 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] (truncated) 14:41:06.420 [info] GET /mari.php 14:41:06.421 [debug] QUERY OK source="settings" db=0.2ms idle=125.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 [] 14:41:06.422 [debug] QUERY OK source="settings" db=0.2ms idle=90.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 [] 14:41:06.422 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.423 [error] #PID<0.10972.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 44) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /mari.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 /mari (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/mari.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 44, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10972.0>, params: %{}, path_info: ["mari"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/mari.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDXvCGXDO7Z0AAmQB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/mari.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 44, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /mari (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/mari.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 44, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10972.0>, params: %{}, path_info: ["mari"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/mari.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDXvCGXDO7Z0AAmQB"} ], 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", (truncated) 14:41:06.455 [info] GET /ups.php 14:41:06.456 [debug] QUERY OK source="settings" db=0.3ms idle=88.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 [] 14:41:06.456 [debug] QUERY OK source="settings" db=0.3ms idle=34.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 [] 14:41:06.457 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.457 [error] #PID<0.10973.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 45) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ups.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 /ups (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ups.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 45, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10973.0>, params: %{}, path_info: ["ups"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ups.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDX3ToLZ7c2YAAmRB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ups.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 45, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ups (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ups.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 45, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10973.0>, params: %{}, path_info: ["ups"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ups.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDX3ToLZ7c2YAAmRB"} ], 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] (truncated) 14:41:06.489 [info] GET /222.php 14:41:06.489 [debug] QUERY OK source="settings" db=0.3ms idle=67.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 [] 14:41:06.490 [debug] QUERY OK source="settings" db=0.2ms idle=41.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 [] 14:41:06.490 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.491 [error] #PID<0.10974.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 46) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /222.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 /222 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/222.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 46, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10974.0>, params: %{}, path_info: ["222"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/222.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDX_Rr7R0P6EAAmSB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/222.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 46, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /222 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/222.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 46, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10974.0>, params: %{}, path_info: ["222"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/222.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDX_Rr7R0P6EAAmSB"} ], 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] (truncated) 14:41:06.518 [info] GET /nee.php 14:41:06.519 [debug] QUERY OK source="settings" db=0.2ms idle=64.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 [] 14:41:06.520 [debug] QUERY OK source="settings" db=0.3ms idle=63.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 [] 14:41:06.520 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.520 [error] #PID<0.10975.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 47) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /nee.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 /nee (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/nee.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 47, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10975.0>, params: %{}, path_info: ["nee"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/nee.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDYGWMExtoAsAAmTB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/nee.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 47, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /nee (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/nee.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 47, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10975.0>, params: %{}, path_info: ["nee"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/nee.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDYGWMExtoAsAAmTB"} ], 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] (truncated) 14:41:06.568 [info] GET /av.php 14:41:06.569 [debug] QUERY OK source="settings" db=0.2ms idle=111.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 [] 14:41:06.569 [debug] QUERY OK source="settings" db=0.2ms idle=79.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 [] 14:41:06.569 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.570 [error] #PID<0.10976.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 48) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /av.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 /av (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/av.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 48, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10976.0>, params: %{}, path_info: ["av"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/av.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDYSLsdfGwpcAAmUB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/av.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 48, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /av (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/av.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 48, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10976.0>, params: %{}, path_info: ["av"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/av.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDYSLsdfGwpcAAmUB"} ], 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]}, (truncated) 14:41:06.603 [info] GET /wp-mt.php 14:41:06.604 [debug] QUERY OK source="settings" db=0.3ms idle=113.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 [] 14:41:06.605 [debug] QUERY OK source="settings" db=0.3ms idle=85.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 [] 14:41:06.605 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.605 [error] #PID<0.10977.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 49) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-mt.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-mt (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-mt.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 49, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10977.0>, params: %{}, path_info: ["wp-mt"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-mt.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDYalsvLNmeMAAmVB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-mt.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 49, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-mt (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-mt.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 49, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10977.0>, params: %{}, path_info: ["wp-mt"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-mt.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDYalsvLNmeMAAmVB"} ], 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/ro (truncated) 14:41:06.634 [info] GET /ws55.php 14:41:06.634 [debug] QUERY OK source="settings" db=0.3ms idle=114.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 [] 14:41:06.635 [debug] QUERY OK source="settings" db=0.3ms idle=65.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 [] 14:41:06.635 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.636 [error] #PID<0.10978.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 50) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ws55.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 /ws55 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ws55.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 50, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10978.0>, params: %{}, path_info: ["ws55"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ws55.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDYh3MLHymbMAAmWB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ws55.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 50, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ws55 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ws55.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 50, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10978.0>, params: %{}, path_info: ["ws55"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ws55.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDYh3MLHymbMAAmWB"} ], 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", (truncated) 14:41:06.666 [info] GET /Marvins.php 14:41:06.667 [debug] QUERY OK source="settings" db=0.3ms idle=97.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 [] 14:41:06.667 [debug] QUERY OK source="settings" db=0.2ms idle=62.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 [] 14:41:06.667 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.668 [error] #PID<0.10979.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 51) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /Marvins.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 /Marvins (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/Marvins.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 51, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10979.0>, params: %{}, path_info: ["Marvins"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/Marvins.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDYph09jeq_wAAmXB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/Marvins.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 51, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /Marvins (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/Marvins.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 51, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10979.0>, params: %{}, path_info: ["Marvins"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/Marvins.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDYph09jeq_wAAmXB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/ph (truncated) 14:41:06.714 [info] GET /letter.php 14:41:06.715 [debug] QUERY OK source="settings" db=0.3ms idle=109.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 [] 14:41:06.715 [debug] QUERY OK source="settings" db=0.3ms idle=80.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 [] 14:41:06.715 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.716 [error] #PID<0.10980.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 52) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /letter.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 /letter (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/letter.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 52, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10980.0>, params: %{}, path_info: ["letter"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/letter.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDY0-MjqcWNgAAmYB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/letter.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 52, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /letter (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/letter.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 52, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10980.0>, params: %{}, path_info: ["letter"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/letter.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDY0-MjqcWNgAAmYB"} ], 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/ (truncated) 14:41:06.740 [info] GET /if.php 14:41:06.741 [debug] QUERY OK source="settings" db=0.3ms idle=105.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 [] 14:41:06.742 [debug] QUERY OK source="settings" db=0.3ms idle=74.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 [] 14:41:06.742 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.742 [error] #PID<0.10981.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 53) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /if.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 /if (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/if.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 53, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10981.0>, params: %{}, path_info: ["if"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/if.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDY7TuV2d9jEAAmZB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/if.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 53, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /if (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/if.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 53, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10981.0>, params: %{}, path_info: ["if"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/if.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDY7TuV2d9jEAAmZB"} ], 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]}, (truncated) 14:41:06.774 [info] GET /ccs.php 14:41:06.775 [debug] QUERY OK source="settings" db=0.3ms idle=107.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 [] 14:41:06.776 [debug] QUERY OK source="settings" db=0.3ms idle=60.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 [] 14:41:06.776 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.776 [error] #PID<0.10982.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 54) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ccs.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 /ccs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ccs.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 54, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10982.0>, params: %{}, path_info: ["ccs"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ccs.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZDbcAfKErgAAmaB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ccs.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 54, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ccs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ccs.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 54, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10982.0>, params: %{}, path_info: ["ccs"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ccs.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZDbcAfKErgAAmaB"} ], 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] (truncated) 14:41:06.805 [info] GET /wiki/index.php 14:41:06.805 [debug] QUERY OK source="settings" db=0.3ms idle=89.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 [] 14:41:06.806 [debug] QUERY OK source="settings" db=0.2ms idle=64.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 [] 14:41:06.806 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.807 [error] #PID<0.10983.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 55) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wiki/index.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 /wiki/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wiki/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 55, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10983.0>, params: %{}, path_info: ["wiki", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wiki/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZKm5_PopAoAAmbB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wiki/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 55, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wiki/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wiki/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 55, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10983.0>, params: %{}, path_info: ["wiki", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wiki/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZKm5_PopAoAAmbB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, (truncated) 14:41:06.839 [info] GET /jane.php 14:41:06.839 [debug] QUERY OK source="settings" db=0.3ms idle=97.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 [] 14:41:06.840 [debug] QUERY OK source="settings" db=0.3ms idle=64.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 [] 14:41:06.840 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.841 [error] #PID<0.10984.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 56) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /jane.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 /jane (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/jane.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 56, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10984.0>, params: %{}, path_info: ["jane"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/jane.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZSuNDdfM9sAAmcB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/jane.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 56, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /jane (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/jane.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 56, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10984.0>, params: %{}, path_info: ["jane"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/jane.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZSuNDdfM9sAAmcB"} ], 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", (truncated) 14:41:06.874 [info] GET /snd.php 14:41:06.874 [debug] QUERY OK source="settings" db=0.3ms idle=98.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 [] 14:41:06.875 [debug] QUERY OK source="settings" db=0.2ms idle=69.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 [] 14:41:06.875 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.875 [error] #PID<0.10985.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 57) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /snd.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 /snd (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/snd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 57, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10985.0>, params: %{}, path_info: ["snd"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/snd.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZbDLvIKrREAAmdB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/snd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 57, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /snd (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/snd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 57, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10985.0>, params: %{}, path_info: ["snd"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/snd.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZbDLvIKrREAAmdB"} ], 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] (truncated) 14:41:06.907 [info] GET /xo.php 14:41:06.908 [debug] QUERY OK source="settings" db=0.3ms idle=101.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 [] 14:41:06.908 [debug] QUERY OK source="settings" db=0.3ms idle=68.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 [] 14:41:06.909 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.909 [error] #PID<0.10986.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 58) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /xo.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 /xo (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xo.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 58, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10986.0>, params: %{}, path_info: ["xo"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xo.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZjCLtYNO3QAAmeB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xo.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 58, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /xo (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xo.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 58, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10986.0>, params: %{}, path_info: ["xo"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xo.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZjCLtYNO3QAAmeB"} ], 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]}, (truncated) 14:41:06.941 [info] GET /7yn.php 14:41:06.942 [debug] QUERY OK source="settings" db=0.3ms 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 [] 14:41:06.942 [debug] QUERY OK source="settings" db=0.3ms idle=67.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 [] 14:41:06.943 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:06.943 [error] #PID<0.10987.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 59) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /7yn.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 /7yn (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/7yn.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 59, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10987.0>, params: %{}, path_info: ["7yn"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/7yn.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZrLv89wPDMAAmfB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/7yn.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 59, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /7yn (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/7yn.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 59, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10987.0>, params: %{}, path_info: ["7yn"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/7yn.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDZrLv89wPDMAAmfB"} ], 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] (truncated) 14:41:07.049 [info] GET /wp2.php 14:41:07.050 [debug] QUERY OK source="settings" db=0.2ms idle=174.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 [] 14:41:07.050 [debug] QUERY OK source="settings" db=0.2ms idle=142.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 [] 14:41:07.051 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.051 [error] #PID<0.10988.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 60) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp2.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 /wp2 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 60, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10988.0>, params: %{}, path_info: ["wp2"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp2.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDaE9bjosBfQAAmgB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 60, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp2 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp2.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 60, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10988.0>, params: %{}, path_info: ["wp2"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp2.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDaE9bjosBfQAAmgB"} ], 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] (truncated) 14:41:07.087 [info] GET /fw.php 14:41:07.088 [debug] QUERY OK source="settings" db=0.2ms idle=179.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 [] 14:41:07.089 [debug] QUERY OK source="settings" db=0.3ms idle=146.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 [] 14:41:07.089 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.089 [error] #PID<0.10989.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 61) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /fw.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 /fw (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/fw.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 61, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10989.0>, params: %{}, path_info: ["fw"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/fw.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDaOC5fiww2EAAmhB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/fw.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 61, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /fw (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/fw.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 61, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10989.0>, params: %{}, path_info: ["fw"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/fw.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDaOC5fiww2EAAmhB"} ], 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]}, (truncated) 14:41:07.120 [info] GET /thebe.php 14:41:07.121 [debug] QUERY OK source="settings" db=0.2ms idle=178.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 [] 14:41:07.122 [debug] QUERY OK source="settings" db=0.2ms idle=71.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 [] 14:41:07.122 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.122 [error] #PID<0.10990.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 62) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /thebe.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 /thebe (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/thebe.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 62, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10990.0>, params: %{}, path_info: ["thebe"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/thebe.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDaV663QLOgwAAmiB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/thebe.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 62, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /thebe (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/thebe.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 62, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10990.0>, params: %{}, path_info: ["thebe"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/thebe.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDaV663QLOgwAAmiB"} ], 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/ro (truncated) 14:41:07.171 [info] GET /wp-ad.php 14:41:07.172 [debug] QUERY OK source="settings" db=0.2ms idle=121.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 [] 14:41:07.172 [debug] QUERY OK source="settings" db=0.2ms idle=84.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 [] 14:41:07.172 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.173 [error] #PID<0.10991.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 63) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-ad.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-ad (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-ad.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 63, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10991.0>, params: %{}, path_info: ["wp-ad"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-ad.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDaiEUtQM0AwAAmjB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-ad.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 63, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-ad (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-ad.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 63, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10991.0>, params: %{}, path_info: ["wp-ad"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-ad.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDaiEUtQM0AwAAmjB"} ], 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/ro (truncated) 14:41:07.211 [info] GET /rss.php 14:41:07.211 [debug] QUERY OK source="settings" db=0.2ms idle=122.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 [] 14:41:07.212 [debug] QUERY OK source="settings" db=0.1ms idle=90.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 [] 14:41:07.212 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.212 [error] #PID<0.10992.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 64) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /rss.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 /rss (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rss.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 64, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10992.0>, params: %{}, path_info: ["rss"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/rss.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDarc5gKmG-UAAmkB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rss.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 64, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rss (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rss.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 64, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10992.0>, params: %{}, path_info: ["rss"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/rss.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDarc5gKmG-UAAmkB"} ], 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] (truncated) 14:41:07.248 [info] GET /ect.php 14:41:07.249 [debug] QUERY OK source="settings" db=0.2ms idle=127.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 [] 14:41:07.249 [debug] QUERY OK source="settings" db=0.3ms idle=77.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 [] 14:41:07.250 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.250 [error] #PID<0.10993.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 65) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ect.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 /ect (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ect.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 65, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10993.0>, params: %{}, path_info: ["ect"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ect.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDa0ZrHPsZA4AAmlB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ect.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 65, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ect (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ect.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 65, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10993.0>, params: %{}, path_info: ["ect"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ect.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDa0ZrHPsZA4AAmlB"} ], 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] (truncated) 14:41:07.283 [info] GET /vx.php 14:41:07.283 [debug] QUERY OK source="settings" db=0.2ms idle=110.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 [] 14:41:07.284 [debug] QUERY OK source="settings" db=0.3ms idle=71.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 [] 14:41:07.284 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.284 [error] #PID<0.10994.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 66) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /vx.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 /vx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/vx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 66, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10994.0>, params: %{}, path_info: ["vx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/vx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDa8jhhUj2lUAAmmB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/vx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 66, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /vx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/vx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 66, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10994.0>, params: %{}, path_info: ["vx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/vx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDa8jhhUj2lUAAmmB"} ], 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]}, (truncated) 14:41:07.317 [info] GET /mrjn.php 14:41:07.318 [debug] QUERY OK source="settings" db=0.3ms idle=105.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 [] 14:41:07.318 [debug] QUERY OK source="settings" db=0.3ms idle=68.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 [] 14:41:07.318 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.319 [error] #PID<0.10995.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 67) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /mrjn.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 /mrjn (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/mrjn.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 67, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10995.0>, params: %{}, path_info: ["mrjn"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/mrjn.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbEvkl3G9-oAAmnB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/mrjn.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 67, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /mrjn (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/mrjn.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 67, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10995.0>, params: %{}, path_info: ["mrjn"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/mrjn.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbEvkl3G9-oAAmnB"} ], 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", (truncated) 14:41:07.359 [info] GET /update/f35.php 14:41:07.360 [debug] QUERY OK source="settings" db=0.3ms idle=110.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 [] 14:41:07.361 [debug] QUERY OK source="settings" db=0.3ms idle=77.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 [] 14:41:07.361 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.361 [error] #PID<0.10996.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 68) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /update/f35.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 /update/f35 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/update/f35.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 68, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10996.0>, params: %{}, path_info: ["update", "f35"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/update/f35.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbO3J0y0ab0AAmoB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/update/f35.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 68, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /update/f35 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/update/f35.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 68, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10996.0>, params: %{}, path_info: ["update", "f35"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/update/f35.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbO3J0y0ab0AAmoB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, (truncated) 14:41:07.394 [info] GET /wp-admin/maint/about.php 14:41:07.394 [debug] QUERY OK source="settings" db=0.3ms idle=110.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 [] 14:41:07.395 [debug] QUERY OK source="settings" db=0.3ms idle=77.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 [] 14:41:07.395 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.396 [error] #PID<0.10997.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 69) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-admin/maint/about.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-admin/maint/about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-admin/maint/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 69, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10997.0>, params: %{}, path_info: ["wp-admin", "maint", "about"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-admin/maint/about.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbXEKV4BIUcAAmpB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-admin/maint/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 69, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-admin/maint/about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-admin/maint/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 69, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10997.0>, params: %{}, path_info: ["wp-admin", "maint", "about"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-admin/maint/about.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbXEKV4BIUcAAmpB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, (truncated) 14:41:07.421 [info] GET /.php 14:41:07.422 [debug] QUERY OK source="settings" db=0.3ms idle=103.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 [] 14:41:07.422 [debug] QUERY OK source="settings" db=0.3ms idle=62.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 [] 14:41:07.423 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.423 [error] #PID<0.10998.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 70) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /.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 / (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 70, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10998.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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbdnern5yK0AAmqB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 70, 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 70, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10998.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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbdnern5yK0AAmqB"} ], 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.Endpo (truncated) 14:41:07.457 [info] GET /go.php 14:41:07.458 [debug] QUERY OK source="settings" db=0.3ms idle=62.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 [] 14:41:07.459 [debug] QUERY OK source="settings" db=0.3ms idle=36.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 [] 14:41:07.459 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.459 [error] #PID<0.10999.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 71) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /go.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 /go (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/go.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 71, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10999.0>, params: %{}, path_info: ["go"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/go.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbmQQjbLinQAAmrB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/go.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 71, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /go (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/go.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 71, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.10999.0>, params: %{}, path_info: ["go"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/go.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbmQQjbLinQAAmrB"} ], 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]}, (truncated) 14:41:07.492 [info] GET /ph33w.php 14:41:07.493 [debug] QUERY OK source="settings" db=0.3ms idle=69.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 [] 14:41:07.493 [debug] QUERY OK source="settings" db=0.2ms 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 [] 14:41:07.493 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.494 [error] #PID<0.11000.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 72) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ph33w.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 /ph33w (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ph33w.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 72, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11000.0>, params: %{}, path_info: ["ph33w"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ph33w.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbueY1ahEm4AAmsB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ph33w.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 72, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ph33w (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ph33w.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 72, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11000.0>, params: %{}, path_info: ["ph33w"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ph33w.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDbueY1ahEm4AAmsB"} ], 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/ro (truncated) 14:41:07.526 [info] GET /.well-known/admin.php 14:41:07.526 [debug] QUERY OK source="settings" db=0.2ms idle=69.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 [] 14:41:07.527 [debug] QUERY OK source="settings" db=0.2ms idle=68.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 [] 14:41:07.527 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.527 [error] #PID<0.11001.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 73) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /.well-known/admin.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 /.well-known/admin (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.well-known/admin.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 73, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11001.0>, params: %{}, path_info: [".well-known", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/.well-known/admin.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDb2i0xFTGnUAAmtB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.well-known/admin.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 73, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.well-known/admin (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.well-known/admin.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 73, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11001.0>, params: %{}, path_info: [".well-known", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/.well-known/admin.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDb2i0xFTGnUAAmtB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router (truncated) 14:41:07.607 [info] GET /s_e.php 14:41:07.607 [debug] QUERY OK source="settings" db=0.2ms idle=148.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 [] 14:41:07.608 [debug] QUERY OK source="settings" db=0.2ms idle=114.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 [] 14:41:07.608 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.608 [error] #PID<0.11002.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 74) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /s_e.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 /s_e (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/s_e.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 74, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11002.0>, params: %{}, path_info: ["s_e"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/s_e.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDcJ0cattiZwAAmuB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/s_e.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 74, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /s_e (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/s_e.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 74, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11002.0>, params: %{}, path_info: ["s_e"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/s_e.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDcJ0cattiZwAAmuB"} ], 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] (truncated) 14:41:07.646 [info] GET /jsond.php 14:41:07.647 [debug] QUERY OK source="settings" db=0.2ms idle=153.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 [] 14:41:07.648 [debug] QUERY OK source="settings" db=0.3ms idle=120.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 [] 14:41:07.648 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.648 [error] #PID<0.11003.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 75) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /jsond.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 /jsond (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/jsond.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 75, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11003.0>, params: %{}, path_info: ["jsond"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/jsond.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDcTVIaU9yKMAAmvB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/jsond.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 75, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /jsond (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/jsond.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 75, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11003.0>, params: %{}, path_info: ["jsond"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/jsond.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDcTVIaU9yKMAAmvB"} ], 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/ro (truncated) 14:41:07.680 [info] GET /unix.php 14:41:07.680 [debug] QUERY OK source="settings" db=0.2ms idle=153.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 [] 14:41:07.681 [debug] QUERY OK source="settings" db=0.3ms idle=73.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 [] 14:41:07.681 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.682 [error] #PID<0.11004.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 76) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /unix.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 /unix (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/unix.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 76, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11004.0>, params: %{}, path_info: ["unix"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/unix.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDcbN0Jf7aQEAAmwB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/unix.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 76, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /unix (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/unix.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 76, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11004.0>, params: %{}, path_info: ["unix"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/unix.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDcbN0Jf7aQEAAmwB"} ], 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", (truncated) 14:41:07.731 [info] GET /wp-seo-main.php 14:41:07.731 [debug] QUERY OK source="settings" db=0.3ms idle=123.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 [] 14:41:07.732 [debug] QUERY OK source="settings" db=0.2ms idle=84.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 [] 14:41:07.732 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.733 [error] #PID<0.11005.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 77) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-seo-main.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-seo-main (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-seo-main.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 77, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11005.0>, params: %{}, path_info: ["wp-seo-main"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-seo-main.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDcnZ-RXd67cAAmxB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-seo-main.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 77, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-seo-main (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-seo-main.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 77, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11005.0>, params: %{}, path_info: ["wp-seo-main"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-seo-main.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDcnZ-RXd67cAAmxB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Rout (truncated) 14:41:07.773 [info] GET /init.php 14:41:07.774 [debug] QUERY OK source="settings" db=0.2ms idle=125.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 [] 14:41:07.774 [debug] QUERY OK source="settings" db=0.2ms idle=93.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 [] 14:41:07.774 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.775 [error] #PID<0.11006.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 78) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /init.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 /init (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/init.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 78, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11006.0>, params: %{}, path_info: ["init"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/init.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDcxhR_-sz4MAAmyB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/init.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 78, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /init (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/init.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 78, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11006.0>, params: %{}, path_info: ["init"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/init.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDcxhR_-sz4MAAmyB"} ], 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", (truncated) 14:41:07.807 [info] GET /olu.php 14:41:07.808 [debug] QUERY OK source="settings" db=0.2ms idle=126.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 [] 14:41:07.808 [debug] QUERY OK source="settings" db=0.2ms idle=76.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 [] 14:41:07.809 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.809 [error] #PID<0.11007.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 79) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /olu.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 /olu (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/olu.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 79, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11007.0>, params: %{}, path_info: ["olu"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/olu.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDc5q-tfgE-YAAmzB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/olu.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 79, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /olu (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/olu.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 79, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11007.0>, params: %{}, path_info: ["olu"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/olu.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDc5q-tfgE-YAAmzB"} ], 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] (truncated) 14:41:07.842 [info] GET /fox.php 14:41:07.842 [debug] QUERY OK source="settings" db=0.2ms idle=110.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 [] 14:41:07.843 [debug] QUERY OK source="settings" db=0.2ms idle=68.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 [] 14:41:07.843 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.843 [error] #PID<0.11008.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 80) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /fox.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 /fox (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/fox.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 80, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11008.0>, params: %{}, path_info: ["fox"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/fox.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdB43xt4DBkAAm0B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/fox.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 80, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /fox (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/fox.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 80, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11008.0>, params: %{}, path_info: ["fox"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/fox.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdB43xt4DBkAAm0B"} ], 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] (truncated) 14:41:07.910 [info] GET /ol.php 14:41:07.910 [debug] QUERY OK source="settings" db=0.2ms idle=135.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 [] 14:41:07.911 [debug] QUERY OK source="settings" db=0.3ms idle=102.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 [] 14:41:07.911 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.912 [error] #PID<0.11009.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 81) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ol.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 /ol (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ol.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 81, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11009.0>, params: %{}, path_info: ["ol"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ol.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdSFFYdTytgAAm1B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ol.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 81, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ol (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ol.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 81, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11009.0>, params: %{}, path_info: ["ol"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ol.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdSFFYdTytgAAm1B"} ], 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]}, (truncated) 14:41:07.944 [info] GET /xl.php 14:41:07.945 [debug] QUERY OK source="settings" db=0.2ms idle=136.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 [] 14:41:07.945 [debug] QUERY OK source="settings" db=0.3ms idle=102.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 [] 14:41:07.945 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.946 [error] #PID<0.11010.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 82) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /xl.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 /xl (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xl.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 82, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11010.0>, params: %{}, path_info: ["xl"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xl.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdaRqRT3mpsAAm2B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xl.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 82, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /xl (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xl.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 82, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11010.0>, params: %{}, path_info: ["xl"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xl.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdaRqRT3mpsAAm2B"} ], 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]}, (truncated) 14:41:07.978 [info] GET /error.php 14:41:07.979 [debug] QUERY OK source="settings" db=0.2ms idle=135.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 [] 14:41:07.979 [debug] QUERY OK source="settings" db=0.3ms idle=68.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 [] 14:41:07.980 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:07.980 [error] #PID<0.11011.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 83) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /error.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 /error (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/error.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 83, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11011.0>, params: %{}, path_info: ["error"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/error.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdiadLYyPdQAAm3B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/error.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 83, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /error (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/error.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 83, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11011.0>, params: %{}, path_info: ["error"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/error.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdiadLYyPdQAAm3B"} ], 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/ro (truncated) 14:41:08.005 [info] GET /ajax.php 14:41:08.006 [debug] QUERY OK source="settings" db=0.2ms idle=94.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 [] 14:41:08.006 [debug] QUERY OK source="settings" db=0.2ms idle=60.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 [] 14:41:08.006 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.007 [error] #PID<0.11012.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 84) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ajax.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 /ajax (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ajax.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 84, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11012.0>, params: %{}, path_info: ["ajax"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ajax.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdoyWMBMxDYAAm4B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ajax.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 84, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ajax (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ajax.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 84, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11012.0>, params: %{}, path_info: ["ajax"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ajax.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdoyWMBMxDYAAm4B"} ], 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", (truncated) 14:41:08.043 [info] GET /Gel.php 14:41:08.044 [debug] QUERY OK source="settings" db=0.2ms idle=98.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 [] 14:41:08.044 [debug] QUERY OK source="settings" db=0.2ms idle=65.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 [] 14:41:08.044 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.045 [error] #PID<0.11013.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 85) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /Gel.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 /Gel (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/Gel.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 85, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11013.0>, params: %{}, path_info: ["Gel"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/Gel.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdx4jBmF-OMAAm5B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/Gel.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 85, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /Gel (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/Gel.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 85, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11013.0>, params: %{}, path_info: ["Gel"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/Gel.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDdx4jBmF-OMAAm5B"} ], 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] (truncated) 14:41:08.107 [info] GET /yuuki.php 14:41:08.107 [debug] QUERY OK source="settings" db=0.2ms idle=127.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 [] 14:41:08.108 [debug] QUERY OK source="settings" db=0.2ms idle=101.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 [] 14:41:08.108 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.109 [error] #PID<0.11014.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 86) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /yuuki.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 /yuuki (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/yuuki.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 86, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11014.0>, params: %{}, path_info: ["yuuki"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/yuuki.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDeBEqj_r3s0AAm6B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/yuuki.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 86, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /yuuki (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/yuuki.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 86, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11014.0>, params: %{}, path_info: ["yuuki"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/yuuki.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDeBEqj_r3s0AAm6B"} ], 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/ro (truncated) 14:41:08.145 [info] GET /xx.php 14:41:08.146 [debug] QUERY OK source="settings" db=0.2ms idle=139.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 [] 14:41:08.146 [debug] QUERY OK source="settings" db=0.3ms idle=102.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 [] 14:41:08.147 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.147 [error] #PID<0.11015.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 87) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /xx.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 /xx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 87, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11015.0>, params: %{}, path_info: ["xx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDeKQo74h--MAAm7B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 87, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /xx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 87, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11015.0>, params: %{}, path_info: ["xx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDeKQo74h--MAAm7B"} ], 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]}, (truncated) 14:41:08.183 [info] GET /V5.php 14:41:08.183 [debug] QUERY OK source="settings" db=0.3ms idle=138.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 [] 14:41:08.184 [debug] QUERY OK source="settings" db=0.2ms idle=76.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 [] 14:41:08.184 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.184 [error] #PID<0.11016.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 88) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /V5.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 /V5 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/V5.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 88, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11016.0>, params: %{}, path_info: ["V5"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/V5.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDeTL4Ge4rEcAAm8B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/V5.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 88, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /V5 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/V5.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 88, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11016.0>, params: %{}, path_info: ["V5"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/V5.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDeTL4Ge4rEcAAm8B"} ], 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]}, (truncated) 14:41:08.209 [info] GET /lang.php 14:41:08.209 [debug] QUERY OK source="settings" db=0.2ms idle=101.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 [] 14:41:08.210 [debug] QUERY OK source="settings" db=0.2ms idle=63.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 [] 14:41:08.210 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.210 [error] #PID<0.11017.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 89) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /lang.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 /lang (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lang.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 89, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11017.0>, params: %{}, path_info: ["lang"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/lang.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDeZYzCEg1c4AAm9B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lang.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 89, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /lang (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lang.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 89, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11017.0>, params: %{}, path_info: ["lang"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/lang.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDeZYzCEg1c4AAm9B"} ], 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", (truncated) 14:41:08.243 [info] GET /index/function.php 14:41:08.244 [debug] QUERY OK source="settings" db=0.2ms idle=97.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 [] 14:41:08.244 [debug] QUERY OK source="settings" db=0.2ms idle=60.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 [] 14:41:08.245 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.245 [error] #PID<0.11018.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 90) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /index/function.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 /index/function (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index/function.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 90, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11018.0>, params: %{}, path_info: ["index", "function"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/index/function.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDeho2YX-bywAAm-B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index/function.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 90, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /index/function (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/index/function.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 90, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11018.0>, params: %{}, path_info: ["index", "function"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/index/function.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDeho2YX-bywAAm-B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, (truncated) 14:41:08.276 [info] GET /class19.php 14:41:08.277 [debug] QUERY OK source="settings" db=0.2ms idle=92.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 [] 14:41:08.278 [debug] QUERY OK source="settings" db=0.2ms idle=67.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 [] 14:41:08.278 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.278 [error] #PID<0.11019.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 91) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /class19.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 /class19 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/class19.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 91, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11019.0>, params: %{}, path_info: ["class19"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/class19.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDephoipKFKAAAm_B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/class19.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 91, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /class19 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/class19.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 91, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11019.0>, params: %{}, path_info: ["class19"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/class19.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDephoipKFKAAAm_B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/ph (truncated) 14:41:08.311 [info] GET /dk/delete.php 14:41:08.311 [debug] QUERY OK source="settings" db=0.2ms idle=101.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 [] 14:41:08.312 [debug] QUERY OK source="settings" db=0.2ms idle=67.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 [] 14:41:08.312 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.312 [error] #PID<0.11020.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 92) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /dk/delete.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 /dk/delete (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dk/delete.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 92, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11020.0>, params: %{}, path_info: ["dk", "delete"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/dk/delete.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDexq0QfDF18AAnAB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dk/delete.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 92, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /dk/delete (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/dk/delete.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 92, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11020.0>, params: %{}, path_info: ["dk", "delete"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/dk/delete.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDexq0QfDF18AAnAB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, (truncated) 14:41:08.345 [info] GET /11index.php 14:41:08.346 [debug] QUERY OK source="settings" db=0.2ms idle=101.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 [] 14:41:08.347 [debug] QUERY OK source="settings" db=0.3ms idle=69.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 [] 14:41:08.347 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.347 [error] #PID<0.11021.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 93) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /11index.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 /11index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/11index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 93, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11021.0>, params: %{}, path_info: ["11index"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/11index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDe5-uCgHUbwAAnBB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/11index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 93, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /11index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/11index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 93, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11021.0>, params: %{}, path_info: ["11index"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/11index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDe5-uCgHUbwAAnBB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/ph (truncated) 14:41:08.396 [info] GET /meta.php 14:41:08.397 [debug] QUERY OK source="settings" db=0.2ms idle=118.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 [] 14:41:08.397 [debug] QUERY OK source="settings" db=0.2ms idle=85.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 [] 14:41:08.397 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.398 [error] #PID<0.11022.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 94) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /meta.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 /meta (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/meta.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 94, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11022.0>, params: %{}, path_info: ["meta"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/meta.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDfGBS8__BWQAAnCB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/meta.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 94, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /meta (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/meta.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 94, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11022.0>, params: %{}, path_info: ["meta"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/meta.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDfGBS8__BWQAAnCB"} ], 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", (truncated) 14:41:08.430 [info] GET /db.php 14:41:08.431 [debug] QUERY OK source="settings" db=0.2ms idle=119.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 [] 14:41:08.432 [debug] QUERY OK source="settings" db=0.2ms idle=85.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 [] 14:41:08.432 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.432 [error] #PID<0.11023.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 95) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /db.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 /db (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/db.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 95, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11023.0>, params: %{}, path_info: ["db"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/db.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDfOQRkNpMNAAAnDB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/db.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 95, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /db (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/db.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 95, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11023.0>, params: %{}, path_info: ["db"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/db.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDfOQRkNpMNAAAnDB"} ], 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]}, (truncated) 14:41:08.473 [info] GET /bless14.php 14:41:08.474 [debug] QUERY OK source="settings" db=0.2ms idle=76.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 [] 14:41:08.475 [debug] QUERY OK source="settings" db=0.3ms idle=43.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 [] 14:41:08.475 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.475 [error] #PID<0.11024.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 96) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /bless14.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 /bless14 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bless14.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 96, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11024.0>, params: %{}, path_info: ["bless14"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/bless14.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDfYgR3weWvAAAnEB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bless14.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 96, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /bless14 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bless14.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 96, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11024.0>, params: %{}, path_info: ["bless14"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/bless14.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDfYgR3weWvAAAnEB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/ph (truncated) 14:41:08.561 [info] GET /lab.php 14:41:08.562 [debug] QUERY OK source="settings" db=0.2ms idle=129.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 [] 14:41:08.562 [debug] QUERY OK source="settings" db=0.3ms idle=110.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 [] 14:41:08.563 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.563 [error] #PID<0.11025.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 97) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /lab.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 /lab (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lab.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 97, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11025.0>, params: %{}, path_info: ["lab"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/lab.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDftZrbMhuHoAAnFB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lab.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 97, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /lab (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lab.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 97, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11025.0>, params: %{}, path_info: ["lab"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/lab.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDftZrbMhuHoAAnFB"} ], 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] (truncated) 14:41:08.613 [info] GET /nyan.php 14:41:08.613 [debug] QUERY OK source="settings" db=0.2ms idle=154.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 [] 14:41:08.614 [debug] QUERY OK source="settings" db=0.2ms idle=139.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 [] 14:41:08.614 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.614 [error] #PID<0.11026.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 98) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /nyan.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 /nyan (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/nyan.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 98, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11026.0>, params: %{}, path_info: ["nyan"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/nyan.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDf5r8J78IC4AAnGB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/nyan.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 98, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /nyan (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/nyan.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 98, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11026.0>, params: %{}, path_info: ["nyan"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/nyan.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDf5r8J78IC4AAnGB"} ], 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", (truncated) 14:41:08.727 [info] GET /wso1.php 14:41:08.728 [debug] QUERY OK source="settings" db=0.3ms idle=252.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 [] 14:41:08.728 [debug] QUERY OK source="settings" db=0.3ms idle=165.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 [] 14:41:08.728 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.729 [error] #PID<0.11027.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 99) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wso1.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 /wso1 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wso1.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 99, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11027.0>, params: %{}, path_info: ["wso1"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wso1.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDgU5GEa1Ix0AAnHB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wso1.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 99, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wso1 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wso1.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 99, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11027.0>, params: %{}, path_info: ["wso1"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wso1.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDgU5GEa1Ix0AAnHB"} ], 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", (truncated) 14:41:08.760 [info] GET /V3.php 14:41:08.760 [debug] QUERY OK source="settings" db=0.3ms idle=197.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 [] 14:41:08.761 [debug] QUERY OK source="settings" db=0.2ms idle=147.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 [] 14:41:08.761 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.762 [error] #PID<0.11028.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 100) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /V3.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 /V3 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/V3.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 100, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11028.0>, params: %{}, path_info: ["V3"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/V3.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDgcxfxKOyFEAAnIB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/V3.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 100, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /V3 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/V3.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 100, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11028.0>, params: %{}, path_info: ["V3"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/V3.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDgcxfxKOyFEAAnIB"} ], 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]}, (truncated) 14:41:08.794 [info] GET /vita.php 14:41:08.795 [debug] QUERY OK source="settings" db=0.3ms idle=180.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 [] 14:41:08.795 [debug] QUERY OK source="settings" db=0.3ms idle=67.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 [] 14:41:08.795 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.796 [error] #PID<0.11029.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 101) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /vita.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 /vita (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/vita.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 101, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11029.0>, params: %{}, path_info: ["vita"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/vita.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDgk6Iy1OsEMAAnJB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/vita.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 101, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /vita (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/vita.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 101, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11029.0>, params: %{}, path_info: ["vita"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/vita.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDgk6Iy1OsEMAAnJB"} ], 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.e (truncated) 14:41:08.828 [info] GET /symlink.php 14:41:08.829 [debug] QUERY OK source="settings" db=0.3ms idle=100.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 [] 14:41:08.829 [debug] QUERY OK source="settings" db=0.3ms idle=68.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 [] 14:41:08.830 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.830 [error] #PID<0.11030.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 102) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /symlink.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 /symlink (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/symlink.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 102, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11030.0>, params: %{}, path_info: ["symlink"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/symlink.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDgtDfWkp1DQAAnKB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/symlink.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 102, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /symlink (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/symlink.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 102, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11030.0>, params: %{}, path_info: ["symlink"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/symlink.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDgtDfWkp1DQAAnKB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"dep (truncated) 14:41:08.862 [info] GET /20.php 14:41:08.863 [debug] QUERY OK source="settings" db=0.2ms 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 [] 14:41:08.863 [debug] QUERY OK source="settings" db=0.2ms idle=68.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 [] 14:41:08.864 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.864 [error] #PID<0.11031.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 103) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /20.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 /20 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/20.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 103, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11031.0>, params: %{}, path_info: ["20"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/20.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDg1NlxqYzVQAAnLB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/20.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 103, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /20 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/20.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 103, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11031.0>, params: %{}, path_info: ["20"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/20.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDg1NlxqYzVQAAnLB"} ], 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]}, (truncated) 14:41:08.897 [info] GET /kk.php 14:41:08.897 [debug] QUERY OK source="settings" db=0.3ms idle=101.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 [] 14:41:08.898 [debug] QUERY OK source="settings" db=0.3ms idle=68.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 [] 14:41:08.898 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.899 [error] #PID<0.11032.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 104) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /kk.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 /kk (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/kk.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 104, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11032.0>, params: %{}, path_info: ["kk"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/kk.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDg9cCg6BwaYAAnMB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/kk.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 104, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /kk (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/kk.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 104, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11032.0>, params: %{}, path_info: ["kk"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/kk.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDg9cCg6BwaYAAnMB"} ], 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]}, (truncated) 14:41:08.934 [info] GET /abcd.php 14:41:08.935 [debug] QUERY OK source="settings" db=0.2ms idle=105.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 [] 14:41:08.936 [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 [] 14:41:08.936 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.936 [error] #PID<0.11033.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 105) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /abcd.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 /abcd (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/abcd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 105, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11033.0>, params: %{}, path_info: ["abcd"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/abcd.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDhGaR7R2ZzsAAnNB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/abcd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 105, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /abcd (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/abcd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 105, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11033.0>, params: %{}, path_info: ["abcd"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/abcd.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDhGaR7R2ZzsAAnNB"} ], 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.e (truncated) 14:41:08.982 [info] GET /styll.php 14:41:08.982 [debug] QUERY OK source="settings" db=0.2ms idle=118.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 [] 14:41:08.983 [debug] QUERY OK source="settings" db=0.3ms 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 [] 14:41:08.983 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:08.983 [error] #PID<0.11034.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 106) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /styll.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 /styll (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/styll.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 106, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11034.0>, params: %{}, path_info: ["styll"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/styll.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDhRrIM7E96oAAnOB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/styll.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 106, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /styll (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/styll.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 106, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11034.0>, params: %{}, path_info: ["styll"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/styll.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDhRrIM7E96oAAnOB"} ], 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/phoeni (truncated) 14:41:09.050 [info] GET /oller.php 14:41:09.050 [debug] QUERY OK source="settings" db=0.3ms idle=152.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 [] 14:41:09.051 [debug] QUERY OK source="settings" db=0.3ms idle=115.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 [] 14:41:09.051 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.052 [error] #PID<0.11035.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 107) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /oller.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 /oller (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/oller.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 107, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11035.0>, params: %{}, path_info: ["oller"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/oller.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDhh7Cgnd9ckAAnPB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/oller.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 107, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /oller (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/oller.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 107, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11035.0>, params: %{}, path_info: ["oller"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/oller.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDhh7Cgnd9ckAAnPB"} ], 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/phoeni (truncated) 14:41:09.076 [info] GET /sd.php 14:41:09.076 [debug] QUERY OK source="settings" db=0.2ms idle=140.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 [] 14:41:09.077 [debug] QUERY OK source="settings" db=0.2ms 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 [] 14:41:09.077 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.077 [error] #PID<0.11036.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 108) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sd.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 /sd (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 108, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11036.0>, params: %{}, path_info: ["sd"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/sd.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDhoFWpzBNzMAAnQB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 108, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sd (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 108, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11036.0>, params: %{}, path_info: ["sd"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/sd.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDhoFWpzBNzMAAnQB"} ], 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]}, (truncated) 14:41:09.110 [info] GET /send.php 14:41:09.110 [debug] QUERY OK source="settings" db=0.2ms idle=127.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 [] 14:41:09.111 [debug] QUERY OK source="settings" db=0.2ms idle=60.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 [] 14:41:09.111 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.112 [error] #PID<0.11037.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 109) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /send.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 /send (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/send.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 109, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11037.0>, params: %{}, path_info: ["send"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/send.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDhwN4mAzkuQAAnRB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/send.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 109, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /send (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/send.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 109, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11037.0>, params: %{}, path_info: ["send"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/send.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDhwN4mAzkuQAAnRB"} ], 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.e (truncated) 14:41:09.144 [info] GET /wp-wso.php 14:41:09.144 [debug] QUERY OK source="settings" db=0.3ms 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 [] 14:41:09.145 [debug] QUERY OK source="settings" db=0.2ms idle=68.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 [] 14:41:09.145 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.145 [error] #PID<0.11038.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 110) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-wso.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-wso (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-wso.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 110, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11038.0>, params: %{}, path_info: ["wp-wso"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-wso.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDh4S9zxF7yIAAnSB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-wso.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 110, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-wso (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-wso.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 110, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11038.0>, params: %{}, path_info: ["wp-wso"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-wso.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDh4S9zxF7yIAAnSB"} ], 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/ (truncated) 14:41:09.194 [info] GET /wso.php 14:41:09.195 [debug] QUERY OK source="settings" db=0.3ms idle=118.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 [] 14:41:09.196 [debug] QUERY OK source="settings" db=0.2ms 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 [] 14:41:09.196 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.197 [error] #PID<0.11039.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 111) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wso.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 /wso (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wso.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 111, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11039.0>, params: %{}, path_info: ["wso"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wso.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDiEZi4gxMjUAAnTB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wso.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 111, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wso (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wso.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 111, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11039.0>, params: %{}, path_info: ["wso"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wso.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDiEZi4gxMjUAAnTB"} ], 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) 14:41:09.240 [info] GET /bb.php 14:41:09.241 [debug] QUERY OK source="settings" db=0.3ms idle=129.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 [] 14:41:09.241 [debug] QUERY OK source="settings" db=0.3ms idle=96.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 [] 14:41:09.241 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.242 [error] #PID<0.11040.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 112) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /bb.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 /bb (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bb.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 112, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11040.0>, params: %{}, path_info: ["bb"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/bb.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDiPNqRY-AykAAnUB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bb.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 112, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /bb (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bb.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 112, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11040.0>, params: %{}, path_info: ["bb"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/bb.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDiPNqRY-AykAAnUB"} ], 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]}, (truncated) 14:41:09.264 [info] GET /sym.php 14:41:09.265 [debug] QUERY OK source="settings" db=0.3ms idle=119.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 [] 14:41:09.266 [debug] QUERY OK source="settings" db=0.2ms idle=69.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 [] 14:41:09.266 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.266 [error] #PID<0.11041.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 113) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sym.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 /sym (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sym.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 113, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11041.0>, params: %{}, path_info: ["sym"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/sym.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDiVEOBsH-awAAnVB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sym.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 113, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sym (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sym.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 113, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11041.0>, params: %{}, path_info: ["sym"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/sym.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDiVEOBsH-awAAnVB"} ], 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) 14:41:09.292 [info] GET /bless.php 14:41:09.293 [debug] QUERY OK source="settings" db=0.2ms idle=96.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 [] 14:41:09.293 [debug] QUERY OK source="settings" db=0.2ms idle=52.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 [] 14:41:09.293 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.294 [error] #PID<0.11042.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 114) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /bless.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 /bless (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bless.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 114, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11042.0>, params: %{}, path_info: ["bless"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/bless.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDibo6xTkx7kAAnWB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bless.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 114, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /bless (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bless.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 114, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11042.0>, params: %{}, path_info: ["bless"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/bless.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDibo6xTkx7kAAnWB"} ], 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/phoeni (truncated) 14:41:09.341 [info] GET /bf.php 14:41:09.341 [debug] QUERY OK source="settings" db=0.2ms idle=99.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 [] 14:41:09.342 [debug] QUERY OK source="settings" db=0.2ms idle=76.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 [] 14:41:09.342 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.342 [error] #PID<0.11043.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 115) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /bf.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 /bf (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 115, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11043.0>, params: %{}, path_info: ["bf"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/bf.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDinRL5UjZ3EAAnXB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 115, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /bf (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 115, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11043.0>, params: %{}, path_info: ["bf"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/bf.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDinRL5UjZ3EAAnXB"} ], 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]}, (truncated) 14:41:09.384 [info] GET /style.php 14:41:09.385 [debug] QUERY OK source="settings" db=0.2ms idle=118.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 [] 14:41:09.385 [debug] QUERY OK source="settings" db=0.2ms idle=92.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 [] 14:41:09.385 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.386 [error] #PID<0.11044.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 116) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /style.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 /style (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/style.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 116, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11044.0>, params: %{}, path_info: ["style"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/style.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDixpBu-e2n0AAnYB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/style.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 116, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /style (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/style.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 116, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11044.0>, params: %{}, path_info: ["style"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/style.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDixpBu-e2n0AAnYB"} ], 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/phoeni (truncated) 14:41:09.421 [info] GET /777.php 14:41:09.422 [debug] QUERY OK source="settings" db=0.3ms idle=128.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 [] 14:41:09.422 [debug] QUERY OK source="settings" db=0.3ms idle=80.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 [] 14:41:09.423 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.423 [error] #PID<0.11045.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 117) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /777.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 /777 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/777.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 117, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11045.0>, params: %{}, path_info: ["777"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/777.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDi6cxjW5irAAAnZB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/777.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 117, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /777 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/777.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 117, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11045.0>, params: %{}, path_info: ["777"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/777.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDi6cxjW5irAAAnZB"} ], 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) 14:41:09.460 [info] GET /elp.php 14:41:09.461 [debug] QUERY OK source="settings" db=0.2ms idle=74.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 [] 14:41:09.461 [debug] QUERY OK source="settings" db=0.2ms idle=38.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 [] 14:41:09.461 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.462 [error] #PID<0.11046.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 118) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /elp.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 /elp (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/elp.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 118, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11046.0>, params: %{}, path_info: ["elp"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/elp.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDjDsWmWbQKQAAnaB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/elp.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 118, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /elp (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/elp.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 118, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11046.0>, params: %{}, path_info: ["elp"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/elp.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDjDsWmWbQKQAAnaB"} ], 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) 14:41:09.489 [info] GET /xhell.php 14:41:09.490 [debug] QUERY OK source="settings" db=0.2ms idle=67.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 [] 14:41:09.490 [debug] QUERY OK source="settings" db=0.2ms idle=36.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 [] 14:41:09.490 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.491 [error] #PID<0.11047.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 119) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /xhell.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 /xhell (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xhell.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 119, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11047.0>, params: %{}, path_info: ["xhell"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xhell.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDjKsb6DUCGoAAnbB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xhell.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 119, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /xhell (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xhell.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 119, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11047.0>, params: %{}, path_info: ["xhell"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xhell.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDjKsb6DUCGoAAnbB"} ], 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/phoeni (truncated) 14:41:09.562 [info] GET /f35.php 14:41:09.563 [debug] QUERY OK source="settings" db=0.2ms idle=102.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 [] 14:41:09.563 [debug] QUERY OK source="settings" db=0.3ms idle=102.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 [] 14:41:09.564 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.564 [error] #PID<0.11048.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 120) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /f35.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 /f35 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/f35.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 120, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11048.0>, params: %{}, path_info: ["f35"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/f35.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDjcGpCmuOnQAAncB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/f35.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 120, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /f35 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/f35.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 120, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11048.0>, params: %{}, path_info: ["f35"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/f35.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDjcGpCmuOnQAAncB"} ], 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) 14:41:09.602 [info] GET /ne.php 14:41:09.603 [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 [] 14:41:09.603 [debug] QUERY OK source="settings" db=0.2ms idle=112.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 [] 14:41:09.603 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.604 [error] #PID<0.11049.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 121) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ne.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 /ne (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ne.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 121, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11049.0>, params: %{}, path_info: ["ne"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ne.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDjlgx4dW9aMAAndB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ne.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 121, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ne (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ne.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 121, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11049.0>, params: %{}, path_info: ["ne"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ne.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDjlgx4dW9aMAAndB"} ], 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]}, (truncated) 14:41:09.639 [info] GET /fx.php 14:41:09.639 [debug] QUERY OK source="settings" db=0.2ms idle=148.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 [] 14:41:09.640 [debug] QUERY OK source="settings" db=0.2ms idle=76.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 [] 14:41:09.640 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.640 [error] #PID<0.11050.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 122) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /fx.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 /fx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/fx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 122, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11050.0>, params: %{}, path_info: ["fx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/fx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDjuTK11Ba8EAAneB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/fx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 122, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /fx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/fx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 122, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11050.0>, params: %{}, path_info: ["fx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/fx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDjuTK11Ba8EAAneB"} ], 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]}, (truncated) 14:41:09.753 [info] GET /cardiology1.php 14:41:09.754 [debug] QUERY OK source="settings" db=0.4ms idle=190.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 [] 14:41:09.755 [debug] QUERY OK source="settings" db=0.3ms idle=151.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 [] 14:41:09.755 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.756 [error] #PID<0.11051.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 123) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /cardiology1.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 /cardiology1 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/cardiology1.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 123, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11051.0>, params: %{}, path_info: ["cardiology1"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/cardiology1.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDkJqDPRCRicAAnfB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/cardiology1.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 123, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /cardiology1 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/cardiology1.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 123, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11051.0>, params: %{}, path_info: ["cardiology1"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/cardiology1.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDkJqDPRCRicAAnfB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb. (truncated) 14:41:09.811 [info] GET /runtime.php 14:41:09.811 [debug] QUERY OK source="settings" db=0.3ms idle=207.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 [] 14:41:09.812 [debug] QUERY OK source="settings" db=0.3ms idle=172.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 [] 14:41:09.812 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.813 [error] #PID<0.11052.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 124) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /runtime.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 /runtime (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/runtime.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 124, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11052.0>, params: %{}, path_info: ["runtime"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/runtime.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDkXUQVT6qOAAAngB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/runtime.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 124, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /runtime (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/runtime.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 124, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11052.0>, params: %{}, path_info: ["runtime"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/runtime.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDkXUQVT6qOAAAngB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"dep (truncated) 14:41:09.870 [info] GET /lala.php 14:41:09.871 [debug] QUERY OK source="settings" db=0.2ms idle=230.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 [] 14:41:09.871 [debug] QUERY OK source="settings" db=0.3ms idle=116.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 [] 14:41:09.871 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.872 [error] #PID<0.11053.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 125) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /lala.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 /lala (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lala.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 125, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11053.0>, params: %{}, path_info: ["lala"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/lala.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDklcEOa-kRsAAnhB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lala.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 125, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /lala (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/lala.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 125, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11053.0>, params: %{}, path_info: ["lala"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/lala.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDklcEOa-kRsAAnhB"} ], 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.e (truncated) 14:41:09.908 [info] GET /sad5.php 14:41:09.908 [debug] QUERY OK source="settings" db=0.3ms idle=153.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 [] 14:41:09.909 [debug] QUERY OK source="settings" db=0.2ms idle=97.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 [] 14:41:09.909 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.910 [error] #PID<0.11054.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 126) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sad5.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 /sad5 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sad5.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 126, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11054.0>, params: %{}, path_info: ["sad5"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/sad5.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDkueQfeDhMkAAniB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sad5.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 126, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sad5 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sad5.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 126, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11054.0>, params: %{}, path_info: ["sad5"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/sad5.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDkueQfeDhMkAAniB"} ], 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.e (truncated) 14:41:09.942 [info] GET /alwso.php 14:41:09.942 [debug] QUERY OK source="settings" db=0.3ms idle=129.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 [] 14:41:09.943 [debug] QUERY OK source="settings" db=0.3ms idle=71.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 [] 14:41:09.943 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.944 [error] #PID<0.11055.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 127) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /alwso.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 /alwso (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alwso.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 127, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11055.0>, params: %{}, path_info: ["alwso"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/alwso.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDk2iBkB2dycAAnjB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alwso.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 127, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /alwso (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alwso.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 127, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11055.0>, params: %{}, path_info: ["alwso"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/alwso.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDk2iBkB2dycAAnjB"} ], 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/phoeni (truncated) 14:41:09.983 [info] GET /wp-admin/images/commentv.php 14:41:09.983 [debug] QUERY OK source="settings" db=0.3ms idle=111.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 [] 14:41:09.984 [debug] QUERY OK source="settings" db=0.2ms idle=75.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 [] 14:41:09.984 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:09.985 [error] #PID<0.11056.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 128) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-admin/images/commentv.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-admin/images/commentv (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-admin/images/commentv.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 128, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11056.0>, params: %{}, path_info: ["wp-admin", "images", "commentv"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-admin/images/commentv.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlAWCscI8aAAAnkB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-admin/images/commentv.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 128, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-admin/images/commentv (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-admin/images/commentv.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 128, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11056.0>, params: %{}, path_info: ["wp-admin", "images", "commentv"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-admin/images/commentv.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlAWCscI8aAAAnkB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: (truncated) 14:41:10.018 [info] GET /chosen.php 14:41:10.019 [debug] QUERY OK source="settings" db=0.3ms idle=109.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 [] 14:41:10.020 [debug] QUERY OK source="settings" db=0.3ms idle=77.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 [] 14:41:10.020 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.021 [error] #PID<0.11057.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 129) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /chosen.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 /chosen (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/chosen.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 129, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11057.0>, params: %{}, path_info: ["chosen"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/chosen.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlI2ueTWXyAAAnlB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/chosen.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 129, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /chosen (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/chosen.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 129, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11057.0>, params: %{}, path_info: ["chosen"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/chosen.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlI2ueTWXyAAAnlB"} ], 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/ (truncated) 14:41:10.054 [info] GET /xz.php 14:41:10.054 [debug] QUERY OK source="settings" db=0.3ms idle=110.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 [] 14:41:10.055 [debug] QUERY OK source="settings" db=0.3ms idle=71.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 [] 14:41:10.055 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.055 [error] #PID<0.11058.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 130) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /xz.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 /xz (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xz.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 130, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11058.0>, params: %{}, path_info: ["xz"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xz.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlRONg76EM0AAnmB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xz.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 130, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /xz (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xz.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 130, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11058.0>, params: %{}, path_info: ["xz"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xz.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlRONg76EM0AAnmB"} ], 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]}, (truncated) 14:41:10.100 [info] GET /alexus.php 14:41:10.100 [debug] QUERY OK source="settings" db=0.3ms idle=116.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 [] 14:41:10.101 [debug] QUERY OK source="settings" db=0.2ms idle=81.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 [] 14:41:10.101 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.102 [error] #PID<0.11059.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 131) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /alexus.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 /alexus (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alexus.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 131, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11059.0>, params: %{}, path_info: ["alexus"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/alexus.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlcOWjrQWv8AAnnB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alexus.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 131, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /alexus (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alexus.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 131, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11059.0>, params: %{}, path_info: ["alexus"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/alexus.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlcOWjrQWv8AAnnB"} ], 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/ (truncated) 14:41:10.127 [info] GET /wwx.php 14:41:10.128 [debug] QUERY OK source="settings" db=0.3ms idle=107.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 [] 14:41:10.129 [debug] QUERY OK source="settings" db=0.3ms idle=73.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 [] 14:41:10.129 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.129 [error] #PID<0.11060.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 132) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wwx.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 /wwx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wwx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 132, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11060.0>, params: %{}, path_info: ["wwx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wwx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDliznalYqI0AAnoB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wwx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 132, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wwx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wwx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 132, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11060.0>, params: %{}, path_info: ["wwx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wwx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDliznalYqI0AAnoB"} ], 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) 14:41:10.162 [info] GET /xxxx.php 14:41:10.162 [debug] QUERY OK source="settings" db=0.3ms idle=107.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 [] 14:41:10.163 [debug] QUERY OK source="settings" db=0.2ms idle=62.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 [] 14:41:10.163 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.164 [error] #PID<0.11061.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 133) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /xxxx.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 /xxxx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xxxx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 133, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11061.0>, params: %{}, path_info: ["xxxx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xxxx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlrBn27W-rYAAnpB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xxxx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 133, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /xxxx (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/xxxx.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 133, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11061.0>, params: %{}, path_info: ["xxxx"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/xxxx.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlrBn27W-rYAAnpB"} ], 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.e (truncated) 14:41:10.196 [info] GET /sym403.php 14:41:10.196 [debug] QUERY OK source="settings" db=0.3ms idle=94.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 [] 14:41:10.197 [debug] QUERY OK source="settings" db=0.2ms idle=68.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 [] 14:41:10.197 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.197 [error] #PID<0.11062.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 134) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sym403.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 /sym403 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sym403.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 134, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11062.0>, params: %{}, path_info: ["sym403"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/sym403.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlzE8t3iMKwAAnqB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sym403.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 134, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sym403 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sym403.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 134, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11062.0>, params: %{}, path_info: ["sym403"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/sym403.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDlzE8t3iMKwAAnqB"} ], 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/ (truncated) 14:41:10.223 [info] GET /cgi-bin/index.php 14:41:10.223 [debug] QUERY OK source="settings" db=0.2ms idle=94.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 [] 14:41:10.224 [debug] QUERY OK source="settings" db=0.3ms idle=61.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 [] 14:41:10.224 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.224 [error] #PID<0.11063.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 135) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /cgi-bin/index.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 /cgi-bin/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/cgi-bin/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 135, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11063.0>, params: %{}, path_info: ["cgi-bin", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/cgi-bin/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDl5kr78lqdgAAnrB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/cgi-bin/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 135, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /cgi-bin/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/cgi-bin/index.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 135, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11063.0>, params: %{}, path_info: ["cgi-bin", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/cgi-bin/index.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDl5kr78lqdgAAnrB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack (truncated) 14:41:10.326 [info] GET /wsd.php 14:41:10.327 [debug] QUERY OK source="settings" db=0.2ms idle=163.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 [] 14:41:10.327 [debug] QUERY OK source="settings" db=0.3ms idle=130.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 [] 14:41:10.327 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.328 [error] #PID<0.11064.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 136) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wsd.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 /wsd (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wsd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 136, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11064.0>, params: %{}, path_info: ["wsd"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wsd.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDmSK1xtGt58AAnsB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wsd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 136, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wsd (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wsd.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 136, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11064.0>, params: %{}, path_info: ["wsd"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wsd.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDmSK1xtGt58AAnsB"} ], 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) 14:41:10.364 [info] GET /ext.php 14:41:10.364 [debug] QUERY OK source="settings" db=0.2ms idle=167.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 [] 14:41:10.365 [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 [] 14:41:10.365 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.366 [error] #PID<0.11065.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 137) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ext.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 /ext (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ext.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 137, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11065.0>, params: %{}, path_info: ["ext"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ext.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDmbNcAnV1QUAAntB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ext.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 137, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ext (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ext.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 137, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11065.0>, params: %{}, path_info: ["ext"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ext.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDmbNcAnV1QUAAntB"} ], 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) 14:41:10.400 [info] GET /ah25.php 14:41:10.401 [debug] QUERY OK source="settings" db=0.2ms idle=176.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 [] 14:41:10.402 [debug] QUERY OK source="settings" db=0.2ms idle=74.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 [] 14:41:10.402 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.402 [error] #PID<0.11066.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 138) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ah25.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 /ah25 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ah25.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 138, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11066.0>, params: %{}, path_info: ["ah25"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ah25.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDmj7ORLNkcYAAnuB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ah25.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 138, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ah25 (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ah25.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 138, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11066.0>, params: %{}, path_info: ["ah25"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ah25.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDmj7ORLNkcYAAnuB"} ], 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.e (truncated) 14:41:10.435 [info] GET /gettest.php 14:41:10.435 [debug] QUERY OK source="settings" db=0.3ms idle=107.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 [] 14:41:10.436 [debug] QUERY OK source="settings" db=0.3ms idle=70.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 [] 14:41:10.436 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.436 [error] #PID<0.11067.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 139) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /gettest.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 /gettest (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/gettest.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 139, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11067.0>, params: %{}, path_info: ["gettest"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/gettest.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDmsF5aX6WlwAAnvB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/gettest.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 139, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /gettest (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/gettest.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 139, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11067.0>, params: %{}, path_info: ["gettest"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/gettest.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDmsF5aX6WlwAAnvB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"dep (truncated) 14:41:10.497 [info] GET /wp-seo.php 14:41:10.498 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=95.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 [] 14:41:10.498 [debug] QUERY OK source="settings" db=0.3ms idle=62.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 [] 14:41:10.499 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.499 [error] #PID<0.11068.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 140) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-seo.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-seo (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-seo.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 140, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11068.0>, params: %{}, path_info: ["wp-seo"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-seo.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDm6-Bb_7cIkAAnwB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-seo.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 140, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-seo (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-seo.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 140, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11068.0>, params: %{}, path_info: ["wp-seo"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-seo.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDm6-Bb_7cIkAAnwB"} ], 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/ (truncated) 14:41:10.537 [info] GET /baindex.php 14:41:10.538 [debug] QUERY OK source="settings" db=0.3ms idle=101.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 [] 14:41:10.538 [debug] QUERY OK source="settings" db=0.2ms idle=82.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 [] 14:41:10.538 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.539 [error] #PID<0.11069.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 141) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /baindex.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 /baindex (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/baindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 141, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11069.0>, params: %{}, path_info: ["baindex"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/baindex.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDnEc485EL4QAAnxB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/baindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 141, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /baindex (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/baindex.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 141, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11069.0>, params: %{}, path_info: ["baindex"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/baindex.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDnEc485EL4QAAnxB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"dep (truncated) 14:41:10.571 [info] GET /0z.php 14:41:10.572 [debug] QUERY OK source="settings" db=0.2ms idle=109.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 [] 14:41:10.572 [debug] QUERY OK source="settings" db=0.2ms idle=74.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 [] 14:41:10.572 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.573 [error] #PID<0.11070.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 142) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /0z.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 /0z (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/0z.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 142, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11070.0>, params: %{}, path_info: ["0z"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/0z.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDnMpJLHdvVIAAnyB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/0z.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 142, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /0z (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/0z.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 142, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11070.0>, params: %{}, path_info: ["0z"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/0z.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDnMpJLHdvVIAAnyB"} ], 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]}, (truncated) 14:41:10.631 [info] GET /wp-content/upgrade/about.php 14:41:10.632 [debug] QUERY OK source="settings" db=0.2ms idle=133.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 [] 14:41:10.632 [debug] QUERY OK source="settings" db=0.3ms idle=94.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 [] 14:41:10.633 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.633 [error] #PID<0.11071.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 143) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /wp-content/upgrade/about.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-content/upgrade/about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/upgrade/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 143, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11071.0>, params: %{}, path_info: ["wp-content", "upgrade", "about"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/upgrade/about.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDna_FnOtGh0AAnzB"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/upgrade/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 143, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /wp-content/upgrade/about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/wp-content/upgrade/about.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 143, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11071.0>, params: %{}, path_info: ["wp-content", "upgrade", "about"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/wp-content/upgrade/about.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDna_FnOtGh0AAnzB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: (truncated) 14:41:10.665 [info] GET /alf.php 14:41:10.666 [debug] QUERY OK source="settings" db=0.2ms idle=127.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 [] 14:41:10.666 [debug] QUERY OK source="settings" db=0.2ms idle=93.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 [] 14:41:10.666 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.667 [error] #PID<0.11072.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 144) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /alf.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 /alf (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 144, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11072.0>, params: %{}, path_info: ["alf"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/alf.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDni_IbwRczsAAn0B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 144, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /alf (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/alf.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 144, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11072.0>, params: %{}, path_info: ["alf"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/alf.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDni_IbwRczsAAn0B"} ], 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) 14:41:10.710 [info] GET /ore.php 14:41:10.711 [debug] QUERY OK source="settings" db=0.2ms 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 [] 14:41:10.711 [debug] QUERY OK source="settings" db=0.2ms idle=78.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 [] 14:41:10.711 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.712 [error] #PID<0.11073.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 145) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /ore.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 /ore (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ore.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 145, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11073.0>, params: %{}, path_info: ["ore"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ore.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDnttcvQhDFMAAn1B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ore.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 145, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ore (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ore.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 145, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11073.0>, params: %{}, path_info: ["ore"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/ore.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDnttcvQhDFMAAn1B"} ], 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) 14:41:10.734 [info] GET /shell.php 14:41:10.735 [debug] QUERY OK source="settings" db=0.2ms idle=102.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 [] 14:41:10.735 [debug] QUERY OK source="settings" db=0.3ms idle=69.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 [] 14:41:10.736 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.736 [error] #PID<0.11074.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 146) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /shell.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 /shell (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/shell.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 146, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11074.0>, params: %{}, path_info: ["shell"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/shell.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDnzhunVXiv8AAn2B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/shell.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 146, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /shell (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/shell.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 146, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11074.0>, params: %{}, path_info: ["shell"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/shell.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDnzhunVXiv8AAn2B"} ], 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/phoeni (truncated) 14:41:10.769 [info] GET /pp.php 14:41:10.770 [debug] QUERY OK source="settings" db=0.2ms idle=103.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 [] 14:41:10.770 [debug] QUERY OK source="settings" db=0.3ms idle=59.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 [] 14:41:10.770 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.771 [error] #PID<0.11075.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 147) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /pp.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 /pp (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/pp.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 147, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11075.0>, params: %{}, path_info: ["pp"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/pp.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDn72Jpbkg-8AAn3B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/pp.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 147, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /pp (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/pp.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 147, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11075.0>, params: %{}, path_info: ["pp"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/pp.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDn72Jpbkg-8AAn3B"} ], 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]}, (truncated) 14:41:10.807 [info] GET /bayss.php 14:41:10.807 [debug] QUERY OK source="settings" db=0.3ms idle=96.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 [] 14:41:10.808 [debug] QUERY OK source="settings" db=0.3ms idle=72.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 [] 14:41:10.808 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.809 [error] #PID<0.11076.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 148) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /bayss.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 /bayss (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bayss.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 148, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11076.0>, params: %{}, path_info: ["bayss"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/bayss.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDoEzSIYQqlIAAn4B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bayss.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 148, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /bayss (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/bayss.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 148, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11076.0>, params: %{}, path_info: ["bayss"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/bayss.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDoEzSIYQqlIAAn4B"} ], 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/phoeni (truncated) 14:41:10.860 [info] GET /8xyz.php 14:41:10.861 [debug] QUERY OK source="settings" db=0.3ms idle=124.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 [] 14:41:10.861 [debug] QUERY OK source="settings" db=0.3ms idle=91.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 [] 14:41:10.861 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 14:41:10.862 [error] #PID<0.11077.0> running PinchflatWeb.Endpoint (connection #PID<0.10928.0>, stream id 149) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /8xyz.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 /8xyz (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/8xyz.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 149, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11077.0>, params: %{}, path_info: ["8xyz"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/8xyz.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDoRgP17aqyQAAn5B"} ], 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.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/8xyz.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 149, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /8xyz (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.10928.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/8xyz.php", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 38850}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "host" => "pinchflat.guano.duckdns.org", "x-forwarded-for" => "172.190.142.176", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "172.190.142.176" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 149, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.11077.0>, params: %{}, path_info: ["8xyz"], 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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-for", "172.190.142.176"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "172.190.142.176"} ], request_path: "/8xyz.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJEpDoRgP17aqyQAAn5B"} ], 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.e (truncated) 14:41:16.071 [info] {"source":"oban","duration":1363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:41:46.073 [info] {"source":"oban","duration":1528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:42:00.719 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:42:16.074 [info] {"source":"oban","duration":1141,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:42:46.077 [info] {"source":"oban","duration":1444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:43:00.719 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:43:16.078 [info] {"source":"oban","duration":1028,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:43:46.080 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:44:00.721 [info] {"source":"oban","duration":380,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:44:16.082 [info] {"source":"oban","duration":1006,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:44:46.084 [info] {"source":"oban","duration":864,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:45:00.722 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:45:16.086 [info] {"source":"oban","duration":1124,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:45:46.088 [info] {"source":"oban","duration":870,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:46:00.725 [info] {"source":"oban","duration":1590,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:46:16.091 [info] {"source":"oban","duration":1455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:46:46.093 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:47:00.728 [info] {"source":"oban","duration":308,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:47:16.095 [info] {"source":"oban","duration":1595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:47:46.097 [info] {"source":"oban","duration":1165,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:48:00.728 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:48:16.099 [info] {"source":"oban","duration":1252,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:48:46.101 [info] {"source":"oban","duration":1280,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:49:00.730 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:49:16.104 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:49:46.106 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:50:00.730 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:50:16.107 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:50:46.109 [info] {"source":"oban","duration":1378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:51:00.731 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:51:16.111 [info] {"source":"oban","duration":1040,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:51:46.113 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:52:00.733 [info] {"source":"oban","duration":388,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:52:16.115 [info] {"source":"oban","duration":1031,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:52:46.117 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:53:00.734 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:53:16.119 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:53:46.121 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:54:00.734 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:54:16.124 [info] {"source":"oban","duration":1418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:54:46.126 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:00.736 [info] {"source":"oban","duration":681,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:55:16.128 [info] {"source":"oban","duration":1423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:46.130 [info] {"source":"oban","duration":1488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:56:00.736 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:56:16.131 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:56:46.133 [info] {"source":"oban","duration":1282,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:57:00.737 [info] {"source":"oban","duration":357,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:57:16.136 [info] {"source":"oban","duration":1600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:57:46.138 [info] {"source":"oban","duration":1568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:58:00.738 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:58:16.139 [info] {"source":"oban","duration":1050,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:58:46.141 [info] {"source":"oban","duration":903,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:59:00.739 [info] {"source":"oban","duration":266,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:59:16.144 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:59:46.145 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:00:00.741 [info] {"source":"oban","duration":417,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:00:16.147 [info] {"source":"oban","duration":1301,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:00:46.149 [info] {"source":"oban","duration":1202,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:01:00.742 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:01:16.151 [info] {"source":"oban","duration":868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:01:46.153 [info] {"source":"oban","duration":835,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:02:00.742 [info] {"source":"oban","duration":397,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:02:16.156 [info] {"source":"oban","duration":2174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:02:46.158 [info] {"source":"oban","duration":1161,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:03:00.743 [info] {"source":"oban","duration":352,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:03:16.161 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:03:46.163 [info] {"source":"oban","duration":1576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:04:00.744 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:04:16.164 [info] {"source":"oban","duration":1328,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:04:46.167 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:05:00.745 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:05:16.169 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:05:46.171 [info] {"source":"oban","duration":1595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:06:00.747 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:06:16.172 [info] {"source":"oban","duration":1088,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:06:46.174 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:07:00.747 [info] {"source":"oban","duration":307,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:07:16.177 [info] {"source":"oban","duration":1516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:07:46.178 [info] {"source":"oban","duration":1273,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:08:00.748 [info] {"source":"oban","duration":380,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:08:16.180 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:08:46.182 [info] {"source":"oban","duration":1211,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:09:00.750 [info] {"source":"oban","duration":370,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:09:16.184 [info] {"source":"oban","duration":1198,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:09:46.186 [info] {"source":"oban","duration":910,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:10:00.750 [info] {"source":"oban","duration":310,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:10:16.189 [info] {"source":"oban","duration":1514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:10:46.190 [info] {"source":"oban","duration":1154,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:11:00.751 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:11:16.193 [info] {"source":"oban","duration":1478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:11:46.194 [info] {"source":"oban","duration":1251,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:12:00.753 [info] {"source":"oban","duration":374,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:12:16.197 [info] {"source":"oban","duration":1525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:12:46.198 [info] {"source":"oban","duration":1041,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:13:00.754 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:13:16.201 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:13:46.202 [info] {"source":"oban","duration":971,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:14:00.754 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:14:16.204 [info] {"source":"oban","duration":928,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:14:46.207 [info] {"source":"oban","duration":1530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:15:00.756 [info] {"source":"oban","duration":430,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:15:16.209 [info] {"source":"oban","duration":1320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:15:46.210 [info] {"source":"oban","duration":983,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:16:00.757 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:16:16.213 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:16:46.214 [info] {"source":"oban","duration":1144,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:17:00.758 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:17:16.216 [info] {"source":"oban","duration":907,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:17:46.218 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:18:00.759 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:18:16.221 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:18:46.223 [info] {"source":"oban","duration":1597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:19:00.759 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:19:16.224 [info] {"source":"oban","duration":1120,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:19:46.226 [info] {"source":"oban","duration":1326,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:20:00.760 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:20:16.229 [info] {"source":"oban","duration":1589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:20:46.230 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:21:00.761 [info] {"source":"oban","duration":293,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:21:16.232 [info] {"source":"oban","duration":1285,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:21:46.234 [info] {"source":"oban","duration":995,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:22:00.762 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:22:16.236 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:22:46.238 [info] {"source":"oban","duration":980,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:23:00.764 [info] {"source":"oban","duration":414,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:23:16.241 [info] {"source":"oban","duration":1497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:23:46.242 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:24:00.765 [info] {"source":"oban","duration":384,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:24:16.244 [info] {"source":"oban","duration":1084,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:24:46.246 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:25:00.765 [info] {"source":"oban","duration":377,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:25:16.248 [info] {"source":"oban","duration":969,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:25:46.250 [info] {"source":"oban","duration":866,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:26:00.766 [info] {"source":"oban","duration":324,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:26:16.252 [info] {"source":"oban","duration":1009,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:26:46.254 [info] {"source":"oban","duration":1162,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:27:00.767 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:27:16.257 [info] {"source":"oban","duration":1616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:27:46.259 [info] {"source":"oban","duration":1506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:28:00.768 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:28:16.261 [info] {"source":"oban","duration":1521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:28:46.262 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:29:00.769 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:29:16.265 [info] {"source":"oban","duration":1482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:29:46.266 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:30:00.770 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:30:16.268 [info] {"source":"oban","duration":1251,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:30:46.270 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:31:00.772 [info] {"source":"oban","duration":419,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:31:16.272 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:31:46.274 [info] {"source":"oban","duration":1065,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:32:00.773 [info] {"source":"oban","duration":349,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:32:16.277 [info] {"source":"oban","duration":1542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:32:46.278 [info] {"source":"oban","duration":1204,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:33:00.774 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:33:16.280 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:33:46.282 [info] {"source":"oban","duration":963,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:34:00.774 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:34:16.284 [info] {"source":"oban","duration":867,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:34:46.287 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:00.776 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:35:16.289 [info] {"source":"oban","duration":1550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:46.290 [info] {"source":"oban","duration":1282,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:36:00.776 [info] {"source":"oban","duration":366,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:36:15.272 [info] GET / 15:36:15.272 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 15:36:15.273 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1743.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 [] 15:36:15.274 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1738.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 15:36:15.274 [debug] QUERY OK source="sources" db=0.2ms idle=922.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 15:36:15.282 [debug] QUERY OK source="media_items" db=8.0ms idle=743.7ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 15:36:15.284 [debug] QUERY OK source="media_items" db=1.4ms queue=0.1ms idle=745.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 15:36:15.285 [debug] QUERY OK source="settings" db=0.3ms idle=11.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 [] 15:36:15.286 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=11.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 [] 15:36:15.287 [debug] QUERY OK source="settings" db=0.2ms idle=12.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 [] 15:36:15.289 [debug] QUERY OK source="tasks" db=1.1ms idle=5.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"] 15:36:15.292 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms 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", m0."id" FROM "media_items" AS m0 WHERE (m0."id" IN (?,?)) [102574, 104642] 15:36:15.292 [debug] QUERY OK source="sources" db=0.9ms 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" IN (?,?)) [4, 1] 15:36:15.296 [debug] QUERY OK source="media_items" db=0.8ms idle=9.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)) [] 15:36:15.297 [debug] QUERY OK source="media_items" db=0.8ms queue=0.1ms 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" FROM "media_items" AS m0 INNER 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] 15:36:15.298 [debug] QUERY OK source="sources" db=0.6ms idle=8.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" IN (?,?)) [5, 4] 15:36:15.312 [debug] QUERY OK source="media_items" db=9.2ms 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"))) [] 15:36:15.314 [debug] QUERY OK source="media_items" db=1.5ms idle=20.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] 15:36:15.316 [debug] QUERY OK source="sources" db=0.5ms idle=19.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" IN (?,?)) [1, 4] 15:36:15.319 [info] Sent 200 in 47ms 15:36:16.292 [info] {"source":"oban","duration":1352,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:36:19.238 [info] GET /settings 15:36:19.238 [debug] Processing with PinchflatWeb.Settings.SettingController.show/2 Parameters: %{} Pipelines: [:browser] 15:36:19.239 [debug] QUERY OK source="settings" db=0.3ms idle=1693.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 [] 15:36:19.239 [debug] QUERY OK source="settings" db=0.2ms idle=887.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 [] 15:36:19.240 [debug] QUERY OK source="settings" db=0.3ms idle=888.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 [] 15:36:19.241 [debug] QUERY OK source="settings" db=0.2ms idle=700.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 [] 15:36:19.244 [info] Sent 200 in 5ms 15:36:46.295 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:37:00.777 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:37:16.296 [info] {"source":"oban","duration":1350,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:37:46.299 [info] {"source":"oban","duration":1558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:38:00.778 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:38:16.300 [info] {"source":"oban","duration":1284,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:38:46.302 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:00.780 [info] {"source":"oban","duration":343,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:39:16.305 [info] {"source":"oban","duration":1467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:41.941 [info] GET /app_info 15:39:41.942 [debug] Processing with PinchflatWeb.Settings.SettingController.app_info/2 Parameters: %{} Pipelines: [:browser] 15:39:41.943 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=968.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 [] 15:39:41.943 [debug] QUERY OK source="settings" db=0.2ms idle=962.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 [] 15:39:41.944 [debug] QUERY OK source="settings" db=0.2ms idle=592.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 [] 15:39:41.945 [debug] QUERY OK source="settings" db=0.3ms idle=593.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 [] 15:39:41.946 [debug] QUERY OK source="settings" db=0.2ms idle=594.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 [] 15:39:41.947 [info] Sent 200 in 5ms 15:39:46.307 [info] {"source":"oban","duration":1412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:58.742 [info] GET /sources/2 15:39:58.743 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "2"} Pipelines: [:browser] 15:39:58.744 [debug] QUERY OK source="sources" db=0.4ms idle=1391.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" = ?) [2] 15:39:58.745 [debug] QUERY OK source="media_profiles" db=0.4ms idle=1392.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] 15:39:58.746 [debug] QUERY OK source="tasks" db=0.3ms idle=1393.7ms 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 (?,?,?,?)) [2, "executing", "available", "scheduled", "retryable"] 15:39:58.746 [debug] QUERY OK source="settings" db=0.2ms idle=734.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 [] 15:39:58.747 [debug] QUERY OK source="settings" db=0.3ms idle=729.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 [] 15:39:58.748 [debug] QUERY OK source="settings" db=0.3ms 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 [] 15:39:58.751 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [2] 15:39:58.753 [debug] QUERY OK source="media_items" db=0.5ms queue=0.5ms 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 ((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")))) [2] 15:39:58.755 [debug] QUERY OK source="media_items" db=1.1ms queue=0.7ms idle=6.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 (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 ? [2, 10, 0] 15:39:58.756 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=8.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" = ?) [2] 15:39:58.757 [debug] QUERY OK source="media_items" db=0.2ms queue=0.2ms idle=8.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [2] 15:39:58.758 [debug] QUERY OK source="media_items" db=0.5ms queue=0.2ms idle=6.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 ? [2, 10, 0] 15:39:58.761 [debug] QUERY OK source="sources" db=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [2] 15:39:58.762 [debug] QUERY OK source="media_items" db=0.5ms queue=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 ((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"))))) [2] 15:39:58.765 [debug] QUERY OK source="media_items" db=1.3ms queue=0.5ms idle=6.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 ? [2, 10, 0] 15:39:58.766 [info] Sent 200 in 23ms 15:40:00.780 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:40:16.308 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:40:27.202 [info] GET /sources/2/edit 15:40:27.202 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "2"} Pipelines: [:browser] 15:40:27.203 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1126.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" = ?) [2] 15:40:27.204 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=852.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" [] 15:40:27.205 [debug] QUERY OK source="settings" db=0.3ms idle=853.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 [] 15:40:27.205 [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 [] 15:40:27.206 [debug] QUERY OK source="settings" db=0.3ms idle=127.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 [] 15:40:27.212 [info] Sent 200 in 10ms 15:40:46.310 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:41:00.782 [info] {"source":"oban","duration":448,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:41:16.312 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:41:25.577 [info] GET /sources/4 15:41:25.578 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "4"} Pipelines: [:browser] 15:41:25.579 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1226.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" = ?) [4] 15:41:25.579 [debug] QUERY OK source="media_profiles" db=0.4ms idle=1227.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] 15:41:25.593 [debug] QUERY OK source="tasks" db=13.6ms idle=379.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."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [4, "executing", "available", "scheduled", "retryable"] 15:41:25.594 [debug] QUERY OK source="oban_jobs" db=0.4ms queue=0.3ms idle=387.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" = ?) [2945] 15:41:25.595 [debug] QUERY OK source="settings" db=0.3ms idle=243.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 [] 15:41:25.596 [debug] QUERY OK source="settings" db=0.3ms 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 [] 15:41:25.597 [debug] QUERY OK source="settings" db=0.3ms idle=17.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 [] 15:41:25.600 [debug] QUERY OK source="sources" db=0.2ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 15:41:25.602 [debug] QUERY OK source="media_items" db=1.5ms 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")))) [4] 15:41:25.604 [debug] QUERY OK source="media_items" db=1.5ms idle=6.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 ? [4, 10, 0] 15:41:25.605 [debug] QUERY OK source="sources" db=0.3ms idle=8.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" = ?) [4] 15:41:25.605 [debug] QUERY OK source="media_items" db=0.3ms idle=8.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [4] 15:41:25.607 [debug] QUERY OK source="media_items" db=0.9ms idle=6.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 ? [4, 10, 0] 15:41:25.609 [debug] QUERY OK source="sources" db=0.2ms 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" = ?) [4] 15:41:25.610 [debug] QUERY OK source="media_items" db=0.6ms 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 (((((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"))))) [4] 15:41:25.611 [debug] QUERY OK source="media_items" db=1.0ms queue=0.1ms idle=5.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 (((((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 ? [4, 10, 0] 15:41:25.613 [info] Sent 200 in 35ms 15:41:46.314 [info] {"source":"oban","duration":948,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:42:00.783 [info] {"source":"oban","duration":390,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:42:16.317 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:42:32.359 [info] GET /sources/3/edit 15:42:32.359 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "3"} Pipelines: [:browser] 15:42:32.360 [debug] QUERY OK source="sources" db=0.2ms queue=0.1ms idle=1008.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" = ?) [3] 15:42:32.361 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=1009.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" [] 15:42:32.362 [debug] QUERY OK source="settings" db=0.2ms idle=1004.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 [] 15:42:32.362 [debug] QUERY OK source="settings" db=0.3ms idle=10.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 [] 15:42:32.363 [debug] QUERY OK source="settings" db=0.3ms idle=4.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 [] 15:42:32.369 [info] Sent 200 in 10ms 15:42:36.551 [info] GET /sources/5 15:42:36.552 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "5"} Pipelines: [:browser] 15:42:36.553 [debug] QUERY OK source="sources" db=0.4ms idle=200.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" = ?) [5] 15:42:36.553 [debug] QUERY OK source="media_profiles" db=0.4ms idle=201.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] 15:42:36.670 [debug] QUERY OK source="tasks" db=115.9ms idle=202.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."state" IN (?,?,?,?)) [5, "executing", "available", "scheduled", "retryable"] 15:42:36.670 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=309.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" = ?) [2982] 15:42:36.671 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=303.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 [] 15:42:36.672 [debug] QUERY OK source="settings" db=0.2ms idle=118.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 [] 15:42:36.673 [debug] QUERY OK source="settings" db=0.2ms idle=119.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 [] 15:42:36.676 [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" = ?) [5] 15:42:36.677 [debug] QUERY OK source="media_items" db=0.9ms 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 ((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")))) [5] 15:42:36.679 [debug] QUERY OK source="media_items" db=1.2ms queue=0.3ms idle=6.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 ? [5, 10, 0] 15:42:36.681 [debug] QUERY OK source="sources" db=0.4ms idle=8.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" = ?) [5] 15:42:36.682 [debug] QUERY OK source="media_items" db=0.3ms idle=8.2ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [5] 15:42:36.683 [debug] QUERY OK source="media_items" db=1.3ms idle=6.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 ? [5, 10, 0] 15:42:36.686 [debug] QUERY OK source="sources" db=0.4ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [5] 15:42:36.687 [debug] QUERY OK source="media_items" db=0.7ms 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 ((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"))))) [5] 15:42:36.688 [debug] QUERY OK source="media_items" db=1.2ms idle=6.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 ? [5, 10, 0] 15:42:36.690 [info] Sent 200 in 138ms 15:42:46.319 [info] {"source":"oban","duration":1636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:00.784 [info] {"source":"oban","duration":351,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:43:13.834 [info] GET /sources/1 15:43:13.834 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 15:43:13.835 [debug] QUERY OK source="sources" db=0.3ms queue=0.1ms idle=1483.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] 15:43:13.836 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=1401.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] 15:43:13.899 [debug] QUERY OK source="tasks" db=63.0ms idle=1395.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"] 15:43:13.900 [debug] QUERY OK source="oban_jobs" db=0.3ms queue=0.1ms idle=463.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" = ?) [2976] 15:43:13.901 [debug] QUERY OK source="settings" db=0.4ms idle=458.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 [] 15:43:13.901 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms 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 [] 15:43:13.902 [debug] QUERY OK source="settings" db=0.3ms idle=66.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 [] 15:43:13.905 [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" FROM "sources" AS s0 WHERE (s0."id" = ?) [1] 15:43:13.908 [debug] QUERY OK source="media_items" db=2.4ms 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 ((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] 15:43:13.911 [debug] QUERY OK source="media_items" db=2.0ms idle=7.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 (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] 15:43:13.913 [debug] QUERY OK source="sources" db=0.3ms idle=11.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] 15:43:13.914 [debug] QUERY OK source="media_items" db=0.4ms idle=11.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [1] 15:43:13.918 [debug] QUERY OK source="media_items" db=3.5ms idle=9.2ms 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] 15:43:13.921 [debug] QUERY OK source="sources" db=0.3ms idle=12.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] 15:43:13.923 [debug] QUERY OK source="media_items" db=1.4ms idle=10.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] 15:43:13.925 [debug] QUERY OK source="media_items" db=1.9ms idle=9.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] 15:43:13.928 [info] Sent 200 in 94ms 15:43:16.320 [info] {"source":"oban","duration":1195,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:46.322 [info] {"source":"oban","duration":1201,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:50.248 [info] GET /sources/4/edit 15:43:50.248 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "4"} Pipelines: [:browser] 15:43:50.249 [debug] QUERY OK source="sources" db=0.4ms idle=897.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" = ?) [4] 15:43:50.250 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=897.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" [] 15:43:50.251 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=898.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 [] 15:43:50.251 [debug] QUERY OK source="settings" db=0.2ms idle=741.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 [] 15:43:50.252 [debug] QUERY OK source="settings" db=0.4ms idle=735.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 [] 15:43:50.259 [info] Sent 200 in 10ms 15:44:00.784 [info] {"source":"oban","duration":318,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:44:16.324 [info] {"source":"oban","duration":1356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:44:27.421 [info] GET /sources/1/edit 15:44:27.422 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 15:44:27.422 [debug] QUERY OK source="sources" db=0.3ms idle=831.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] 15:44:27.423 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=825.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 ORDER BY m0."name" [] 15:44:27.424 [debug] QUERY OK source="settings" db=0.2ms idle=72.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 [] 15:44:27.424 [debug] QUERY OK source="settings" db=0.3ms idle=72.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 [] 15:44:27.426 [debug] QUERY OK source="settings" db=0.4ms idle=73.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 [] 15:44:27.431 [info] Sent 200 in 10ms 15:44:46.326 [info] {"source":"oban","duration":1359,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:44:56.828 [info] GET /sources/new 15:44:56.828 [debug] Processing with PinchflatWeb.Sources.SourceController.new/2 Parameters: %{} Pipelines: [:browser] 15:44:56.829 [debug] QUERY OK source="media_profiles" db=0.5ms idle=1476.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" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 15:44:56.829 [debug] QUERY OK source="settings" db=0.3ms idle=1180.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 [] 15:44:56.830 [debug] QUERY OK source="settings" db=0.3ms idle=1174.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 [] 15:44:56.831 [debug] QUERY OK source="settings" db=0.3ms idle=179.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 [] 15:44:56.832 [debug] QUERY OK source="settings" db=0.4ms idle=174.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 [] 15:44:56.833 [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 [] 15:44:56.838 [info] Sent 200 in 10ms 15:45:00.785 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:45:16.329 [info] {"source":"oban","duration":1382,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:45:43.929 [info] GET /media_profiles/2 15:45:43.929 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.show/2 Parameters: %{"id" => "2"} Pipelines: [:browser] 15:45:43.930 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=1182.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" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [2] 15:45:43.930 [debug] QUERY OK source="sources" db=0.4ms idle=1176.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" [2] 15:45:43.931 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=579.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 [] 15:45:43.931 [debug] QUERY OK source="settings" db=0.1ms idle=182.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 [] 15:45:43.932 [debug] QUERY OK source="settings" db=0.1ms idle=176.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 [] 15:45:43.934 [info] Sent 200 in 5ms 15:45:46.331 [info] {"source":"oban","duration":1403,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:45:50.477 [info] GET /media_profiles/1 15:45:50.477 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.show/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 15:45:50.478 [debug] QUERY OK source="media_profiles" db=0.4ms queue=0.1ms idle=1126.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 WHERE (m0."id" = ?) [1] 15:45:50.479 [debug] QUERY OK source="sources" db=0.5ms idle=1127.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."media_profile_id" = ?) ORDER BY s0."custom_name" [1] 15:45:50.480 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=1128.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 [] 15:45:50.481 [debug] QUERY OK source="settings" db=0.2ms idle=719.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 [] 15:45:50.482 [debug] QUERY OK source="settings" db=0.3ms idle=712.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 [] 15:45:50.485 [info] Sent 200 in 8ms 15:46:00.786 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:46:16.333 [info] {"source":"oban","duration":1511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:46:46.335 [info] {"source":"oban","duration":1540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:47:00.788 [info] {"source":"oban","duration":369,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:47:13.782 [info] GET /sources/5/edit 15:47:13.783 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "5"} Pipelines: [:browser] 15:47:13.784 [debug] QUERY OK source="sources" db=0.5ms queue=0.2ms idle=1431.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" = ?) [5] 15:47:13.785 [debug] QUERY OK source="media_profiles" db=0.5ms queue=0.1ms idle=1433.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" [] 15:47:13.786 [debug] QUERY OK source="settings" db=0.3ms idle=848.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 [] 15:47:13.786 [debug] QUERY OK source="settings" db=0.2ms idle=842.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 [] 15:47:13.788 [debug] QUERY OK source="settings" db=0.2ms idle=435.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 [] 15:47:13.793 [info] Sent 200 in 10ms 15:47:16.336 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:47:19.259 [info] GET /media_profiles 15:47:19.259 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 15:47:19.260 [debug] QUERY OK source="media_profiles" db=0.6ms idle=1908.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" [] 15:47:19.261 [debug] QUERY OK source="settings" db=0.2ms idle=1312.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 [] 15:47:19.262 [debug] QUERY OK source="settings" db=0.2ms idle=1305.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 [] 15:47:19.263 [debug] QUERY OK source="settings" db=0.3ms idle=311.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 [] 15:47:19.265 [info] Sent 200 in 6ms 15:47:19.587 [info] GET /sources/3 15:47:19.587 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "3"} Pipelines: [:browser] 15:47:19.588 [debug] QUERY OK source="sources" db=0.5ms idle=630.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" = ?) [3] 15:47:19.589 [debug] QUERY OK source="media_profiles" db=0.4ms idle=328.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" = ?) [2] 15:47:19.590 [debug] QUERY OK source="tasks" db=0.3ms queue=0.1ms idle=328.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 (?,?,?,?)) [3, "executing", "available", "scheduled", "retryable"] 15:47:19.591 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=328.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 [] 15:47:19.591 [debug] QUERY OK source="settings" db=0.2ms idle=328.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 [] 15:47:19.592 [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 [] 15:47:19.595 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 15:47:19.596 [debug] QUERY OK source="media_items" db=0.9ms 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 ((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")))) [3] 15:47:19.598 [debug] QUERY OK source="media_items" db=1.1ms idle=6.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 ? [3, 10, 0] 15:47:19.599 [debug] QUERY OK source="sources" db=0.5ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 15:47:19.600 [debug] QUERY OK source="media_items" db=0.2ms idle=7.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [3] 15:47:19.601 [debug] QUERY OK source="media_items" db=0.6ms idle=5.1ms 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 ? [3, 10, 0] 15:47:19.603 [debug] QUERY OK source="sources" db=0.3ms 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" = ?) [3] 15:47:19.604 [debug] QUERY OK source="media_items" db=0.4ms 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 ((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"))))) [3] 15:47:19.606 [debug] QUERY OK source="media_items" db=1.1ms 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 ? [3, 10, 0] 15:47:19.607 [info] Sent 200 in 20ms 15:47:46.338 [info] {"source":"oban","duration":1261,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:48:00.789 [info] {"source":"oban","duration":450,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:48:16.340 [info] {"source":"oban","duration":912,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:48:46.342 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:49:00.790 [info] {"source":"oban","duration":476,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:49:16.344 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:49:46.346 [info] {"source":"oban","duration":1140,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:50:00.790 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:50:16.348 [info] {"source":"oban","duration":1062,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:50:46.350 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:51:00.791 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:51:16.352 [info] {"source":"oban","duration":1268,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:51:46.354 [info] {"source":"oban","duration":1273,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:52:00.792 [info] {"source":"oban","duration":390,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:52:16.356 [info] {"source":"oban","duration":1160,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:52:46.358 [info] {"source":"oban","duration":1047,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:53:00.793 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:53:16.361 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:53:46.362 [info] {"source":"oban","duration":1332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:54:00.795 [info] {"source":"oban","duration":503,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:54:16.364 [info] {"source":"oban","duration":1286,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:54:46.366 [info] {"source":"oban","duration":1146,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:55:00.796 [info] {"source":"oban","duration":394,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:55:16.368 [info] {"source":"oban","duration":893,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:55:46.370 [info] {"source":"oban","duration":1346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:56:00.797 [info] {"source":"oban","duration":374,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:56:16.372 [info] {"source":"oban","duration":1021,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:56:46.374 [info] {"source":"oban","duration":1227,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:57:00.798 [info] {"source":"oban","duration":405,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:57:16.376 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:57:46.378 [info] {"source":"oban","duration":1147,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:58:00.799 [info] {"source":"oban","duration":434,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:58:16.381 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:58:46.382 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:59:00.799 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:59:16.384 [info] {"source":"oban","duration":1337,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:59:46.386 [info] {"source":"oban","duration":1278,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:00:00.801 [info] {"source":"oban","duration":453,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:00:16.389 [info] {"source":"oban","duration":1429,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:00:46.390 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:01:00.801 [info] {"source":"oban","duration":365,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:01:16.393 [info] {"source":"oban","duration":1333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:01:46.394 [info] {"source":"oban","duration":960,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:02:00.803 [info] {"source":"oban","duration":395,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:02:16.396 [info] {"source":"oban","duration":1103,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:02:46.398 [info] {"source":"oban","duration":1010,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:03:00.804 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:03:16.400 [info] {"source":"oban","duration":1214,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:03:46.402 [info] {"source":"oban","duration":904,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:04:00.804 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:04:16.404 [info] {"source":"oban","duration":978,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:04:46.406 [info] {"source":"oban","duration":1262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:05:00.805 [info] {"source":"oban","duration":392,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:05:16.408 [info] {"source":"oban","duration":877,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:05:46.410 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:06:00.806 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:06:16.412 [info] {"source":"oban","duration":1269,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:06:46.414 [info] {"source":"oban","duration":1348,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:07:00.807 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:07:16.417 [info] {"source":"oban","duration":1430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:07:46.419 [info] {"source":"oban","duration":1678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:08:00.808 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:08:16.420 [info] {"source":"oban","duration":1377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:08:46.422 [info] {"source":"oban","duration":1308,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:09:00.809 [info] {"source":"oban","duration":223,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:09:16.425 [info] {"source":"oban","duration":1436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:09:46.426 [info] {"source":"oban","duration":1338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:10:00.810 [info] {"source":"oban","duration":248,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:10:16.428 [info] {"source":"oban","duration":1097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:10:46.430 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:11:00.812 [info] {"source":"oban","duration":488,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:11:16.432 [info] {"source":"oban","duration":1289,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:11:46.434 [info] {"source":"oban","duration":1304,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:12:00.813 [info] {"source":"oban","duration":417,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:12:16.436 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:12:46.438 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:13:00.814 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:13:16.440 [info] {"source":"oban","duration":1074,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:13:46.442 [info] {"source":"oban","duration":1125,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:14:00.815 [info] {"source":"oban","duration":322,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:14:16.444 [info] {"source":"oban","duration":1209,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:14:46.446 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:15:00.816 [info] {"source":"oban","duration":408,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:15:16.448 [info] {"source":"oban","duration":1319,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:15:46.450 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:16:00.816 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:16:16.452 [info] {"source":"oban","duration":1295,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:16:46.454 [info] {"source":"oban","duration":1287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:17:00.817 [info] {"source":"oban","duration":406,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:17:16.456 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:17:46.458 [info] {"source":"oban","duration":973,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:18:00.819 [info] {"source":"oban","duration":502,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:18:16.460 [info] {"source":"oban","duration":966,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:18:46.462 [info] {"source":"oban","duration":1017,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:19:00.820 [info] {"source":"oban","duration":401,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:19:16.464 [info] {"source":"oban","duration":1205,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:19:46.466 [info] {"source":"oban","duration":868,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:20:00.820 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:20:16.468 [info] {"source":"oban","duration":1420,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:20:46.470 [info] {"source":"oban","duration":1131,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:21:00.821 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:21:16.472 [info] {"source":"oban","duration":943,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:21:46.474 [info] {"source":"oban","duration":1090,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:22:00.823 [info] {"source":"oban","duration":393,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:22:16.477 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:22:46.478 [info] {"source":"oban","duration":1354,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:23:00.823 [info] {"source":"oban","duration":335,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:23:16.481 [info] {"source":"oban","duration":1494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:23:46.483 [info] {"source":"oban","duration":1490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:24:00.825 [info] {"source":"oban","duration":346,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:24:16.485 [info] {"source":"oban","duration":1561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:24:46.487 [info] {"source":"oban","duration":1072,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:25:00.826 [info] {"source":"oban","duration":385,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:25:16.489 [info] {"source":"oban","duration":1115,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:25:46.491 [info] {"source":"oban","duration":981,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:26:00.826 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:26:16.493 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:26:46.495 [info] {"source":"oban","duration":932,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:27:00.828 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:27:16.497 [info] {"source":"oban","duration":1250,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:27:46.499 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:28:00.829 [info] {"source":"oban","duration":425,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:28:16.502 [info] {"source":"oban","duration":1550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:28:46.503 [info] {"source":"oban","duration":1053,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:29:00.831 [info] {"source":"oban","duration":337,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:29:16.505 [info] {"source":"oban","duration":1225,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:29:46.507 [info] {"source":"oban","duration":1313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:30:00.831 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:30:16.510 [info] {"source":"oban","duration":1422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:30:46.511 [info] {"source":"oban","duration":1374,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:31:00.832 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:31:16.514 [info] {"source":"oban","duration":1480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:31:46.516 [info] {"source":"oban","duration":1590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:32:00.833 [info] {"source":"oban","duration":240,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:32:16.517 [info] {"source":"oban","duration":1340,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:32:46.519 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:33:00.834 [info] {"source":"oban","duration":303,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:33:16.522 [info] {"source":"oban","duration":1454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:33:46.524 [info] {"source":"oban","duration":1568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:34:00.835 [info] {"source":"oban","duration":315,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:34:16.526 [info] {"source":"oban","duration":1503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:34:46.528 [info] {"source":"oban","duration":1450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:35:00.837 [info] {"source":"oban","duration":375,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:35:16.529 [info] {"source":"oban","duration":1099,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:35:46.531 [info] {"source":"oban","duration":1173,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:36:00.838 [info] {"source":"oban","duration":424,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:36:16.533 [info] {"source":"oban","duration":1056,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:36:46.535 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:37:00.839 [info] {"source":"oban","duration":400,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:37:16.537 [info] {"source":"oban","duration":1137,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:37:46.540 [info] {"source":"oban","duration":1355,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:38:00.839 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:38:16.541 [info] {"source":"oban","duration":1368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:38:46.543 [info] {"source":"oban","duration":1375,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:39:00.840 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:39:16.546 [info] {"source":"oban","duration":1492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:39:46.548 [info] {"source":"oban","duration":1489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:40:00.841 [info] {"source":"oban","duration":329,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:40:16.550 [info] {"source":"oban","duration":1402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:40:46.552 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:41:00.843 [info] {"source":"oban","duration":401,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:41:16.554 [info] {"source":"oban","duration":1479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:41:46.556 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:42:00.844 [info] {"source":"oban","duration":350,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:42:16.558 [info] {"source":"oban","duration":1428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:42:46.560 [info] {"source":"oban","duration":1676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:43:00.845 [info] {"source":"oban","duration":330,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:43:16.562 [info] {"source":"oban","duration":974,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:43:46.564 [info] {"source":"oban","duration":1239,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:44:00.846 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:44:16.566 [info] {"source":"oban","duration":994,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:44:46.568 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:45:00.847 [info] {"source":"oban","duration":323,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:45:16.570 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:45:46.573 [info] {"source":"oban","duration":1464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:46:00.849 [info] {"source":"oban","duration":361,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:46:16.574 [info] {"source":"oban","duration":1152,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:46:46.577 [info] {"source":"oban","duration":1415,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:47:00.849 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:47:16.578 [info] {"source":"oban","duration":1213,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:47:46.581 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:48:00.851 [info] {"source":"oban","duration":524,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:48:16.582 [info] {"source":"oban","duration":1029,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:48:46.584 [info] {"source":"oban","duration":895,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:49:00.852 [info] {"source":"oban","duration":390,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:49:16.586 [info] {"source":"oban","duration":1105,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:49:46.588 [info] {"source":"oban","duration":934,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:50:00.852 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:50:16.590 [info] {"source":"oban","duration":933,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:50:46.592 [info] {"source":"oban","duration":952,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:51:00.854 [info] {"source":"oban","duration":703,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:51:16.594 [info] {"source":"oban","duration":1373,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:51:46.596 [info] {"source":"oban","duration":1315,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:52:00.856 [info] {"source":"oban","duration":405,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:52:16.598 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:52:46.600 [info] {"source":"oban","duration":911,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:53:00.857 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:53:16.602 [info] {"source":"oban","duration":958,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:53:46.605 [info] {"source":"oban","duration":1394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:54:00.858 [info] {"source":"oban","duration":364,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:54:16.606 [info] {"source":"oban","duration":1358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:54:46.608 [info] {"source":"oban","duration":1310,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:55:00.858 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:55:16.611 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:55:46.612 [info] {"source":"oban","duration":1299,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:56:00.860 [info] {"source":"oban","duration":356,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:56:16.614 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:56:46.616 [info] {"source":"oban","duration":1242,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:57:00.861 [info] {"source":"oban","duration":452,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:57:16.618 [info] {"source":"oban","duration":1167,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:57:46.620 [info] {"source":"oban","duration":1274,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:58:00.862 [info] {"source":"oban","duration":344,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:58:16.622 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:58:46.624 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:59:00.863 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:59:16.626 [info] {"source":"oban","duration":1185,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:59:46.629 [info] {"source":"oban","duration":1474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:00:00.863 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:00:16.631 [info] {"source":"oban","duration":2297,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":5} 17:00:46.633 [info] {"source":"oban","duration":1115,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:01:00.865 [info] {"source":"oban","duration":418,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:01:16.635 [info] {"source":"oban","duration":1059,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:01:46.638 [info] {"source":"oban","duration":1507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:02:00.865 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:02:16.640 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:02:46.642 [info] {"source":"oban","duration":1476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:03:00.866 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:03:16.644 [info] {"source":"oban","duration":1419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:03:46.645 [info] {"source":"oban","duration":949,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:04:00.868 [info] {"source":"oban","duration":332,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:04:16.647 [info] {"source":"oban","duration":1335,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:04:46.649 [info] {"source":"oban","duration":1199,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:05:00.869 [info] {"source":"oban","duration":314,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:05:16.651 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:05:46.654 [info] {"source":"oban","duration":1434,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:06:00.870 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:06:16.655 [info] {"source":"oban","duration":1100,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:06:46.657 [info] {"source":"oban","duration":1142,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:07:00.870 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:07:16.659 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:07:46.661 [info] {"source":"oban","duration":1129,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:08:00.872 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:08:16.663 [info] {"source":"oban","duration":1190,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:08:46.665 [info] {"source":"oban","duration":1275,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:09:00.873 [info] {"source":"oban","duration":354,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:09:16.667 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:09:46.670 [info] {"source":"oban","duration":1472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:10:00.873 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:10:16.671 [info] {"source":"oban","duration":1312,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:10:46.673 [info] {"source":"oban","duration":1366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:11:00.874 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:11:16.676 [info] {"source":"oban","duration":1471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:11:46.677 [info] {"source":"oban","duration":1148,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:00.876 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:12:16.679 [info] {"source":"oban","duration":1026,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:46.681 [info] {"source":"oban","duration":1147,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:46.865 [info] GET /sources/4/media/102836/edit 17:12:46.865 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "102836", "source_id" => "4"} Pipelines: [:browser] 17:12:46.866 [debug] QUERY OK source="media_items" db=0.5ms idle=778.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" = ?) [102836] 17:12:46.867 [debug] QUERY OK source="settings" db=0.4ms idle=515.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 [] 17:12:46.868 [debug] QUERY OK source="settings" db=0.2ms idle=516.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 [] 17:12:46.869 [debug] QUERY OK source="settings" db=0.2ms idle=517.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 [] 17:12:46.871 [info] Sent 200 in 6ms 17:12:47.364 [info] GET /sources/4/media/102834/edit 17:12:47.364 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "102834", "source_id" => "4"} Pipelines: [:browser] 17:12:47.365 [debug] QUERY OK source="media_items" db=0.2ms idle=497.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" = ?) [102834] 17:12:47.366 [debug] QUERY OK source="settings" db=0.1ms idle=497.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 [] 17:12:47.366 [debug] QUERY OK source="settings" db=0.3ms idle=496.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 [] 17:12:47.367 [debug] QUERY OK source="settings" db=0.2ms idle=283.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 [] 17:12:47.369 [info] Sent 200 in 5ms 17:12:47.866 [info] GET /sources/4/media/102835/edit 17:12:47.866 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "102835", "source_id" => "4"} Pipelines: [:browser] 17:12:47.867 [debug] QUERY OK source="media_items" db=0.3ms idle=776.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" = ?) [102835] 17:12:47.868 [debug] QUERY OK source="settings" db=0.4ms idle=502.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 [] 17:12:47.868 [debug] QUERY OK source="settings" db=0.2ms idle=502.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 [] 17:12:47.869 [debug] QUERY OK source="settings" db=0.3ms 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 [] 17:12:47.871 [info] Sent 200 in 5ms 17:12:48.368 [info] GET /sources/4/media/106019 17:12:48.368 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "106019", "source_id" => "4"} Pipelines: [:browser] 17:12:48.368 [debug] QUERY OK source="media_items" db=0.2ms idle=500.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" = ?) [106019] 17:12:48.370 [debug] QUERY OK source="tasks" db=0.5ms queue=0.1ms idle=500.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" [106019] 17:12:48.370 [debug] QUERY OK source="sources" db=0.8ms idle=499.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" = ?) [4] 17:12:48.371 [debug] QUERY OK source="oban_jobs" db=0.4ms idle=284.9ms 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" = ?) [2944] 17:12:48.372 [debug] QUERY OK source="settings" db=0.3ms idle=279.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 [] 17:12:48.372 [debug] QUERY OK source="settings" db=0.3ms 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 [] 17:12:48.373 [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 [] 17:12:48.375 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 17:12:48.379 [info] Sent 200 in 10ms 17:12:48.870 [info] GET /sources/4/media/102835 17:12:48.871 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "102835", "source_id" => "4"} Pipelines: [:browser] 17:12:48.872 [debug] QUERY OK source="media_items" db=0.5ms idle=500.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" = ?) [102835] 17:12:48.873 [debug] QUERY OK source="tasks" db=0.3ms queue=0.1ms idle=500.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" [102835] 17:12:48.873 [debug] QUERY OK source="sources" db=0.6ms idle=500.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" = ?) [4] 17:12:48.874 [debug] QUERY OK source="settings" db=0.2ms idle=500.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 [] 17:12:48.875 [debug] QUERY OK source="settings" db=0.2ms idle=499.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 [] 17:12:48.876 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms 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 [] 17:12:48.877 [debug] QUERY OK source="media_profiles" db=0.4ms 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] 17:12:48.881 [info] Sent 200 in 10ms 17:13:00.876 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:13:16.683 [info] {"source":"oban","duration":1255,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:13:17.362 [info] GET /sources/4/media/106019/edit 17:13:17.362 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "106019", "source_id" => "4"} Pipelines: [:browser] 17:13:17.363 [debug] QUERY OK source="media_items" db=0.3ms idle=1010.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" = ?) [106019] 17:13:17.363 [debug] QUERY OK source="settings" db=0.2ms idle=1011.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 [] 17:13:17.364 [debug] QUERY OK source="settings" db=0.2ms idle=680.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 [] 17:13:17.365 [debug] QUERY OK source="settings" db=0.2ms idle=218.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 [] 17:13:17.366 [info] Sent 200 in 4ms 17:13:17.472 [info] GET /sources/1/media/104641 17:13:17.472 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "104641", "source_id" => "1"} Pipelines: [:browser] 17:13:17.473 [debug] QUERY OK source="media_items" db=0.3ms idle=319.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" = ?) [104641] 17:13:17.474 [debug] QUERY OK source="tasks" db=0.4ms idle=110.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" [104641] 17:13:17.474 [debug] QUERY OK source="sources" db=0.5ms idle=110.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] 17:13:17.475 [debug] QUERY OK source="oban_jobs" db=0.6ms idle=110.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" IN (?,?)) [2810, 2907] 17:13:17.476 [debug] QUERY OK source="settings" db=0.2ms idle=111.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 [] 17:13:17.477 [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 [] 17:13:17.478 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:13:17.479 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=4.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] 17:13:17.482 [info] Sent 200 in 9ms 17:13:17.971 [info] GET /sources/4/media/104385 17:13:17.972 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "104385", "source_id" => "4"} Pipelines: [:browser] 17:13:17.973 [debug] QUERY OK source="media_items" db=0.5ms idle=496.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" = ?) [104385] 17:13:17.973 [debug] QUERY OK source="tasks" db=0.4ms queue=0.1ms idle=496.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" [104385] 17:13:17.974 [debug] QUERY OK source="sources" db=0.6ms idle=495.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" = ?) [4] 17:13:17.974 [debug] QUERY OK source="settings" db=0.2ms idle=496.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 [] 17:13:17.975 [debug] QUERY OK source="settings" db=0.2ms idle=495.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 [] 17:13:17.975 [debug] QUERY OK source="settings" db=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 [] 17:13:17.977 [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] 17:13:17.979 [info] Sent 200 in 7ms 17:13:18.472 [info] GET /sources/4/media/104385/edit 17:13:18.472 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "104385", "source_id" => "4"} Pipelines: [:browser] 17:13:18.473 [debug] QUERY OK source="media_items" db=0.3ms idle=498.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" = ?) [104385] 17:13:18.474 [debug] QUERY OK source="settings" db=0.3ms idle=498.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 [] 17:13:18.475 [debug] QUERY OK source="settings" db=0.2ms idle=497.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 [] 17:13:18.476 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=326.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 [] 17:13:18.478 [info] Sent 200 in 6ms 17:13:18.973 [info] GET /sources/4/media/106565 17:13:18.973 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "106565", "source_id" => "4"} Pipelines: [:browser] 17:13:18.974 [debug] QUERY OK source="media_items" db=0.4ms idle=818.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" = ?) [106565] 17:13:18.975 [debug] QUERY OK source="tasks" db=0.2ms idle=501.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" [106565] 17:13:18.975 [debug] QUERY OK source="sources" db=0.5ms idle=500.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" = ?) [4] 17:13:18.976 [debug] QUERY OK source="settings" db=0.2ms idle=500.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 [] 17:13:18.976 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:13:18.977 [debug] QUERY OK source="settings" db=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 [] 17:13:18.979 [debug] QUERY OK source="media_profiles" db=0.2ms idle=3.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] 17:13:18.981 [info] Sent 200 in 8ms 17:13:19.474 [info] GET /sources/4/media/106565/edit 17:13:19.474 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "106565", "source_id" => "4"} Pipelines: [:browser] 17:13:19.475 [debug] QUERY OK source="media_items" db=0.5ms idle=497.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" = ?) [106565] 17:13:19.476 [debug] QUERY OK source="settings" db=0.2ms idle=498.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 [] 17:13:19.476 [debug] QUERY OK source="settings" db=0.2ms idle=497.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 [] 17:13:19.477 [debug] QUERY OK source="settings" db=0.3ms idle=326.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 [] 17:13:19.479 [info] Sent 200 in 5ms 17:13:46.686 [info] {"source":"oban","duration":1427,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:13:59.583 [info] GET /sources/4/media/105462/edit 17:13:59.583 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "105462", "source_id" => "4"} Pipelines: [:browser] 17:13:59.584 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=1232.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" = ?) [105462] 17:13:59.585 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=350.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 [] 17:13:59.586 [debug] QUERY OK source="settings" db=0.4ms idle=344.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 [] 17:13:59.587 [debug] QUERY OK source="settings" db=0.2ms idle=235.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 [] 17:13:59.589 [info] Sent 200 in 5ms 17:13:59.894 [info] GET /sources/4/media/103341/edit 17:13:59.894 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "103341", "source_id" => "4"} Pipelines: [:browser] 17:13:59.895 [debug] QUERY OK source="media_items" db=0.5ms idle=543.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" = ?) [103341] 17:13:59.896 [debug] QUERY OK source="settings" db=0.3ms idle=311.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 [] 17:13:59.897 [debug] QUERY OK source="settings" db=0.2ms idle=311.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 [] 17:13:59.898 [debug] QUERY OK source="settings" db=0.2ms idle=311.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 [] 17:13:59.900 [info] Sent 200 in 5ms 17:14:00.408 [info] GET /sources/5/media/104664/edit 17:14:00.408 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "104664", "source_id" => "5"} Pipelines: [:browser] 17:14:00.409 [debug] QUERY OK source="media_items" db=0.3ms idle=512.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" = ?) [104664] 17:14:00.410 [debug] QUERY OK source="settings" db=0.2ms idle=512.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 [] 17:14:00.410 [debug] QUERY OK source="settings" db=0.1ms idle=512.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 [] 17:14:00.411 [debug] QUERY OK source="settings" db=0.2ms idle=174.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 [] 17:14:00.413 [info] Sent 200 in 4ms 17:14:00.877 [info] {"source":"oban","duration":353,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:14:00.895 [info] GET /sources/4/media/102836 17:14:00.895 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "102836", "source_id" => "4"} Pipelines: [:browser] 17:14:00.896 [debug] QUERY OK source="media_items" db=0.7ms idle=486.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" = ?) [102836] 17:14:00.897 [debug] QUERY OK source="tasks" db=0.4ms queue=0.1ms idle=486.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" [102836] 17:14:00.897 [debug] QUERY OK source="sources" db=0.6ms idle=486.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" = ?) [4] 17:14:00.898 [debug] QUERY OK source="settings" db=0.2ms idle=486.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 [] 17:14:00.899 [debug] QUERY OK source="settings" db=0.2ms idle=20.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 [] 17:14:00.899 [debug] QUERY OK source="settings" db=0.2ms queue=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 [] 17:14:00.901 [debug] QUERY OK source="media_profiles" db=0.3ms idle=3.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] 17:14:00.904 [info] Sent 200 in 9ms 17:14:01.395 [info] GET /sources/4/media/102834 17:14:01.395 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "102834", "source_id" => "4"} Pipelines: [:browser] 17:14:01.396 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=496.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" = ?) [102834] 17:14:01.397 [debug] QUERY OK source="tasks" db=0.3ms idle=496.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" [102834] 17:14:01.397 [debug] QUERY OK source="sources" db=0.6ms idle=495.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" = ?) [4] 17:14:01.398 [debug] QUERY OK source="settings" db=0.4ms idle=158.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 [] 17:14:01.399 [debug] QUERY OK source="settings" db=0.4ms idle=152.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 [] 17:14:01.400 [debug] QUERY OK source="settings" db=0.4ms 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 [] 17:14:01.402 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 17:14:01.404 [info] Sent 200 in 9ms 17:14:16.687 [info] {"source":"oban","duration":919,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:14:30.061 [info] GET /sources/5/media/104662/edit 17:14:30.061 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "104662", "source_id" => "5"} Pipelines: [:browser] 17:14:30.062 [debug] QUERY OK source="media_items" db=0.3ms queue=0.1ms idle=1710.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" = ?) [104662] 17:14:30.063 [debug] QUERY OK source="settings" db=0.2ms idle=764.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 [] 17:14:30.064 [debug] QUERY OK source="settings" db=0.2ms idle=758.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 [] 17:14:30.065 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=712.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 [] 17:14:30.067 [info] Sent 200 in 5ms 17:14:30.108 [info] GET /sources/5/media/105196 17:14:30.108 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "105196", "source_id" => "5"} Pipelines: [:browser] 17:14:30.109 [debug] QUERY OK source="media_items" db=0.4ms idle=757.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" = ?) [105196] 17:14:30.110 [debug] QUERY OK source="tasks" db=0.4ms idle=47.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" [105196] 17:14:30.111 [debug] QUERY OK source="sources" db=0.8ms idle=47.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" = ?) [5] 17:14:30.112 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=47.9ms 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" = ?) [2875] 17:14:30.113 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=47.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 [] 17:14:30.113 [debug] QUERY OK source="settings" db=0.3ms 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 [] 17:14:30.114 [debug] QUERY OK source="settings" db=0.3ms 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 [] 17:14:30.116 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=4.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] 17:14:30.120 [info] Sent 200 in 11ms 17:14:30.608 [info] GET /sources/5/media/106312/edit 17:14:30.609 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "106312", "source_id" => "5"} Pipelines: [:browser] 17:14:30.610 [debug] QUERY OK source="media_items" db=0.2ms idle=495.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" = ?) [106312] 17:14:30.610 [debug] QUERY OK source="settings" db=0.2ms idle=495.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 [] 17:14:30.611 [debug] QUERY OK source="settings" db=0.1ms idle=494.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 [] 17:14:30.612 [debug] QUERY OK source="settings" db=0.1ms queue=0.1ms idle=311.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 [] 17:14:30.614 [info] Sent 200 in 5ms 17:14:31.111 [info] GET /sources/4/media/104925 17:14:31.111 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "104925", "source_id" => "4"} Pipelines: [:browser] 17:14:31.112 [debug] QUERY OK source="media_items" db=0.5ms idle=805.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" = ?) [104925] 17:14:31.113 [debug] QUERY OK source="tasks" db=0.5ms idle=503.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" [104925] 17:14:31.114 [debug] QUERY OK source="sources" db=0.6ms idle=502.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" = ?) [4] 17:14:31.115 [debug] QUERY OK source="oban_jobs" db=0.7ms idle=503.2ms 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" = ?) [2839] 17:14:31.116 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=503.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 [] 17:14:31.116 [debug] QUERY OK source="settings" db=0.3ms 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 [] 17:14:31.117 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:14:31.119 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=5.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] 17:14:31.122 [info] Sent 200 in 11ms 17:14:31.610 [info] GET /sources/4/media/105462 17:14:31.610 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "105462", "source_id" => "4"} Pipelines: [:browser] 17:14:31.611 [debug] QUERY OK source="media_items" db=0.4ms queue=0.2ms idle=494.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" = ?) [105462] 17:14:31.612 [debug] QUERY OK source="tasks" db=0.3ms idle=494.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" [105462] 17:14:31.612 [debug] QUERY OK source="sources" db=0.5ms idle=492.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" = ?) [4] 17:14:31.613 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=310.9ms 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" = ?) [2892] 17:14:31.614 [debug] QUERY OK source="settings" db=0.2ms idle=305.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 [] 17:14:31.614 [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 [] 17:14:31.615 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:14:31.616 [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] 17:14:31.619 [info] Sent 200 in 9ms 17:14:32.714 [info] GET /sources/5/media/105741/edit 17:14:32.715 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "105741", "source_id" => "5"} Pipelines: [:browser] 17:14:32.715 [info] GET /sources/5/media/106309 17:14:32.715 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "106309", "source_id" => "5"} Pipelines: [:browser] 17:14:32.716 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=1100.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" = ?) [105741] 17:14:32.716 [debug] QUERY OK source="media_items" db=0.4ms idle=1100.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" = ?) [106309] 17:14:32.717 [debug] QUERY OK source="settings" db=0.4ms idle=1099.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 [] 17:14:32.717 [debug] QUERY OK source="tasks" db=0.4ms idle=413.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" [106309] 17:14:32.718 [debug] QUERY OK source="sources" db=0.6ms idle=406.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" = ?) [5] 17:14:32.718 [debug] QUERY OK source="settings" db=0.4ms queue=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 [] 17:14:32.718 [debug] QUERY OK source="oban_jobs" db=0.4ms idle=1.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" = ?) [2979] 17:14:32.719 [debug] QUERY OK source="settings" db=0.4ms 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 [] 17:14:32.720 [debug] QUERY OK source="settings" db=0.9ms 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 [] 17:14:32.721 [debug] QUERY OK source="settings" db=0.3ms queue=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 [] 17:14:32.722 [info] Sent 200 in 7ms 17:14:32.722 [debug] QUERY OK source="settings" db=0.1ms idle=4.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 [] 17:14:32.724 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 17:14:32.727 [info] Sent 200 in 11ms 17:14:32.875 [info] GET /sources/5/media/106309/edit 17:14:32.875 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "106309", "source_id" => "5"} Pipelines: [:browser] 17:14:32.876 [debug] QUERY OK source="media_items" db=0.4ms idle=156.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" = ?) [106309] 17:14:32.877 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=156.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 [] 17:14:32.877 [debug] QUERY OK source="settings" db=0.2ms idle=155.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 [] 17:14:32.878 [debug] QUERY OK source="settings" db=0.3ms idle=155.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 [] 17:14:32.880 [info] Sent 200 in 5ms 17:14:33.375 [info] GET /sources/5/media/104662 17:14:33.376 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "104662", "source_id" => "5"} Pipelines: [:browser] 17:14:33.376 [debug] QUERY OK source="media_items" db=0.2ms idle=499.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" = ?) [104662] 17:14:33.377 [debug] QUERY OK source="tasks" db=0.6ms idle=499.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" [104662] 17:14:33.377 [debug] QUERY OK source="sources" db=0.7ms idle=498.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" = ?) [5] 17:14:33.378 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=72.2ms 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" = ?) [2824] 17:14:33.379 [debug] QUERY OK source="settings" db=0.2ms idle=66.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 [] 17:14:33.379 [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 [] 17:14:33.380 [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 [] 17:14:33.382 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=3.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] 17:14:33.385 [info] Sent 200 in 9ms 17:14:33.876 [info] GET /sources/5/media/106312 17:14:33.877 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "106312", "source_id" => "5"} Pipelines: [:browser] 17:14:33.877 [debug] QUERY OK source="media_items" db=0.3ms idle=498.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" = ?) [106312] 17:14:33.879 [debug] QUERY OK source="tasks" db=0.6ms idle=498.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" [106312] 17:14:33.879 [debug] QUERY OK source="sources" db=0.6ms idle=498.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" = ?) [5] 17:14:33.879 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=498.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" = ?) [2980] 17:14:33.880 [debug] QUERY OK source="settings" db=0.2ms idle=498.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 [] 17:14:33.880 [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 [] 17:14:33.881 [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 [] 17:14:33.883 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms 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] 17:14:33.886 [info] Sent 200 in 9ms 17:14:46.690 [info] {"source":"oban","duration":1367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:15:00.879 [info] {"source":"oban","duration":342,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:15:16.691 [info] {"source":"oban","duration":1174,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:15:21.291 [info] GET /sources/5/media/104664 17:15:21.292 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "104664", "source_id" => "5"} Pipelines: [:browser] 17:15:21.293 [debug] QUERY OK source="media_items" db=0.5ms idle=940.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" = ?) [104664] 17:15:21.294 [debug] QUERY OK source="tasks" db=0.4ms idle=941.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" [104664] 17:15:21.294 [debug] QUERY OK source="sources" db=0.7ms idle=941.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" = ?) [5] 17:15:21.295 [debug] QUERY OK source="oban_jobs" db=0.4ms idle=893.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" = ?) [2825] 17:15:21.296 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=888.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 [] 17:15:21.296 [debug] QUERY OK source="settings" db=0.3ms 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 [] 17:15:21.297 [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 [] 17:15:21.299 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 17:15:21.302 [info] Sent 200 in 11ms 17:15:21.541 [info] GET /sources/5/media/105196/edit 17:15:21.541 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "105196", "source_id" => "5"} Pipelines: [:browser] 17:15:21.542 [debug] QUERY OK source="media_items" db=0.2ms idle=245.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" = ?) [105196] 17:15:21.543 [debug] QUERY OK source="settings" db=0.2ms idle=245.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 [] 17:15:21.544 [debug] QUERY OK source="settings" db=0.2ms idle=244.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 [] 17:15:21.545 [debug] QUERY OK source="settings" db=0.3ms idle=141.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 [] 17:15:21.546 [info] Sent 200 in 5ms 17:15:22.033 [info] GET /sources/1/media/104642 17:15:22.034 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "104642", "source_id" => "1"} Pipelines: [:browser] 17:15:22.035 [debug] QUERY OK source="media_items" db=0.4ms idle=625.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" = ?) [104642] 17:15:22.036 [debug] QUERY OK source="tasks" db=0.4ms idle=493.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" [104642] 17:15:22.036 [debug] QUERY OK source="sources" db=0.6ms idle=492.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] 17:15:22.037 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=493.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" IN (?,?)) [2811, 2908] 17:15:22.038 [debug] QUERY OK source="settings" db=0.3ms 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 [] 17:15:22.039 [debug] QUERY OK source="settings" db=0.5ms queue=0.1ms 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 [] 17:15:22.040 [debug] QUERY OK source="settings" db=0.2ms idle=4.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 [] 17:15:22.042 [debug] QUERY OK source="media_profiles" db=0.4ms idle=5.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] 17:15:22.045 [info] Sent 200 in 11ms 17:15:22.534 [info] GET /sources/4/media/104925/edit 17:15:22.534 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "104925", "source_id" => "4"} Pipelines: [:browser] 17:15:22.535 [debug] QUERY OK source="media_items" db=0.5ms queue=0.1ms idle=495.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" = ?) [104925] 17:15:22.536 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=495.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 [] 17:15:22.537 [debug] QUERY OK source="settings" db=0.3ms idle=494.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 [] 17:15:22.538 [debug] QUERY OK source="settings" db=0.3ms idle=132.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 [] 17:15:22.540 [info] Sent 200 in 6ms 17:15:23.034 [info] GET /sources/4/media/103341 17:15:23.035 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "103341", "source_id" => "4"} Pipelines: [:browser] 17:15:23.036 [debug] QUERY OK source="media_items" db=0.4ms idle=623.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" = ?) [103341] 17:15:23.036 [debug] QUERY OK source="tasks" db=0.2ms idle=500.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" [103341] 17:15:23.037 [debug] QUERY OK source="sources" db=0.4ms idle=499.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" = ?) [4] 17:15:23.037 [debug] QUERY OK source="settings" db=0.2ms idle=500.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 [] 17:15:23.038 [debug] QUERY OK source="settings" db=0.1ms idle=499.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 [] 17:15:23.038 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:15:23.040 [debug] QUERY OK source="media_profiles" db=0.3ms 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] 17:15:23.042 [info] Sent 200 in 7ms 17:15:32.732 [info] GET /sources/5/media/105195/edit 17:15:32.732 [info] GET /sources/1/media/105678 17:15:32.732 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "105195", "source_id" => "5"} Pipelines: [:browser] 17:15:32.732 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "105678", "source_id" => "1"} Pipelines: [:browser] 17:15:32.733 [debug] QUERY OK source="media_items" db=1.0ms idle=380.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" = ?) [105678] 17:15:32.733 [debug] QUERY OK source="media_items" db=1.0ms idle=380.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" = ?) [105195] 17:15:32.734 [debug] QUERY OK source="tasks" db=0.4ms queue=0.1ms idle=382.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" [105678] 17:15:32.735 [debug] QUERY OK source="sources" db=0.7ms idle=309.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] 17:15:32.735 [debug] QUERY OK source="settings" db=1.0ms idle=302.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 [] 17:15:32.736 [debug] QUERY OK source="oban_jobs" db=0.6ms idle=1.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" = ?) [2894] 17:15:32.736 [debug] QUERY OK source="settings" db=0.7ms 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 [] 17:15:32.737 [debug] QUERY OK source="settings" db=0.3ms 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 [] 17:15:32.737 [debug] QUERY OK source="settings" db=0.4ms 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 [] 17:15:32.737 [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 [] 17:15:32.738 [debug] QUERY OK source="settings" db=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 [] 17:15:32.739 [info] Sent 200 in 7ms 17:15:32.740 [debug] QUERY OK source="media_profiles" db=0.3ms idle=3.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] 17:15:32.743 [info] Sent 200 in 11ms 17:15:33.100 [info] GET /sources/5/media/105741 17:15:33.100 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "105741", "source_id" => "5"} Pipelines: [:browser] 17:15:33.101 [debug] QUERY OK source="media_items" db=0.4ms idle=363.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" = ?) [105741] 17:15:33.102 [debug] QUERY OK source="tasks" db=0.3ms idle=364.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" [105741] 17:15:33.103 [debug] QUERY OK source="sources" db=0.6ms idle=364.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" = ?) [5] 17:15:33.104 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=364.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" = ?) [2927] 17:15:33.104 [debug] QUERY OK source="settings" db=0.2ms idle=364.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 [] 17:15:33.105 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:15:33.106 [debug] QUERY OK source="settings" db=0.3ms 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 [] 17:15:33.108 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=4.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] 17:15:33.111 [info] Sent 200 in 11ms 17:15:33.601 [info] GET /sources/1/media/106250 17:15:33.601 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "106250", "source_id" => "1"} Pipelines: [:browser] 17:15:33.602 [debug] QUERY OK source="media_items" db=0.4ms idle=496.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" = ?) [106250] 17:15:33.603 [debug] QUERY OK source="tasks" db=0.3ms queue=0.1ms idle=496.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" [106250] 17:15:33.603 [debug] QUERY OK source="sources" db=0.6ms idle=494.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] 17:15:33.604 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=177.2ms 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" = ?) [2953] 17:15:33.605 [debug] QUERY OK source="settings" db=0.2ms idle=171.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 [] 17:15:33.606 [debug] QUERY OK source="settings" db=0.3ms 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 [] 17:15:33.607 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:15:33.608 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 17:15:33.612 [info] Sent 200 in 10ms 17:15:34.102 [info] GET /sources/5/media/105194/edit 17:15:34.102 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "105194", "source_id" => "5"} Pipelines: [:browser] 17:15:34.103 [debug] QUERY OK source="media_items" db=0.4ms idle=498.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" = ?) [105194] 17:15:34.104 [debug] QUERY OK source="settings" db=0.2ms idle=498.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 [] 17:15:34.104 [debug] QUERY OK source="settings" db=0.2ms idle=498.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 [] 17:15:34.105 [debug] QUERY OK source="settings" db=0.2ms idle=498.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 [] 17:15:34.107 [info] Sent 200 in 5ms 17:15:46.693 [info] {"source":"oban","duration":1404,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:16:00.879 [info] {"source":"oban","duration":298,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:16:09.708 [info] GET /sources/5/media/105743 17:16:09.708 [info] GET /sources/5/media/105742/edit 17:16:09.709 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "105743", "source_id" => "5"} Pipelines: [:browser] 17:16:09.709 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "105742", "source_id" => "5"} Pipelines: [:browser] 17:16:09.710 [debug] QUERY OK source="media_items" db=0.7ms idle=1206.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" = ?) [105743] 17:16:09.710 [debug] QUERY OK source="media_items" db=0.7ms idle=1199.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" = ?) [105742] 17:16:09.711 [debug] QUERY OK source="tasks" db=0.6ms queue=0.2ms idle=359.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" [105743] 17:16:09.711 [debug] QUERY OK source="settings" db=0.9ms idle=198.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 [] 17:16:09.712 [debug] QUERY OK source="sources" db=1.0ms queue=0.1ms idle=205.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" = ?) [5] 17:16:09.712 [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 [] 17:16:09.712 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=2.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" = ?) [2929] 17:16:09.713 [debug] QUERY OK source="settings" db=0.6ms 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 [] 17:16:09.714 [debug] QUERY OK source="settings" db=1.4ms 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 [] 17:16:09.715 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:16:09.716 [info] Sent 200 in 7ms 17:16:09.716 [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 [] 17:16:09.718 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 17:16:09.721 [info] Sent 200 in 12ms 17:16:10.143 [info] GET /sources/5/media/105195 17:16:10.144 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "105195", "source_id" => "5"} Pipelines: [:browser] 17:16:10.145 [debug] QUERY OK source="media_items" db=0.5ms idle=430.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" = ?) [105195] 17:16:10.146 [debug] QUERY OK source="tasks" db=0.5ms queue=0.1ms idle=430.5ms 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" [105195] 17:16:10.146 [debug] QUERY OK source="sources" db=0.6ms idle=430.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" = ?) [5] 17:16:10.147 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=430.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" = ?) [2874] 17:16:10.148 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=429.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 [] 17:16:10.148 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:16:10.149 [debug] QUERY OK source="settings" db=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 [] 17:16:10.151 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 17:16:10.154 [info] Sent 200 in 10ms 17:16:10.644 [info] GET /sources/5/media/105743/edit 17:16:10.644 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "105743", "source_id" => "5"} Pipelines: [:browser] 17:16:10.645 [debug] QUERY OK source="media_items" db=0.3ms idle=496.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" = ?) [105743] 17:16:10.646 [debug] QUERY OK source="settings" db=0.2ms idle=496.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 [] 17:16:10.647 [debug] QUERY OK source="settings" db=0.3ms idle=495.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 [] 17:16:10.647 [debug] QUERY OK source="settings" db=0.2ms idle=139.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 [] 17:16:10.650 [info] Sent 200 in 5ms 17:16:11.146 [info] GET /sources/5/media/105194 17:16:11.147 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "105194", "source_id" => "5"} Pipelines: [:browser] 17:16:11.148 [debug] QUERY OK source="media_items" db=0.5ms idle=631.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" = ?) [105194] 17:16:11.149 [debug] QUERY OK source="tasks" db=0.3ms idle=503.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" [105194] 17:16:11.149 [debug] QUERY OK source="sources" db=0.4ms idle=502.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" = ?) [5] 17:16:11.150 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=502.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" = ?) [2873] 17:16:11.150 [debug] QUERY OK source="settings" db=0.3ms idle=502.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 [] 17:16:11.151 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:16:11.152 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:16:11.154 [debug] QUERY OK source="media_profiles" db=0.2ms queue=0.1ms idle=4.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] 17:16:11.157 [info] Sent 200 in 10ms 17:16:16.695 [info] {"source":"oban","duration":1119,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:16:46.697 [info] {"source":"oban","duration":1134,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:17:00.163 [info] GET /sources/5/media/105742 17:17:00.164 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "105742", "source_id" => "5"} Pipelines: [:browser] 17:17:00.164 [debug] QUERY OK source="media_items" db=0.4ms idle=1812.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" = ?) [105742] 17:17:00.165 [debug] QUERY OK source="tasks" db=0.3ms idle=1552.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" [105742] 17:17:00.166 [debug] QUERY OK source="sources" db=0.7ms idle=1546.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" = ?) [5] 17:17:00.167 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=551.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" = ?) [2928] 17:17:00.168 [debug] QUERY OK source="settings" db=0.3ms idle=546.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 [] 17:17:00.168 [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 [] 17:17:00.169 [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 [] 17:17:00.171 [debug] QUERY OK source="media_profiles" db=0.3ms idle=4.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] 17:17:00.175 [info] Sent 200 in 11ms 17:17:00.881 [info] {"source":"oban","duration":371,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:17:16.699 [info] {"source":"oban","duration":917,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:17:17.090 [info] GET /sources/4 17:17:17.090 [info] GET /media_profiles 17:17:17.090 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "4"} Pipelines: [:browser] 17:17:17.090 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 17:17:17.091 [debug] QUERY OK source="sources" db=0.7ms idle=1436.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" = ?) [4] 17:17:17.091 [debug] QUERY OK source="media_profiles" db=0.7ms idle=739.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" [] 17:17:17.092 [debug] QUERY OK source="media_profiles" db=0.3ms queue=0.1ms idle=442.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] 17:17:17.092 [debug] QUERY OK source="settings" db=0.2ms idle=436.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 [] 17:17:17.093 [debug] QUERY OK source="tasks" db=0.5ms idle=393.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 (?,?,?,?)) [4, "executing", "available", "scheduled", "retryable"] 17:17:17.093 [debug] QUERY OK source="settings" db=0.5ms 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 [] 17:17:17.094 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=1.9ms 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" = ?) [2945] 17:17:17.095 [debug] QUERY OK source="settings" db=0.6ms 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 [] 17:17:17.095 [debug] QUERY OK source="settings" db=1.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 [] 17:17:17.096 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:17:17.097 [debug] QUERY OK source="settings" db=0.2ms 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 [] 17:17:17.098 [info] Sent 200 in 8ms 17:17:17.100 [debug] QUERY OK source="sources" db=0.3ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 17:17:17.102 [debug] QUERY OK source="media_items" db=0.9ms 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 ((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")))) [4] 17:17:17.104 [debug] QUERY OK source="media_items" db=1.6ms idle=6.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 ? [4, 10, 0] 17:17:17.105 [debug] QUERY OK source="sources" db=0.3ms idle=8.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" = ?) [4] 17:17:17.106 [debug] QUERY OK source="media_items" db=0.4ms idle=8.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [4] 17:17:17.108 [debug] QUERY OK source="media_items" db=1.1ms idle=6.1ms 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 ? [4, 10, 0] 17:17:17.110 [debug] QUERY OK source="sources" db=0.4ms 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" = ?) [4] 17:17:17.111 [debug] QUERY OK source="media_items" db=0.6ms 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 ((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"))))) [4] 17:17:17.113 [debug] QUERY OK source="media_items" db=1.3ms 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 ? [4, 10, 0] 17:17:17.115 [info] Sent 200 in 24ms 17:17:37.421 [info] GET /sources/2/sync_files_on_disk 17:17:37.422 [debug] QUERY OK source="settings" db=0.5ms idle=1070.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 [] 17:17:37.423 [debug] QUERY OK source="settings" db=0.2ms idle=1071.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 [] 17:17:37.423 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 17:17:37.423 [error] #PID<0.12099.0> running PinchflatWeb.Endpoint (connection #PID<0.12098.0>, stream id 1) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sources/2/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/2/sync_files_on_disk (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12098.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/2/sync_files_on_disk", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 54728}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12099.0>, params: %{}, path_info: ["sources", "2", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.186"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "216.73.216.186"} ], request_path: "/sources/2/sync_files_on_disk", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJExl_7_0TgeybQAAS0C"} ], 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.12098.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/2/sync_files_on_disk", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 54728}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, 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/2/sync_files_on_disk (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12098.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/2/sync_files_on_disk", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 54728}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12099.0>, params: %{}, path_info: ["sources", "2", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, (truncated) 17:17:37.592 [info] GET /media_profiles/1/edit 17:17:37.593 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.edit/2 Parameters: %{"id" => "1"} Pipelines: [:browser] 17:17:37.593 [debug] QUERY OK source="media_profiles" db=0.3ms idle=1241.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] 17:17:37.594 [debug] QUERY OK source="settings" db=0.2ms idle=904.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 [] 17:17:37.595 [debug] QUERY OK source="settings" db=0.2ms queue=0.1ms idle=898.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 [] 17:17:37.596 [debug] QUERY OK source="settings" db=0.2ms idle=173.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 [] 17:17:37.599 [info] Sent 200 in 6ms 17:17:38.093 [info] GET /sources/2/force_index 17:17:38.094 [debug] QUERY OK source="settings" db=0.2ms idle=499.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 [] 17:17:38.095 [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 [] 17:17:38.095 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 17:17:38.095 [error] #PID<0.12101.0> running PinchflatWeb.Endpoint (connection #PID<0.12098.0>, stream id 3) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sources/2/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/2/force_index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12098.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/2/force_index", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 54728}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE" }, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12101.0>, params: %{}, path_info: ["sources", "2", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.186"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "216.73.216.186"} ], request_path: "/sources/2/force_index", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJExmCcSya7Hfa8AAt7B"} ], 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.12098.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/2/force_index", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 54728}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, 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 /sources/2/force_index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12098.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/2/force_index", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 54728}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 3, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAA (truncated) 17:17:38.595 [info] GET /media_profiles/2/edit 17:17:38.595 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.edit/2 Parameters: %{"id" => "2"} Pipelines: [:browser] 17:17:38.596 [debug] QUERY OK source="media_profiles" db=0.5ms idle=1.0e3ms 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" = ?) [2] 17:17:38.597 [debug] QUERY OK source="settings" db=0.2ms idle=906.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 [] 17:17:38.597 [debug] QUERY OK source="settings" db=0.3ms idle=900.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 [] 17:17:38.598 [debug] QUERY OK source="settings" db=0.2ms idle=504.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 [] 17:17:38.602 [info] Sent 200 in 6ms 17:17:39.095 [info] GET /sources/5/force_metadata_refresh 17:17:39.096 [debug] QUERY OK source="settings" db=0.2ms idle=498.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 [] 17:17:39.096 [debug] QUERY OK source="settings" db=0.3ms idle=498.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 [] 17:17:39.097 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 17:17:39.097 [error] #PID<0.12103.0> running PinchflatWeb.Endpoint (connection #PID<0.12098.0>, stream id 5) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sources/5/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/5/force_metadata_refresh (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12098.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/5/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 54728}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE" }, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12103.0>, params: %{}, path_info: ["sources", "5", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.186"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "216.73.216.186"} ], request_path: "/sources/5/force_metadata_refresh", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJExmGLMnpwhJBkAAt-B"} ], 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.12098.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/5/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 54728}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/5/force_metadata_refresh (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12098.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/5/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 54728}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRUFScHl1VUQzeThTeUZpUmVqZHF2TVJ0.hTE0g6y4sQdbTrJolAzixKYW22GA_l55zMm627xrKlE", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 5, has_body: false, host_info: :undefined }}, assigns: %{}, (truncated) 17:17:46.702 [info] {"source":"oban","duration":1456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:00.882 [info] {"source":"oban","duration":325,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:18:15.440 [info] GET /sources/3/force_metadata_refresh 17:18:15.440 [info] GET /sources/4/force_metadata_refresh 17:18:15.441 [debug] QUERY OK source="settings" db=0.7ms queue=0.1ms idle=1089.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 [] 17:18:15.441 [debug] QUERY OK source="settings" db=0.8ms idle=1089.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 [] 17:18:15.442 [debug] QUERY OK source="settings" db=0.4ms queue=0.1ms idle=1090.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 [] 17:18:15.442 [debug] QUERY OK source="settings" db=0.5ms idle=671.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 [] 17:18:15.442 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 17:18:15.442 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 17:18:15.443 [error] #PID<0.12112.0> running PinchflatWeb.Endpoint (connection #PID<0.12109.0>, stream id 1) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sources/3/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/3/force_metadata_refresh (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12109.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 40112}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12112.0>, params: %{}, path_info: ["sources", "3", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.186"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "216.73.216.186"} ], request_path: "/sources/3/force_metadata_refresh", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJExoNkabxnht1QAAS3C"} ], 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.12109.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 40112}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, 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/3/force_metadata_refresh (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12109.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 40112}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12112.0>, params: %{}, path_info: ["sources", "3", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ (truncated) 17:18:15.443 [error] #PID<0.12111.0> running PinchflatWeb.Endpoint (connection #PID<0.12110.0>, stream id 1) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sources/4/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/4/force_metadata_refresh (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12110.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 40126}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12111.0>, params: %{}, path_info: ["sources", "4", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.186"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "216.73.216.186"} ], request_path: "/sources/4/force_metadata_refresh", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJExoNkab06K1WgAAt_B"} ], 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.12110.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 40126}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, 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/4/force_metadata_refresh (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12110.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 40126}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12111.0>, params: %{}, path_info: ["sources", "4", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ (truncated) 17:18:15.590 [info] GET /sources/2/force_metadata_refresh 17:18:15.591 [debug] QUERY OK source="settings" db=0.3ms idle=814.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 [] 17:18:15.592 [debug] QUERY OK source="settings" db=0.3ms idle=150.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 [] 17:18:15.592 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 17:18:15.593 [error] #PID<0.12113.0> running PinchflatWeb.Endpoint (connection #PID<0.12110.0>, stream id 2) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sources/2/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/2/force_metadata_refresh (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12110.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/2/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 40126}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12113.0>, params: %{}, path_info: ["sources", "2", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.186"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "216.73.216.186"} ], request_path: "/sources/2/force_metadata_refresh", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJExoOIV-5WQ72sAAuAB"} ], 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.12110.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/2/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 40126}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, 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 /sources/2/force_metadata_refresh (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12110.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/2/force_metadata_refresh", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 40126}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12113.0>, params: %{}, path_info: ["sources", "2", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ (truncated) 17:18:16.093 [info] GET /sources/5/edit 17:18:16.093 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "5"} Pipelines: [:browser] 17:18:16.094 [debug] QUERY OK source="sources" db=0.4ms queue=0.1ms idle=651.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" = ?) [5] 17:18:16.095 [debug] QUERY OK source="media_profiles" db=0.4ms idle=503.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 ORDER BY m0."name" [] 17:18:16.096 [debug] QUERY OK source="settings" db=0.3ms queue=0.1ms idle=503.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 [] 17:18:16.097 [debug] QUERY OK source="settings" db=0.2ms idle=324.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 [] 17:18:16.098 [debug] QUERY OK source="settings" db=0.2ms idle=318.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 [] 17:18:16.103 [info] Sent 200 in 10ms 17:18:16.704 [info] {"source":"oban","duration":1409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:46.706 [info] {"source":"oban","duration":1461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:49.002 [info] GET /sources/4/force_index 17:18:49.003 [debug] QUERY OK source="settings" db=0.3ms idle=1160.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 [] 17:18:49.003 [debug] QUERY OK source="settings" db=0.3ms idle=651.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 [] 17:18:49.003 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 17:18:49.004 [error] #PID<0.12120.0> running PinchflatWeb.Endpoint (connection #PID<0.12119.0>, stream id 1) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sources/4/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/4/force_index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12119.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_index", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 49592}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12120.0>, params: %{}, path_info: ["sources", "4", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.186"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "216.73.216.186"} ], request_path: "/sources/4/force_index", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJExqKmNPFm7yFgAAS5C"} ], 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.12119.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_index", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 49592}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, 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/4/force_index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12119.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_index", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 49592}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12120.0>, params: %{}, path_info: ["sources", "4", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"h (truncated) 17:18:49.329 [info] GET /sources/3/force_index 17:18:49.329 [debug] QUERY OK source="settings" db=0.3ms idle=977.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 [] 17:18:49.330 [debug] QUERY OK source="settings" db=0.4ms idle=492.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 [] 17:18:49.330 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 17:18:49.331 [error] #PID<0.12121.0> running PinchflatWeb.Endpoint (connection #PID<0.12119.0>, stream id 2) terminated Server: pinchflat.guano.duckdns.org:80 (http) Request: GET /sources/3/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/3/force_index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12119.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_index", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 49592}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12121.0>, params: %{}, path_info: ["sources", "3", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.guano.duckdns.org"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.186"}, {"x-forwarded-host", "pinchflat.guano.duckdns.org"}, {"x-forwarded-port", "443"}, {"x-forwarded-proto", "https"}, {"x-forwarded-server", "7b78ea608819"}, {"x-real-ip", "216.73.216.186"} ], request_path: "/sources/3/force_index", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GJExqL0K2TZif2gAAS6C"} ], 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.12119.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_index", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 49592}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, 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 /sources/3/force_index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.12119.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_index", host: "pinchflat.guano.duckdns.org", peer: {{192, 168, 80, 3}, 49592}, bindings: %{}, sock: {{192, 168, 80, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.guano.duckdns.org", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.186", "x-forwarded-host" => "pinchflat.guano.duckdns.org", "x-forwarded-port" => "443", "x-forwarded-proto" => "https", "x-forwarded-server" => "7b78ea608819", "x-real-ip" => "216.73.216.186" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 2, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.guano.duckdns.org", method: "GET", owner: #PID<0.12121.0>, params: %{}, path_info: ["sources", "3", "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://pinchflat.guano.duckdns.org", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 80, 3}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"h (truncated) 17:18:49.828 [info] GET /media_profiles/new 17:18:49.829 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.new/2 Parameters: %{} Pipelines: [:browser] 17:18:49.829 [debug] QUERY OK source="settings" db=0.2ms idle=984.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 [] 17:18:49.830 [debug] QUERY OK source="settings" db=0.3ms idle=826.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 [] 17:18:49.831 [debug] QUERY OK source="settings" db=0.2ms idle=826.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 [] 17:18:49.832 [debug] QUERY OK source="settings" db=0.2ms idle=501.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 [] 17:18:49.833 [debug] QUERY OK source="settings" db=0.2ms idle=502.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 [] 17:18:49.836 [info] Sent 200 in 7ms