22:37:20.610 [error] yt-dlp download error for media item #2234: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 6LSX5qPu5CA: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 22:37:20.611 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2234},"id":2308,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2194120,"event":"job:exception","queue_time":388828,"attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:37:28.238 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:58.239 [info] {"source":"oban","duration":872,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:00.373 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:38:28.241 [info] {"source":"oban","duration":917,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:58.243 [info] {"source":"oban","duration":835,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:00.374 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:39:28.245 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:58.247 [info] {"source":"oban","duration":796,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:00.375 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:40:28.248 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:58.249 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:00.376 [info] {"source":"oban","duration":232,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:41:28.250 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:58.251 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:00.377 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:42:28.252 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:58.253 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:00.378 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:43:28.254 [info] {"source":"oban","duration":477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:58.255 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:00.379 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:44:28.256 [info] {"source":"oban","duration":753,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:58.258 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:00.380 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:45:28.259 [info] {"source":"oban","duration":809,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:58.261 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:00.381 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:46:28.262 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:58.263 [info] {"source":"oban","duration":453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:00.382 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:47:28.264 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:58.265 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:00.383 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:48:28.266 [info] {"source":"oban","duration":721,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:58.267 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:00.384 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:49:28.268 [info] {"source":"oban","duration":446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:58.269 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:00.385 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:50:28.270 [info] {"source":"oban","duration":680,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:58.271 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:00.386 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:51:28.272 [info] {"source":"oban","duration":653,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:58.273 [info] {"source":"oban","duration":634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:00.387 [info] {"source":"oban","duration":92,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:52:28.274 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:58.275 [info] {"source":"oban","duration":605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:00.388 [info] {"source":"oban","duration":227,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:53:28.276 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:58.277 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:00.389 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:54:28.278 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:58.279 [info] {"source":"oban","duration":647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:00.390 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:55:28.280 [info] {"source":"oban","duration":683,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:58.281 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:00.391 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:56:28.282 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:58.283 [info] {"source":"oban","duration":691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:00.392 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:57:28.284 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:58.285 [info] {"source":"oban","duration":668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:00.393 [info] {"source":"oban","duration":213,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:58:28.286 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:58.288 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:00.394 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:59:28.289 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:58.290 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:00.395 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:00:28.291 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:58.292 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:00.396 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:01:28.293 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:58.294 [info] {"source":"oban","duration":671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:00.397 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:02:28.295 [info] {"source":"oban","duration":764,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:58.296 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:00.398 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:03:28.297 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:58.298 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:00.399 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:04:28.299 [info] {"source":"oban","duration":634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:58.300 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:00.400 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:05:28.301 [info] {"source":"oban","duration":731,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:58.303 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:00.401 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:06:28.304 [info] {"source":"oban","duration":430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:58.305 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:00.402 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:07:28.306 [info] {"source":"oban","duration":682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:58.307 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:00.403 [info] {"source":"oban","duration":106,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:08:28.308 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:58.309 [info] {"source":"oban","duration":793,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:00.404 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:09:28.310 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:58.311 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:00.405 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:10:28.312 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:58.313 [info] {"source":"oban","duration":800,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:00.406 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:11:28.315 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:58.316 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:00.407 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:12:28.317 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:58.318 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:00.408 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:13:28.319 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:58.320 [info] {"source":"oban","duration":605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:00.409 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:14:28.321 [info] {"source":"oban","duration":733,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:58.322 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:00.410 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:15:28.323 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:58.324 [info] {"source":"oban","duration":659,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:00.411 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:16:28.325 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:58.326 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:00.412 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:17:28.327 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:58.328 [info] {"source":"oban","duration":788,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:00.413 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:18:28.330 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:58.332 [info] {"source":"oban","duration":780,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:00.414 [info] {"source":"oban","duration":213,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:19:28.334 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:58.335 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:00.415 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:20:28.336 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:58.338 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:00.416 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:21:28.339 [info] {"source":"oban","duration":801,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:58.341 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:00.417 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:22:28.342 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:58.343 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:00.418 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:23:28.344 [info] {"source":"oban","duration":452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:58.345 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:00.419 [info] {"source":"oban","duration":134,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:24:28.346 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:58.347 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:00.420 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:25:28.349 [info] {"source":"oban","duration":658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:58.350 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:00.421 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:26:28.351 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:58.352 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:00.422 [info] {"source":"oban","duration":244,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:27:28.353 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:58.354 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:00.423 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:28:28.355 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:58.356 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:00.424 [info] {"source":"oban","duration":238,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:29:28.357 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:58.358 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:00.425 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:30:28.359 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:58.360 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:00.426 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:31:28.361 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:58.362 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:00.427 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:32:28.363 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:58.364 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:00.428 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:33:28.365 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:58.366 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:00.429 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:34:28.367 [info] {"source":"oban","duration":736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:58.368 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:00.430 [info] {"source":"oban","duration":142,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:35:28.369 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:58.370 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:00.431 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:36:28.371 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:58.372 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:00.432 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:37:28.373 [info] {"source":"oban","duration":780,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:58.374 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:00.433 [info] {"source":"oban","duration":144,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:38:28.375 [info] {"source":"oban","duration":743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:58.376 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:00.434 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:39:28.377 [info] {"source":"oban","duration":746,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:58.378 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:00.435 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:40:28.379 [info] {"source":"oban","duration":356,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:58.380 [info] {"source":"oban","duration":710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:00.436 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:41:28.381 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:58.382 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:00.437 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:42:28.383 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:58.384 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:00.438 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:43:28.385 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:58.386 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:00.439 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:44:28.387 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:58.388 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:00.440 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:45:28.389 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:58.390 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:00.441 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:46:28.391 [info] {"source":"oban","duration":705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:58.392 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:00.442 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:47:28.393 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:58.395 [info] {"source":"oban","duration":808,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:00.443 [info] {"source":"oban","duration":229,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:48:28.397 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:58.398 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:00.444 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:49:28.399 [info] {"source":"oban","duration":480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:58.400 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:59.956 [info] {"args":{"id":1922},"id":2315,"meta":{},"system_time":1766274599956504000,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:49:59.957 [debug] QUERY OK source="media_items" db=0.1ms idle=1966.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" = ?) [1922] 23:49:59.957 [info] User scripts lifecyle file either not present or is empty. Skipping. 23:49:59.957 [debug] QUERY OK source="sources" db=0.1ms idle=1556.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" = ?) [3] 23:49:59.957 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1007.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:49:59.958 [debug] QUERY OK source="media_items" db=0.2ms 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 [1922] 23:49:59.958 [debug] QUERY OK source="media_metadata" db=0.1ms idle=2.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" = ?) [1922] 23:49:59.959 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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:49:59.959 [debug] QUERY OK source="settings" db=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 23:49:59.959 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 23:49:59.959 [debug] Running yt-dlp command for action: get_downloadable_status 23:49:59.960 [debug] QUERY OK source="settings" db=0.0ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 23:49:59.960 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 23:49:59.960 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 23:49:59.960 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=3E-IVvOV8As --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/25/55/2555fdacae59a323af70b48b559f0e19b90560d617f6f02bec7f12515f6edf8e.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 23:50:00.445 [info] {"source":"oban","duration":213,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:50:01.844 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=3E-IVvOV8As --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/25/55/2555fdacae59a323af70b48b559f0e19b90560d617f6f02bec7f12515f6edf8e.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 3E-IVvOV8As: Join this channel to get access to members-only content like this video, and other exclusive perks. 23:50:01.844 [error] yt-dlp download error for media item #1922: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 3E-IVvOV8As: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 23:50:01.845 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":1922},"id":2315,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":1887964,"event":"job:exception","queue_time":313423,"attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:50:28.401 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:58.402 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:00.446 [info] {"source":"oban","duration":144,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:51:28.403 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:58.405 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:00.447 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:52:28.406 [info] {"source":"oban","duration":735,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:58.407 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:00.448 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:53:28.408 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:58.409 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:00.449 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:54:28.410 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:58.411 [info] {"source":"oban","duration":733,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:00.450 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:55:28.412 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:58.413 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:00.451 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:56:28.414 [info] {"source":"oban","duration":401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:58.415 [info] {"source":"oban","duration":458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:00.452 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:57:28.416 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:58.417 [info] {"source":"oban","duration":699,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:00.453 [info] {"source":"oban","duration":103,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:58:28.418 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:58.419 [info] {"source":"oban","duration":796,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:00.454 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:59:28.420 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:58.421 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:00:00.455 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:00:28.422 [info] {"source":"oban","duration":1032,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":11} 00:00:58.424 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:00.456 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:01:28.425 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:58.426 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:00.457 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:02:28.427 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:58.428 [info] {"source":"oban","duration":682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:00.458 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:03:28.429 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:58.430 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:00.459 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:04:28.431 [info] {"source":"oban","duration":737,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:58.432 [info] {"source":"oban","duration":661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:00.460 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:05:28.433 [info] {"source":"oban","duration":820,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:58.434 [info] {"source":"oban","duration":684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:00.461 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:06:28.435 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:58.436 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:00.462 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:07:28.437 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:58.438 [info] {"source":"oban","duration":691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:00.463 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:08:28.439 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:58.440 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:00.464 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:09:28.441 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:58.442 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:00.465 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:10:28.443 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:58.444 [info] {"source":"oban","duration":660,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:00.466 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:11:28.445 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:58.446 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:00.467 [info] {"source":"oban","duration":217,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:12:28.447 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:58.448 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:00.468 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:13:28.449 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:58.450 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:00.469 [info] {"source":"oban","duration":145,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:14:28.451 [info] {"source":"oban","duration":369,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:58.452 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:00.470 [info] {"source":"oban","duration":90,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:15:28.453 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:58.454 [info] {"source":"oban","duration":694,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:00.471 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:16:28.455 [info] {"source":"oban","duration":792,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:58.456 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:00.472 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:17:28.457 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:58.458 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:00.473 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:18:28.459 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:58.460 [info] {"source":"oban","duration":811,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:00.474 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:19:28.462 [info] {"source":"oban","duration":805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:58.464 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:00.475 [info] {"source":"oban","duration":266,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:20:28.465 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:58.466 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:00.476 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:21:28.467 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:58.468 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:00.477 [info] {"source":"oban","duration":215,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:22:28.470 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:58.471 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:00.478 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:23:28.472 [info] {"source":"oban","duration":619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:58.473 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:00.479 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:24:28.474 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:58.475 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:00.480 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:25:28.476 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:58.477 [info] {"source":"oban","duration":845,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:00.481 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:26:28.479 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:58.480 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:00.482 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:27:28.481 [info] {"source":"oban","duration":661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:58.482 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:00.483 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:28:28.483 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:58.484 [info] {"source":"oban","duration":826,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:00.484 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:29:28.486 [info] {"source":"oban","duration":471,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:58.487 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:00.485 [info] {"source":"oban","duration":391,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:30:28.488 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:58.489 [info] {"source":"oban","duration":716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:00.486 [info] {"source":"oban","duration":140,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:31:28.491 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:58.492 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:00.487 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:32:28.493 [info] {"source":"oban","duration":635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:58.494 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:00.488 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:33:28.495 [info] {"source":"oban","duration":768,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:58.497 [info] {"source":"oban","duration":700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:00.489 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:34:28.499 [info] {"source":"oban","duration":741,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:58.500 [info] {"source":"oban","duration":743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:00.490 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:35:28.501 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:58.502 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:00.491 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:36:28.503 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:58.504 [info] {"source":"oban","duration":781,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:00.492 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:37:28.505 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:58.506 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:00.493 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:38:28.507 [info] {"source":"oban","duration":745,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:58.508 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:00.494 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:39:28.509 [info] {"source":"oban","duration":778,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:58.510 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:00.495 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:40:28.511 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:58.512 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:00.496 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:41:28.513 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:58.514 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:00.497 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:42:28.515 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:58.516 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:43:00.498 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:43:28.517 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:43:58.518 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:44:00.499 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:44:28.519 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:44:58.520 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:00.500 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:45:28.521 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:58.522 [info] {"source":"oban","duration":646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:46:00.501 [info] {"source":"oban","duration":135,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:46:28.523 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:46:58.524 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:47:00.502 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:47:28.525 [info] {"source":"oban","duration":777,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:47:58.527 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:48:00.503 [info] {"source":"oban","duration":90,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:48:28.528 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:48:58.529 [info] {"source":"oban","duration":212,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:49:00.504 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:49:28.530 [info] {"source":"oban","duration":714,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:49:58.531 [info] {"source":"oban","duration":716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:50:00.505 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:50:28.532 [info] {"source":"oban","duration":794,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:50:58.533 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:51:00.506 [info] {"source":"oban","duration":218,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:51:28.534 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:51:58.535 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:52:00.507 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:52:28.536 [info] {"source":"oban","duration":613,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:52:58.537 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:53:00.508 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:53:28.538 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:53:58.539 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:54:00.509 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:54:28.540 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:54:58.542 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:55:00.510 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:55:28.543 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:55:58.544 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:56:00.511 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:56:28.545 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:56:58.546 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:57:00.512 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:57:28.547 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:57:58.548 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:58:00.513 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:58:28.549 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:58:58.550 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:59:00.514 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:59:28.551 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:59:58.552 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:00:00.516 [info] {"source":"oban","duration":1201,"event":"plugin:stop","jobs":[2337],"plugin":"Oban.Plugins.Cron"} 01:00:00.522 [info] {"args":{},"id":2337,"meta":{"cron":true,"cron_expr":"0 1 * * *","cron_tz":"Etc/UTC"},"system_time":1766278800522426934,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.Downloading.MediaRetentionWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","local_data"]} 01:00:00.523 [debug] QUERY OK source="media_items" db=0.9ms idle=532.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 IFNULL(retention_period_days, 0) > 0 AND DATETIME(media_downloaded_at, '+' || retention_period_days || ' day') < DATETIME('now') ) AND NOT (m0."prevent_culling" = 1)) [] 01:00:00.523 [info] Culling 0 media items past their retention date 01:00:00.524 [debug] QUERY OK source="media_items" db=0.7ms idle=533.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)) [] 01:00:00.524 [info] Deleting 0 media items that are from before the source cutoff 01:00:00.524 [info] {"args":{},"id":2337,"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":2151,"event":"job:stop","queue_time":521837,"attempt":1,"tags":["media_item","local_data"]} 01:00:28.553 [info] {"source":"oban","duration":670,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:00:58.554 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:01:00.517 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:01:28.555 [info] {"source":"oban","duration":719,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:01:58.556 [info] {"source":"oban","duration":784,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:02:00.518 [info] {"source":"oban","duration":240,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:02:28.558 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:02:58.559 [info] {"source":"oban","duration":1038,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:03:00.519 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:03:28.561 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:03:58.562 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:04:00.520 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:04:28.563 [info] {"source":"oban","duration":782,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:04:58.564 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:05:00.521 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:05:28.565 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:05:58.566 [info] {"source":"oban","duration":367,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:06:00.522 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:06:28.567 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:06:58.568 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:07:00.523 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:07:28.569 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:07:58.570 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:08:00.524 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:08:28.571 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:08:58.572 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:09:00.525 [info] {"source":"oban","duration":136,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:09:28.573 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:09:58.574 [info] {"source":"oban","duration":735,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:10:00.526 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:10:28.575 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:10:58.576 [info] {"source":"oban","duration":487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:11:00.527 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:11:28.577 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:11:58.579 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:12:00.528 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:12:28.580 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:12:58.581 [info] {"source":"oban","duration":647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:13:00.529 [info] {"source":"oban","duration":380,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:13:28.582 [info] {"source":"oban","duration":682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:13:58.583 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:14:00.530 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:14:28.584 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:14:58.585 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:15:00.531 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:15:28.586 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:15:58.587 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:16:00.532 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:16:28.588 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:16:58.589 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:00.533 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:17:28.590 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:58.591 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:18:00.534 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:18:28.592 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:18:58.593 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:19:00.535 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:19:28.594 [info] {"source":"oban","duration":680,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:19:58.595 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:20:00.536 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:20:28.596 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:20:58.597 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:21:00.537 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:21:28.598 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:21:58.599 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:22:00.537 [info] {"source":"oban","duration":73,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:22:28.600 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:22:58.601 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:23:00.539 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:23:28.602 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:23:58.603 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:00.540 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:24:28.604 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:58.605 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:25:00.541 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:25:28.606 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:25:58.607 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:00.542 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:26:28.608 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:58.609 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:27:00.543 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:27:28.610 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:27:58.611 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:28:00.544 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:28:28.612 [info] {"source":"oban","duration":741,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:28:58.613 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:29:00.545 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:29:28.614 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:29:58.616 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:30:00.546 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:30:28.617 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:30:58.618 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:31:00.547 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:31:28.619 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:31:58.620 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:32:00.548 [info] {"source":"oban","duration":241,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:32:28.621 [info] {"source":"oban","duration":799,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:32:58.623 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:33:00.549 [info] {"source":"oban","duration":259,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:33:28.624 [info] {"source":"oban","duration":447,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:33:58.625 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:34:00.550 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:34:28.626 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:34:58.627 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:35:00.551 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:35:28.628 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:35:58.629 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:36:00.552 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:36:28.630 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:36:58.631 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:00.553 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:37:28.632 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:58.633 [info] {"source":"oban","duration":499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:38:00.554 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:38:28.634 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:38:58.635 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:39:00.555 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:39:28.636 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:39:58.637 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:40:00.556 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:40:28.638 [info] {"source":"oban","duration":705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:40:58.639 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:41:00.557 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:41:28.640 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:41:58.642 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:42:00.558 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:42:28.643 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:42:58.644 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:43:00.559 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:43:28.645 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:43:58.646 [info] {"source":"oban","duration":736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:44:00.560 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:44:28.647 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:44:58.648 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:45:00.561 [info] {"source":"oban","duration":238,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:45:28.649 [info] {"source":"oban","duration":689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:45:58.650 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:46:00.562 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:46:28.651 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:46:58.652 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:47:00.563 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:47:28.653 [info] {"source":"oban","duration":660,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:47:58.654 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:48:00.564 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:48:28.655 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:48:58.656 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:49:00.565 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:49:28.657 [info] {"source":"oban","duration":713,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:49:58.658 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:50:00.566 [info] {"source":"oban","duration":261,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:50:28.659 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:50:58.660 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:51:00.567 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:51:28.661 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:51:58.662 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:52:00.568 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:52:28.663 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:52:58.664 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:53:00.569 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:53:28.665 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:53:58.666 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:54:00.570 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:54:28.667 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:54:58.668 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:55:00.571 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:55:28.669 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:55:58.670 [info] {"source":"oban","duration":746,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:56:00.572 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:56:28.672 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:56:58.673 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:00.573 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:57:28.674 [info] {"source":"oban","duration":479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:58.675 [info] {"source":"oban","duration":689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:58:00.574 [info] {"source":"oban","duration":230,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:58:28.676 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:58:58.677 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:59:00.575 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:59:28.678 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:59:58.679 [info] {"source":"oban","duration":667,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:00:00.577 [info] {"source":"oban","duration":1226,"event":"plugin:stop","jobs":[2338],"plugin":"Oban.Plugins.Cron"} 02:00:00.583 [info] {"args":{},"id":2338,"meta":{"cron":true,"cron_expr":"0 2 * * *","cron_tz":"Etc/UTC"},"system_time":1766282400583466354,"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"]} 02:00:00.585 [debug] QUERY OK source="media_items" db=1.4ms idle=593.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) 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) ) [] 02:00:00.585 [info] Redownloading 1 media items 02:00:00.585 [info] {"args":{},"id":2338,"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":2272,"event":"job:stop","queue_time":582842,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 02:00:28.680 [info] {"source":"oban","duration":768,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:00:58.681 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:01:00.578 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:01:28.682 [info] {"source":"oban","duration":863,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:01:58.684 [info] {"source":"oban","duration":702,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:02:00.579 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:02:28.685 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:02:58.687 [info] {"source":"oban","duration":1321,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:00.580 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:03:28.688 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:58.689 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:04:00.581 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:04:28.690 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:04:58.691 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:05:00.582 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:05:28.692 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:05:58.693 [info] {"source":"oban","duration":724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:00.583 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:06:28.694 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:58.695 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:07:00.584 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:07:28.696 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:07:58.697 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:08:00.585 [info] {"source":"oban","duration":217,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:08:28.698 [info] {"source":"oban","duration":681,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:08:58.699 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:09:00.586 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:09:28.700 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:09:58.701 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:10:00.587 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:10:28.702 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:10:58.703 [info] {"source":"oban","duration":617,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:11:00.588 [info] {"source":"oban","duration":222,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:11:28.704 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:11:58.705 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:12:00.589 [info] {"source":"oban","duration":105,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:12:28.706 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:12:58.707 [info] {"source":"oban","duration":772,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:13:00.590 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:13:28.708 [info] {"source":"oban","duration":491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:13:58.709 [info] {"source":"oban","duration":355,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:00.591 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:14:28.710 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:58.711 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:15:00.592 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:15:28.712 [info] {"source":"oban","duration":785,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:15:58.713 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:16:00.593 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:16:28.715 [info] {"source":"oban","duration":760,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:16:58.716 [info] {"source":"oban","duration":820,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:17:00.594 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:17:28.717 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:17:58.718 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:18:00.595 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:18:28.719 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:18:58.720 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:19:00.596 [info] {"source":"oban","duration":261,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:19:28.721 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:19:58.722 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:20:00.597 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:20:28.723 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:20:58.724 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:21:00.598 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:21:28.725 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:21:58.726 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:22:00.599 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:22:28.727 [info] {"source":"oban","duration":766,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:22:58.728 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:23:00.600 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:23:28.729 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:23:58.730 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:24:00.601 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:24:28.731 [info] {"source":"oban","duration":724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:24:58.732 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:25:00.602 [info] {"source":"oban","duration":257,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:25:28.733 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:25:58.734 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:26:00.603 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:26:28.735 [info] {"source":"oban","duration":702,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:26:58.736 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:00.604 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:27:28.737 [info] {"source":"oban","duration":763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:58.739 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:28:00.605 [info] {"source":"oban","duration":220,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:28:28.740 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:28:58.741 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:29:00.606 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:29:28.742 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:29:58.743 [info] {"source":"oban","duration":635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:30:00.607 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:30:28.744 [info] {"source":"oban","duration":469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:30:58.745 [info] {"source":"oban","duration":463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:31:00.608 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:31:28.746 [info] {"source":"oban","duration":736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:31:58.747 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:32:00.609 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:32:28.748 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:32:58.750 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:33:00.610 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:33:28.751 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:33:58.752 [info] {"source":"oban","duration":745,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:34:00.611 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:34:28.753 [info] {"source":"oban","duration":726,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:34:58.754 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:35:00.612 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:35:28.755 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:35:58.756 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:36:00.613 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:36:28.757 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:36:58.758 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:37:00.614 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:37:28.759 [info] {"source":"oban","duration":660,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:37:58.760 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:38:00.615 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:38:28.761 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:38:58.762 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:39:00.616 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:39:28.763 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:39:58.764 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:40:00.617 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:40:28.765 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:40:58.766 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:41:00.618 [info] {"source":"oban","duration":219,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:41:28.767 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:41:58.768 [info] {"source":"oban","duration":613,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:42:00.619 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:42:28.769 [info] {"source":"oban","duration":683,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:42:58.770 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:43:00.620 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:43:28.772 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:43:58.773 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:44:00.621 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:44:28.774 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:44:58.775 [info] {"source":"oban","duration":681,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:45:00.622 [info] {"source":"oban","duration":210,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:45:28.776 [info] {"source":"oban","duration":673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:45:58.777 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:46:00.623 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:46:28.778 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:46:58.779 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:47:00.624 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:47:28.780 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:47:58.781 [info] {"source":"oban","duration":416,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:48:00.625 [info] {"source":"oban","duration":130,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:48:28.782 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:48:58.783 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:49:00.626 [info] {"source":"oban","duration":146,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:49:28.784 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:49:58.785 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:50:00.627 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:50:28.786 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:50:58.787 [info] {"source":"oban","duration":789,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:51:00.628 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:51:28.788 [info] {"source":"oban","duration":732,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:51:58.789 [info] {"source":"oban","duration":844,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:52:00.629 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:52:28.791 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:52:58.792 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:53:00.630 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:53:28.793 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:53:58.794 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:54:00.631 [info] {"source":"oban","duration":254,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:54:28.795 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:54:58.796 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:00.632 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:55:28.797 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:58.798 [info] {"source":"oban","duration":760,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:56:00.633 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:56:28.800 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:56:58.801 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:57:00.634 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:57:28.802 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:57:58.803 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:58:00.635 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:58:28.804 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:58:58.805 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:59:00.636 [info] {"source":"oban","duration":144,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:59:28.806 [info] {"source":"oban","duration":831,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:59:58.808 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:00:00.637 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:00:28.809 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:00:58.810 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:01:00.638 [info] {"source":"oban","duration":221,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:01:28.811 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:01:58.812 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:00.639 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:02:28.813 [info] {"source":"oban","duration":699,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:58.814 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:03:00.640 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:03:28.815 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:03:58.816 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:04:00.641 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:04:28.817 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:04:58.818 [info] {"source":"oban","duration":461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:05:00.642 [info] {"source":"oban","duration":225,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:05:28.819 [info] {"source":"oban","duration":651,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:05:58.820 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:06:00.643 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:06:28.821 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:06:58.822 [info] {"source":"oban","duration":645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:07:00.644 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:07:28.823 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:07:58.824 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:08:00.645 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:08:28.825 [info] {"source":"oban","duration":674,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:08:58.826 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:09:00.646 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:09:28.827 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:09:58.828 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:10:00.647 [info] {"source":"oban","duration":145,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:10:28.829 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:10:58.830 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:11:00.648 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:11:28.831 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:11:58.832 [info] {"source":"oban","duration":727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:12:00.649 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:12:28.834 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:12:58.835 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:13:00.650 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:13:28.836 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:13:58.837 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:14:00.651 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:14:28.838 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:14:58.839 [info] {"source":"oban","duration":846,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:15:00.652 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:15:28.841 [info] {"source":"oban","duration":652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:15:58.842 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:00.653 [info] {"source":"oban","duration":144,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:16:28.843 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:58.844 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:17:00.654 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:17:28.845 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:17:58.846 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:18:00.655 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:18:28.847 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:18:58.848 [info] {"source":"oban","duration":762,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:19:00.656 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:19:28.850 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:19:58.851 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:20:00.657 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:20:28.852 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:20:58.853 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:00.658 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:21:28.854 [info] {"source":"oban","duration":767,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:58.856 [info] {"source":"oban","duration":410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:22:00.659 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:22:28.857 [info] {"source":"oban","duration":294,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:22:58.858 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:23:00.660 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:23:28.859 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:23:58.860 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:24:00.661 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:24:28.861 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:24:58.862 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:25:00.662 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:25:28.863 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:25:58.864 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:26:00.663 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:26:28.865 [info] {"source":"oban","duration":724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:26:58.866 [info] {"source":"oban","duration":663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:27:00.664 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:27:28.867 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:27:58.868 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:28:00.665 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:28:28.870 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:28:58.871 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:00.666 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:29:28.872 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:58.873 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:30:00.667 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:30:28.874 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:30:58.875 [info] {"source":"oban","duration":757,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:31:00.668 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:31:28.876 [info] {"source":"oban","duration":743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:31:58.877 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:32:00.669 [info] {"source":"oban","duration":309,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:32:28.878 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:32:58.879 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:33:00.670 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:33:28.880 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:33:58.881 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:34:00.671 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:34:28.882 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:34:58.883 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:35:00.672 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:35:28.884 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:35:58.885 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:36:00.673 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:36:28.886 [info] {"source":"oban","duration":763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:36:58.887 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:37:00.674 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:37:28.888 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:37:58.889 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:38:00.675 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:38:28.890 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:38:58.892 [info] {"source":"oban","duration":493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:39:00.676 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:39:28.893 [info] {"source":"oban","duration":346,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:39:58.894 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:40:00.677 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:40:28.895 [info] {"source":"oban","duration":673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:40:58.896 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:41:00.678 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:41:28.897 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:41:58.898 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:42:00.679 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:42:28.899 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:42:58.900 [info] {"source":"oban","duration":677,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:43:00.680 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:43:28.901 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:43:58.902 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:44:00.681 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:44:28.903 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:44:58.904 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:00.682 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:45:28.905 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:58.906 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:46:00.683 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:46:28.907 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:46:58.908 [info] {"source":"oban","duration":661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:47:00.684 [info] {"source":"oban","duration":246,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:47:27.383 [info] {"args":{"id":2240},"id":2324,"meta":{},"system_time":1766288847383532731,"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"]} 03:47:27.383 [debug] QUERY OK source="media_items" db=0.1ms idle=1393.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" = ?) [2240] 03:47:27.384 [info] User scripts lifecyle file either not present or is empty. Skipping. 03:47:27.384 [debug] QUERY OK source="sources" db=0.1ms idle=1394.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" = ?) [4] 03:47:27.384 [debug] QUERY OK source="media_profiles" db=0.1ms queue=0.1ms idle=1007.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] 03:47:27.384 [debug] QUERY OK source="media_items" db=0.2ms idle=6.8ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [2240] 03:47:27.385 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [2240] 03:47:27.385 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.6ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 03:47:27.385 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:47:27.385 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:47:27.386 [debug] Running yt-dlp command for action: get_downloadable_status 03:47:27.386 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:47:27.386 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:47:27.386 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:47:27.387 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=KCUq25Quh-A --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/19/3b/193b5a4b74238ffac1364892f70cddbd30cf57a2c69e01b6fbe5d2bdee277b06.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 03:47:28.909 [info] {"source":"oban","duration":770,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:47:29.573 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=KCUq25Quh-A --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/19/3b/193b5a4b74238ffac1364892f70cddbd30cf57a2c69e01b6fbe5d2bdee277b06.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] KCUq25Quh-A: Join this channel to get access to members-only content like this video, and other exclusive perks. 03:47:29.573 [error] yt-dlp download error for media item #2240: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] KCUq25Quh-A: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 03:47:29.574 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2240},"id":2324,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2190097,"event":"job:exception","queue_time":780554,"attempt":16,"tags":["media_item","media_fetching","show_in_dashboard"]} 03:47:58.911 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:48:00.685 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:48:28.912 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:48:58.913 [info] {"source":"oban","duration":757,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:49:00.686 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:49:28.914 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:49:58.916 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:00.687 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:50:28.917 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:58.918 [info] {"source":"oban","duration":676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:51:00.688 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:51:28.919 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:51:58.920 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:52:00.689 [info] {"source":"oban","duration":129,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:52:28.921 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:52:58.923 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:53:00.690 [info] {"source":"oban","duration":218,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:53:28.924 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:53:58.925 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:54:00.691 [info] {"source":"oban","duration":142,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:54:28.926 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:54:58.927 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:55:00.692 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:55:28.928 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:55:58.929 [info] {"source":"oban","duration":481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:56:00.693 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:56:28.930 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:56:58.931 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:57:00.694 [info] {"source":"oban","duration":363,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:57:28.932 [info] {"source":"oban","duration":469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:57:58.933 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:58:00.695 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:58:28.934 [info] {"source":"oban","duration":776,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:58:58.935 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:59:00.696 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:59:28.936 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:59:58.937 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:00:00.697 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:00:28.938 [info] {"source":"oban","duration":863,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:00:58.940 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:00.698 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:01:28.941 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:58.942 [info] {"source":"oban","duration":707,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:02:00.699 [info] {"source":"oban","duration":417,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:02:28.943 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:02:58.944 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:03:00.700 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:03:28.945 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:03:58.946 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:04:00.701 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:04:28.947 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:04:58.948 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:05:00.702 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:05:28.949 [info] {"source":"oban","duration":665,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:05:58.950 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:06:00.703 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:06:28.951 [info] {"source":"oban","duration":619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:06:58.952 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:07:00.704 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:07:28.953 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:07:58.954 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:08:00.705 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:08:28.955 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:08:58.956 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:09:00.706 [info] {"source":"oban","duration":136,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:09:28.957 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:09:58.958 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:10:00.707 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:10:28.959 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:10:58.960 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:11:00.708 [info] {"source":"oban","duration":144,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:11:28.961 [info] {"source":"oban","duration":680,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:11:58.962 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:12:00.709 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:12:28.963 [info] {"source":"oban","duration":488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:12:58.964 [info] {"source":"oban","duration":419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:13:00.710 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:13:28.965 [info] {"source":"oban","duration":320,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:13:58.966 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:14:00.711 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:14:28.967 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:14:58.968 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:15:00.712 [info] {"source":"oban","duration":227,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:15:28.969 [info] {"source":"oban","duration":652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:15:58.970 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:16:00.713 [info] {"source":"oban","duration":241,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:16:05.120 [info] {"args":{"id":10623},"id":2332,"meta":{},"system_time":1766290565120539660,"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"]} 04:16:05.121 [debug] QUERY OK source="media_items" db=0.2ms idle=1130.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" = ?) [10623] 04:16:05.121 [info] User scripts lifecyle file either not present or is empty. Skipping. 04:16:05.121 [debug] QUERY OK source="sources" db=0.1ms idle=1131.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" = ?) [3] 04:16:05.121 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1007.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] 04:16:05.122 [debug] QUERY OK source="media_items" db=0.1ms 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 [10623] 04:16:05.122 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [10623] 04:16:05.122 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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] 04:16:05.122 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:16:05.122 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:16:05.123 [debug] Running yt-dlp command for action: get_downloadable_status 04:16:05.123 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:16:05.123 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:16:05.123 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:16:05.123 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nfuQQigzNu0 --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f0/fe/f0fe95e43d0bb24bc284186a52229868b6e4c2fd6e8a0944849aaab50b9ac86a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 04:16:07.375 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nfuQQigzNu0 --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f0/fe/f0fe95e43d0bb24bc284186a52229868b6e4c2fd6e8a0944849aaab50b9ac86a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] nfuQQigzNu0: Join this channel to get access to members-only content like this video, and other exclusive perks. 04:16:07.375 [error] yt-dlp download error for media item #10623: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] nfuQQigzNu0: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 04:16:07.376 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":10623},"id":2332,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2255406,"event":"job:exception","queue_time":291157,"attempt":16,"tags":["media_item","media_fetching","show_in_dashboard"]} 04:16:28.971 [info] {"source":"oban","duration":723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:16:58.972 [info] {"source":"oban","duration":724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:17:00.714 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:17:28.973 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:17:58.974 [info] {"source":"oban","duration":790,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:18:00.715 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:18:28.975 [info] {"source":"oban","duration":667,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:18:58.976 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:19:00.716 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:19:28.977 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:19:58.978 [info] {"source":"oban","duration":680,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:20:00.717 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:20:28.979 [info] {"source":"oban","duration":818,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:20:58.981 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:21:00.718 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:21:28.982 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:21:58.983 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:22:00.719 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:22:28.984 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:22:58.985 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:23:00.720 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:23:28.986 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:23:58.987 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:00.721 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:24:28.988 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:30.629 [info] {"args":{"id":10622},"id":2331,"meta":{},"system_time":1766291070629424051,"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"]} 04:24:30.629 [debug] QUERY OK source="media_items" db=0.1ms idle=639.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" = ?) [10622] 04:24:30.629 [info] User scripts lifecyle file either not present or is empty. Skipping. 04:24:30.630 [debug] QUERY OK source="sources" db=0.1ms idle=640.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" = ?) [3] 04:24:30.630 [debug] QUERY OK source="media_profiles" db=0.1ms idle=640.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] 04:24:30.630 [debug] QUERY OK source="media_items" db=0.2ms 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 [10622] 04:24:30.631 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [10622] 04:24:30.631 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 04:24:30.631 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:24:30.631 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:24:30.631 [debug] Running yt-dlp command for action: get_downloadable_status 04:24:30.683 [debug] QUERY OK source="settings" db=0.0ms idle=52.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:24:30.683 [debug] QUERY OK source="settings" db=0.1ms idle=51.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:24:30.683 [debug] QUERY OK source="settings" db=0.0ms idle=51.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:24:30.683 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=a7io4HCXsew --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/89/83/89837f9cb6d1a4c9b56c5c4b80dce1729546b42e959ac17df4c3c4e3fe667c8c.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 04:24:32.779 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=a7io4HCXsew --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/89/83/89837f9cb6d1a4c9b56c5c4b80dce1729546b42e959ac17df4c3c4e3fe667c8c.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] a7io4HCXsew: Join this channel to get access to members-only content like this video, and other exclusive perks. 04:24:32.779 [error] yt-dlp download error for media item #10622: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] a7io4HCXsew: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 04:24:32.779 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":10622},"id":2331,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2149851,"event":"job:exception","queue_time":152918,"attempt":16,"tags":["media_item","media_fetching","show_in_dashboard"]} 04:24:58.989 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:25:00.722 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:25:28.991 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:25:58.992 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:26:00.723 [info] {"source":"oban","duration":104,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:26:28.993 [info] {"source":"oban","duration":824,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:26:58.995 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:27:00.724 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:27:28.996 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:27:58.997 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:28:00.725 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:28:28.998 [info] {"source":"oban","duration":641,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:28:58.999 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:29:00.726 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:29:29.000 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:29:59.001 [info] {"source":"oban","duration":418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:30:00.727 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:30:29.002 [info] {"source":"oban","duration":428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:30:59.003 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:31:00.728 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:31:29.004 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:31:59.005 [info] {"source":"oban","duration":672,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:32:00.729 [info] {"source":"oban","duration":416,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:32:29.006 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:32:59.007 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:33:00.730 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:33:29.008 [info] {"source":"oban","duration":850,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:33:59.010 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:34:00.731 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:34:29.011 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:34:59.012 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:35:00.732 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:35:29.013 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:35:59.014 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:36:00.733 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:36:29.015 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:36:59.016 [info] {"source":"oban","duration":645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:37:00.734 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:37:29.017 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:37:59.018 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:38:00.735 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:38:29.019 [info] {"source":"oban","duration":803,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:38:59.021 [info] {"source":"oban","duration":710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:39:00.736 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:39:29.022 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:39:59.023 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:00.737 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:40:29.024 [info] {"source":"oban","duration":694,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:59.025 [info] {"source":"oban","duration":758,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:41:00.738 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:41:29.026 [info] {"source":"oban","duration":674,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:41:59.027 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:42:00.739 [info] {"source":"oban","duration":133,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:42:29.028 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:42:59.029 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:43:00.740 [info] {"source":"oban","duration":230,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:43:29.030 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:43:59.031 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:44:00.741 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:44:29.032 [info] {"source":"oban","duration":786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:44:59.033 [info] {"source":"oban","duration":860,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:45:00.742 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:45:29.035 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:45:59.036 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:46:00.743 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:46:29.037 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:46:59.039 [info] {"source":"oban","duration":854,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:47:00.744 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:47:29.041 [info] {"source":"oban","duration":660,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:47:59.042 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:48:00.745 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:48:29.043 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:48:59.044 [info] {"source":"oban","duration":884,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:49:00.746 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:49:29.046 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:49:59.047 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:50:00.747 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:50:29.048 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:50:59.049 [info] {"source":"oban","duration":460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:51:00.748 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:51:29.050 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:51:59.051 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:00.749 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:52:29.052 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:59.053 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:53:00.750 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:53:29.054 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:53:59.055 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:54:00.751 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:54:29.056 [info] {"source":"oban","duration":712,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:54:59.057 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:55:00.752 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:55:29.058 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:55:59.059 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:56:00.753 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:56:29.060 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:56:59.061 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:57:00.754 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:57:19.321 [debug] Tzdata polling for update. 04:57:19.896 [debug] Tzdata polling shows the loaded tz database is up to date. 04:57:29.062 [info] {"source":"oban","duration":684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:57:59.063 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:58:00.755 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:58:29.064 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:58:59.065 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:59:00.756 [info] {"source":"oban","duration":76,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:59:29.066 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:59:59.067 [info] {"source":"oban","duration":760,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:00:00.757 [info] {"source":"oban","duration":259,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:00:29.068 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:00:59.069 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:00.758 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:01:29.070 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:59.071 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:02:00.759 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:02:29.072 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:02:59.073 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:03:00.760 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:03:29.074 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:03:59.075 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:04:00.761 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:04:29.076 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:04:59.078 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:05:00.762 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:05:29.079 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:05:59.080 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:06:00.763 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:06:29.081 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:06:59.082 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:07:00.764 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:07:29.083 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:07:59.084 [info] {"source":"oban","duration":605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:08:00.765 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:08:29.085 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:08:59.086 [info] {"source":"oban","duration":760,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:09:00.766 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:09:29.087 [info] {"source":"oban","duration":705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:09:59.088 [info] {"source":"oban","duration":745,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:10:00.767 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:10:29.089 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:10:59.090 [info] {"source":"oban","duration":700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:11:00.768 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:11:29.091 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:11:59.092 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:12:00.769 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:12:29.093 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:12:59.094 [info] {"source":"oban","duration":673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:00.770 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:13:29.095 [info] {"source":"oban","duration":750,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:59.096 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:14:00.771 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:14:29.097 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:14:59.098 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:15:00.772 [info] {"source":"oban","duration":115,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:15:29.099 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:15:59.100 [info] {"source":"oban","duration":877,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:16:00.773 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:16:29.102 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:16:59.103 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:17:00.774 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:17:29.104 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:17:59.105 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:18:00.775 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:18:29.106 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:18:59.107 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:19:00.776 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:19:29.109 [info] {"source":"oban","duration":777,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:19:59.110 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:20:00.777 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:20:29.111 [info] {"source":"oban","duration":433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:20:59.112 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:21:00.778 [info] {"source":"oban","duration":253,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:21:29.113 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:21:59.114 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:22:00.779 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:22:29.115 [info] {"source":"oban","duration":754,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:22:59.116 [info] {"source":"oban","duration":731,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:23:00.780 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:23:29.117 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:23:59.118 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:24:00.781 [info] {"source":"oban","duration":223,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:24:29.119 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:24:59.120 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:25:00.782 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:25:29.121 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:25:59.122 [info] {"source":"oban","duration":705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:26:00.783 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:26:29.123 [info] {"source":"oban","duration":760,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:26:59.124 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:27:00.784 [info] {"source":"oban","duration":205,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:27:29.125 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:27:59.126 [info] {"source":"oban","duration":778,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:28:00.785 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:28:29.128 [info] {"source":"oban","duration":710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:28:59.129 [info] {"source":"oban","duration":741,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:29:00.786 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:29:29.130 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:29:59.131 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:30:00.787 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:30:29.132 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:30:59.133 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:31:00.788 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:31:29.134 [info] {"source":"oban","duration":736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:31:59.135 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:32:00.789 [info] {"source":"oban","duration":114,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:32:29.136 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:32:59.138 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:33:00.790 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:33:29.139 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:33:59.140 [info] {"source":"oban","duration":684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:34:00.791 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:34:29.141 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:34:59.142 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:35:00.792 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:35:29.144 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:35:59.145 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:36:00.793 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:36:29.146 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:36:59.147 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:37:00.794 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:37:29.148 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:37:59.149 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:38:00.795 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:38:29.150 [info] {"source":"oban","duration":663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:38:59.151 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:39:00.796 [info] {"source":"oban","duration":253,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:39:29.152 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:39:59.153 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:40:00.797 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:40:29.154 [info] {"source":"oban","duration":704,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:40:59.155 [info] {"source":"oban","duration":676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:41:00.798 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:41:29.156 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:41:59.157 [info] {"source":"oban","duration":754,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:42:00.799 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:42:29.158 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:42:59.159 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:43:00.800 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:43:29.160 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:43:59.161 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:44:00.801 [info] {"source":"oban","duration":272,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:44:29.162 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:44:59.163 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:45:00.802 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:45:29.164 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:45:59.165 [info] {"source":"oban","duration":700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:46:00.803 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:46:29.166 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:46:59.167 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:47:00.804 [info] {"source":"oban","duration":235,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:47:29.168 [info] {"source":"oban","duration":793,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:47:59.169 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:48:00.805 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:48:29.170 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:48:59.171 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:49:00.806 [info] {"source":"oban","duration":119,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:49:29.172 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:49:59.173 [info] {"source":"oban","duration":635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:50:00.807 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:50:29.174 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:50:59.175 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:51:00.808 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:51:29.176 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:51:59.177 [info] {"source":"oban","duration":683,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:52:00.809 [info] {"source":"oban","duration":320,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:52:29.178 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:52:59.179 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:53:00.810 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:53:29.180 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:53:59.181 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:54:00.811 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:54:29.182 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:54:59.183 [info] {"source":"oban","duration":418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:55:00.812 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:55:29.184 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:55:59.185 [info] {"source":"oban","duration":659,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:56:00.814 [info] {"source":"oban","duration":1220,"event":"plugin:stop","jobs":[2339],"plugin":"Oban.Plugins.Cron"} 05:56:00.820 [info] {"args":{},"id":2339,"meta":{"cron":true,"cron_expr":"56 5 * * *","cron_tz":"Etc/UTC"},"system_time":1766296560820547244,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","event":"job:start","attempt":1,"tags":["local_data"]} 05:56:00.820 [info] Updating yt-dlp 05:56:00.820 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update 05:56:01.604 [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) 05:56:01.604 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 05:56:01.930 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2025.12.08 05:56:01.931 [debug] QUERY OK source="settings" db=0.2ms idle=1116.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:56:01.931 [info] {"args":{},"id":2339,"meta":{"cron":true,"cron_expr":"56 5 * * *","cron_tz":"Etc/UTC"},"state":"success","max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","duration":1110991,"event":"job:stop","queue_time":819903,"attempt":1,"tags":["local_data"]} 05:56:29.186 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:56:59.187 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:57:00.815 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:57:29.188 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:57:59.189 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:58:00.816 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:58:29.190 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:58:59.191 [info] {"source":"oban","duration":744,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:59:00.817 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:59:29.193 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:59:59.194 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:00:00.818 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:00:29.195 [info] {"source":"oban","duration":635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:00:59.196 [info] {"source":"oban","duration":815,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:01:00.819 [info] {"source":"oban","duration":360,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:01:29.198 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:01:59.199 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:02:00.820 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:02:29.200 [info] {"source":"oban","duration":682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:02:59.201 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:03:00.821 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:03:29.202 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:03:59.203 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:04:00.822 [info] {"source":"oban","duration":266,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:04:29.204 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:04:59.205 [info] {"source":"oban","duration":785,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:05:00.823 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:05:29.207 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:05:59.208 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:06:00.824 [info] {"source":"oban","duration":118,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:06:29.209 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:06:59.210 [info] {"source":"oban","duration":671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:07:00.825 [info] {"source":"oban","duration":230,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:07:29.211 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:07:59.212 [info] {"source":"oban","duration":677,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:08:00.826 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:08:29.213 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:08:59.214 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:09:00.827 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:09:29.215 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:09:59.216 [info] {"source":"oban","duration":683,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:10:00.828 [info] {"source":"oban","duration":216,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:10:29.217 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:10:59.218 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:11:00.829 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:11:29.219 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:11:59.220 [info] {"source":"oban","duration":456,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:12:00.830 [info] {"source":"oban","duration":261,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:12:29.221 [info] {"source":"oban","duration":368,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:12:59.222 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:13:00.831 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:13:29.223 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:13:59.224 [info] {"source":"oban","duration":634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:14:00.832 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:14:29.225 [info] {"source":"oban","duration":857,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:14:59.227 [info] {"source":"oban","duration":671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:15:00.833 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:15:29.228 [info] {"source":"oban","duration":667,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:15:59.229 [info] {"source":"oban","duration":692,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:00.834 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:16:29.230 [info] {"source":"oban","duration":613,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:59.231 [info] {"source":"oban","duration":683,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:17:00.835 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:17:29.232 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:17:59.233 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:18:00.836 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:18:29.234 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:18:59.235 [info] {"source":"oban","duration":740,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:19:00.837 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:19:29.237 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:19:59.239 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:00.838 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:20:29.240 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:59.241 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:21:00.839 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:21:29.242 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:21:59.243 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:00.840 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:22:29.244 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:59.245 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:23:00.841 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:23:29.246 [info] {"source":"oban","duration":803,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:23:59.248 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:00.842 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:24:29.249 [info] {"source":"oban","duration":728,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:59.250 [info] {"source":"oban","duration":816,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:25:00.843 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:25:29.252 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:25:59.253 [info] {"source":"oban","duration":813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:26:00.844 [info] {"source":"oban","duration":243,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:26:29.255 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:26:59.256 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:27:00.845 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:27:29.257 [info] {"source":"oban","duration":452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:27:59.258 [info] {"source":"oban","duration":762,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:00.846 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:28:29.259 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:59.260 [info] {"source":"oban","duration":472,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:29:00.847 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:29:29.261 [info] {"source":"oban","duration":366,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:29:59.262 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:30:00.848 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:30:29.263 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:30:59.264 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:00.849 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:31:29.265 [info] {"source":"oban","duration":767,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:59.266 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:32:00.850 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:32:29.267 [info] {"source":"oban","duration":838,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:32:59.269 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:33:00.851 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:33:29.270 [info] {"source":"oban","duration":708,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:33:59.271 [info] {"source":"oban","duration":850,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:00.852 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:34:29.273 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:59.274 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:35:00.853 [info] {"source":"oban","duration":218,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:35:29.275 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:35:59.276 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:36:00.854 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:36:29.277 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:36:59.278 [info] {"source":"oban","duration":666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:00.855 [info] {"source":"oban","duration":209,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:37:29.279 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:59.280 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:38:00.856 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:38:29.281 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:38:59.282 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:39:00.857 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:39:29.283 [info] {"source":"oban","duration":767,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:39:59.284 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:40:00.858 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:40:29.285 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:40:59.286 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:00.859 [info] {"source":"oban","duration":221,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:41:29.287 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:59.288 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:42:00.860 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:42:10.016 [info] {"args":{"id":2241},"id":2148,"meta":{},"system_time":1766299330016478422,"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"]} 06:42:10.016 [debug] QUERY OK source="media_items" db=0.1ms idle=1022.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" = ?) [2241] 06:42:10.016 [info] User scripts lifecyle file either not present or is empty. Skipping. 06:42:10.017 [debug] QUERY OK source="sources" db=0.0ms idle=1007.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" = ?) [4] 06:42:10.017 [debug] QUERY OK source="media_profiles" db=0.0ms idle=23.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:42:10.017 [debug] QUERY OK source="media_items" db=0.1ms 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 [2241] 06:42:10.018 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [2241] 06:42:10.018 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:42:10.018 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:42:10.018 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:42:10.018 [debug] Running yt-dlp command for action: get_downloadable_status 06:42:10.019 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:42:10.019 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:42:10.019 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:42:10.019 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/56/f5/56f5d81f7d5dffa9519a11f21198819d1c7721b3c3a0f5b234d95b78e52e5d53.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 06:42:12.241 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/56/f5/56f5d81f7d5dffa9519a11f21198819d1c7721b3c3a0f5b234d95b78e52e5d53.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 06:42:12.241 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 06:42:12.242 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2148,"meta":{},"state":"discard","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2225397,"event":"job:exception","queue_time":809698,"attempt":20,"tags":["media_item","media_fetching","show_in_dashboard"]} 06:42:29.289 [info] {"source":"oban","duration":715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:42:59.290 [info] {"source":"oban","duration":674,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:43:00.861 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:43:29.291 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:43:59.292 [info] {"source":"oban","duration":707,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:00.862 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:44:29.293 [info] {"source":"oban","duration":851,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:59.295 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:45:00.863 [info] {"source":"oban","duration":215,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:45:29.296 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:45:59.297 [info] {"source":"oban","duration":440,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:46:00.864 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:46:29.298 [info] {"source":"oban","duration":460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:46:59.299 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:47:00.865 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:47:29.300 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:47:59.301 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:48:00.866 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:48:29.302 [info] {"source":"oban","duration":739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:48:59.303 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:49:00.867 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:49:29.304 [info] {"source":"oban","duration":854,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:49:59.306 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:50:00.868 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:50:29.307 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:50:59.308 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:51:00.869 [info] {"source":"oban","duration":448,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:51:29.309 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:51:59.310 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:52:00.870 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:52:29.311 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:52:59.312 [info] {"source":"oban","duration":785,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:53:00.871 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:53:29.314 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:53:59.315 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:54:00.872 [info] {"source":"oban","duration":378,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:54:29.316 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:54:59.317 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:55:00.873 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:55:29.318 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:55:59.319 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:56:00.874 [info] {"source":"oban","duration":88,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:56:29.320 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:56:59.321 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:57:00.875 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:57:29.322 [info] {"source":"oban","duration":677,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:57:59.323 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:58:00.876 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:58:29.324 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:58:59.325 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:59:00.877 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:59:29.326 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:59:59.327 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:00:00.878 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:00:29.328 [info] {"source":"oban","duration":740,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:00:59.329 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:01:00.879 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:01:29.330 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:01:59.331 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:02:00.880 [info] {"source":"oban","duration":235,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:02:29.332 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:02:59.333 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:03:00.881 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:03:29.334 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:03:59.335 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:04:00.882 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:04:29.336 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:04:59.337 [info] {"source":"oban","duration":713,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:05:00.883 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:05:29.339 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:05:59.340 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:06:00.884 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:06:29.341 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:06:59.342 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:07:00.885 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:07:29.343 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:07:59.344 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:08:00.886 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:08:29.345 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:08:59.346 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:09:00.887 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:09:29.347 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:09:59.348 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:10:00.888 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:10:29.349 [info] {"source":"oban","duration":845,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:10:59.351 [info] {"source":"oban","duration":715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:11:00.889 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:11:29.352 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:11:59.353 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:12:00.890 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:12:29.354 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:12:59.355 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:13:00.891 [info] {"source":"oban","duration":79,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:13:29.356 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:13:59.357 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:14:00.892 [info] {"source":"oban","duration":246,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:14:29.358 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:14:59.359 [info] {"source":"oban","duration":686,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:15:00.893 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:15:29.360 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:15:59.361 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:16:00.894 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:16:29.362 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:16:59.363 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:17:00.895 [info] {"source":"oban","duration":240,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:17:29.364 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:17:59.365 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:18:00.896 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:18:29.366 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:18:59.367 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:19:00.897 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:19:29.368 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:19:59.369 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:20:00.898 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:20:29.370 [info] {"source":"oban","duration":418,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:20:59.371 [info] {"source":"oban","duration":341,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:21:00.899 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:21:29.372 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:21:59.373 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:22:00.900 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:22:29.374 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:22:59.375 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:23:00.901 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:23:29.376 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:23:59.377 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:24:00.902 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:24:29.378 [info] {"source":"oban","duration":648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:24:59.379 [info] {"source":"oban","duration":648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:25:00.903 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:25:29.380 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:25:59.381 [info] {"source":"oban","duration":672,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:26:00.904 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:26:29.382 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:26:59.383 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:27:00.905 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:27:29.384 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:27:59.385 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:28:00.906 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:28:29.386 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:28:59.387 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:29:00.907 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:29:29.388 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:29:59.390 [info] {"source":"oban","duration":1232,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:30:00.908 [info] {"source":"oban","duration":216,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:30:29.391 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:30:59.392 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:31:00.909 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:31:29.393 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:31:59.394 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:32:00.910 [info] {"source":"oban","duration":229,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:32:29.395 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:32:59.396 [info] {"source":"oban","duration":909,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:33:00.911 [info] {"source":"oban","duration":227,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:33:29.398 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:33:59.399 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:34:00.912 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:34:29.400 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:34:59.401 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:35:00.913 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:35:29.402 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:35:59.403 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:36:00.914 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:36:29.404 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:36:59.405 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:37:00.915 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:37:29.406 [info] {"source":"oban","duration":805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:37:59.408 [info] {"source":"oban","duration":442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:38:00.916 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:38:29.409 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:38:59.410 [info] {"source":"oban","duration":754,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:39:00.917 [info] {"source":"oban","duration":221,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:39:29.411 [info] {"source":"oban","duration":827,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:39:59.413 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:40:00.918 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:40:29.414 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:40:59.415 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:41:00.919 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:41:29.416 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:41:59.417 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:42:00.920 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:42:29.418 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:42:59.419 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:43:00.921 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:43:29.420 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:43:59.421 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:44:00.922 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:44:29.422 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:44:59.423 [info] {"source":"oban","duration":860,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:45:00.923 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:45:29.425 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:45:59.426 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:46:00.924 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:46:29.427 [info] {"source":"oban","duration":694,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:46:59.428 [info] {"source":"oban","duration":809,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:47:00.925 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:47:29.430 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:47:59.431 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:48:00.926 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:48:29.432 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:48:59.433 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:49:00.927 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:49:29.434 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:49:59.435 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:50:00.928 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:50:29.436 [info] {"source":"oban","duration":651,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:50:59.437 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:51:00.929 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:51:29.438 [info] {"source":"oban","duration":726,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:51:59.439 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:52:00.930 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:52:29.440 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:52:59.441 [info] {"source":"oban","duration":755,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:53:00.931 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:53:29.442 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:53:59.443 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:54:00.932 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:54:29.444 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:54:59.445 [info] {"source":"oban","duration":383,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:55:00.933 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:55:29.446 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:55:59.447 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:56:00.934 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:56:29.448 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:56:59.449 [info] {"source":"oban","duration":808,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:57:00.935 [info] {"source":"oban","duration":241,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:57:29.451 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:57:59.452 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:58:00.936 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:58:29.453 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:58:59.454 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:00.937 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:59:29.455 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:59.456 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:00:00.938 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:00:29.457 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:00:59.458 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:00.939 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:01:29.459 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:59.460 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:02:00.940 [info] {"source":"oban","duration":230,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:02:29.461 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:02:59.462 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:00.941 [info] {"source":"oban","duration":128,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:03:29.463 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:59.464 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:04:00.942 [info] {"source":"oban","duration":317,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:04:29.465 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:04:59.466 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:05:00.943 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:05:29.467 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:05:59.468 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:06:00.944 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:06:29.469 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:06:59.470 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:07:00.945 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:07:29.471 [info] {"source":"oban","duration":716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:07:59.472 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:08:00.946 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:08:29.473 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:08:59.474 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:09:00.947 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:09:29.475 [info] {"source":"oban","duration":679,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:09:59.476 [info] {"source":"oban","duration":474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:00.948 [info] {"source":"oban","duration":220,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:10:29.477 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:59.478 [info] {"source":"oban","duration":798,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:11:00.949 [info] {"source":"oban","duration":248,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:11:29.480 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:11:59.481 [info] {"source":"oban","duration":460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:12:00.950 [info] {"source":"oban","duration":216,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:12:29.482 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:12:59.483 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:13:00.951 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:13:29.484 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:13:59.485 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:14:00.952 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:14:29.486 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:14:59.487 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:15:00.953 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:15:29.488 [info] {"source":"oban","duration":733,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:15:59.489 [info] {"source":"oban","duration":722,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:16:00.954 [info] {"source":"oban","duration":209,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:16:29.490 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:16:59.491 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:00.955 [info] {"source":"oban","duration":227,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:17:29.492 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:59.493 [info] {"source":"oban","duration":739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:18:00.956 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:18:29.494 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:18:59.495 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:19:00.957 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:19:29.496 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:19:59.497 [info] {"source":"oban","duration":781,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:20:00.958 [info] {"source":"oban","duration":126,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:20:29.499 [info] {"source":"oban","duration":768,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:20:59.501 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:21:00.959 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:21:29.502 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:21:59.503 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:22:00.960 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:22:29.504 [info] {"source":"oban","duration":742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:22:59.506 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:23:00.961 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:23:29.507 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:23:59.508 [info] {"source":"oban","duration":728,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:24:00.962 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:24:29.510 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:24:59.511 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:25:00.963 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:25:29.512 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:25:59.513 [info] {"source":"oban","duration":819,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":1} 08:26:00.964 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:26:29.515 [info] {"source":"oban","duration":704,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:26:59.516 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:27:00.965 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:27:29.517 [info] {"source":"oban","duration":672,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:27:59.518 [info] {"source":"oban","duration":495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:28:00.966 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:28:29.519 [info] {"source":"oban","duration":728,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:28:59.520 [info] {"source":"oban","duration":436,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:29:00.967 [info] {"source":"oban","duration":261,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:29:29.521 [info] {"source":"oban","duration":749,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:29:59.522 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:30:00.968 [info] {"source":"oban","duration":257,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:30:29.523 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:30:59.524 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:31:00.969 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:31:29.525 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:31:59.526 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:32:00.970 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:32:29.527 [info] {"source":"oban","duration":786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:32:59.529 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:33:00.971 [info] {"source":"oban","duration":291,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:33:29.530 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:33:59.531 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:34:00.972 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:34:29.532 [info] {"source":"oban","duration":777,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:34:59.533 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:35:00.973 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:35:29.534 [info] {"source":"oban","duration":437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:35:59.535 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:36:00.974 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:36:29.536 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:36:59.537 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:37:00.975 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:37:29.538 [info] {"source":"oban","duration":617,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:37:59.539 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:38:00.976 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:38:29.540 [info] {"source":"oban","duration":745,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:38:59.541 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:39:00.977 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:39:29.542 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:39:59.543 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:40:00.978 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:40:29.544 [info] {"source":"oban","duration":652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:40:59.545 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:41:00.979 [info] {"source":"oban","duration":215,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:41:29.547 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:41:59.548 [info] {"source":"oban","duration":635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:42:00.980 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:42:29.549 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:42:59.550 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:43:00.981 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:43:29.551 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:43:59.552 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:44:00.982 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:44:29.553 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:44:59.554 [info] {"source":"oban","duration":449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:45:00.983 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:45:24.400 [info] GET / 08:45:24.400 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 08:45:24.400 [debug] QUERY OK source="settings" db=0.2ms idle=1406.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 [] 08:45:24.400 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1406.7ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 08:45:24.401 [debug] QUERY OK source="sources" db=0.0ms idle=1406.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 08:45:24.401 [debug] QUERY OK source="media_items" db=0.8ms idle=910.6ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 08:45:24.402 [debug] QUERY OK source="media_items" db=0.2ms idle=408.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 08:45:24.402 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:45:24.402 [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 [] 08:45:24.403 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:45:24.403 [debug] QUERY OK source="tasks" db=0.1ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 08:45:24.403 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 08:45:24.404 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 08:45:24.404 [debug] QUERY OK source="sources" db=0.1ms idle=1.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 (?,?)) [4, 3] 08:45:24.406 [debug] QUERY OK source="media_items" db=1.0ms idle=1.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 08:45:24.406 [debug] QUERY OK source="media_items" db=0.3ms idle=2.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_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] 08:45:24.406 [debug] QUERY OK source="sources" db=0.0ms idle=2.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 08:45:24.407 [info] Sent 200 in 7ms 08:45:26.496 [info] GET / 08:45:26.496 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 08:45:26.496 [debug] QUERY OK source="settings" db=0.1ms idle=502.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:45:26.496 [debug] QUERY OK source="media_profiles" db=0.1ms idle=502.5ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 08:45:26.496 [debug] QUERY OK source="sources" db=0.0ms idle=502.8ms SELECT count(s0."id") FROM "sources" AS s0 [] 08:45:26.497 [debug] QUERY OK source="media_items" db=0.8ms idle=503.0ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 08:45:26.498 [debug] QUERY OK source="media_items" db=0.1ms idle=4.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 08:45:26.498 [debug] QUERY OK source="settings" db=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:45:26.498 [debug] QUERY OK source="settings" db=0.0ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:45:26.498 [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 [] 08:45:26.499 [debug] QUERY OK source="tasks" db=0.0ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 08:45:26.499 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 08:45:26.500 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 08:45:26.500 [debug] QUERY OK source="sources" db=0.0ms idle=1.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 (?,?)) [4, 3] 08:45:26.501 [debug] QUERY OK source="media_items" db=0.9ms idle=1.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"))) [] 08:45:26.502 [debug] QUERY OK source="media_items" db=0.3ms idle=2.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_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] 08:45:26.502 [debug] QUERY OK source="sources" db=0.0ms idle=2.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 08:45:26.503 [info] Sent 200 in 7ms 08:45:29.555 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:45:59.556 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:46:00.984 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:46:29.557 [info] {"source":"oban","duration":287,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:46:59.558 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:47:00.985 [info] {"source":"oban","duration":302,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:47:29.559 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:47:59.560 [info] {"source":"oban","duration":743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:48:00.986 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:48:29.561 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:48:56.709 [info] {"args":{"id":4},"id":2330,"meta":{},"system_time":1766306936709474160,"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"]} 08:48:56.709 [debug] QUERY OK source="sources" db=0.1ms idle=1715.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" = ?) [4] 08:48:56.710 [debug] QUERY OK source="settings" db=0.4ms idle=1716.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 [] 08:48:56.711 [debug] QUERY OK source="media_items" db=0.5ms idle=1008.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")))) [4] 08:48:56.711 [debug] QUERY OK source="media_items" db=0.1ms idle=7.6ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [4] 08:48:56.711 [debug] QUERY OK source="media_profiles" db=0.0ms idle=2.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:48:56.712 [debug] QUERY OK source="settings" db=0.0ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:48:56.712 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:48:56.713 [debug] QUERY OK source="media_items" db=0.7ms idle=1.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."source_id" = ?) ORDER BY m0."uploaded_at" DESC LIMIT 50 OFFSET 20 [4] 08:48:56.713 [debug] Running yt-dlp command for action: get_media_attributes_for_collection 08:48:56.713 [debug] Current batch of media processed. Will check again in 1000ms 08:48:56.713 [debug] QUERY OK source="settings" db=0.0ms idle=2.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:48:56.714 [debug] QUERY OK source="settings" db=0.0ms idle=2.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:48:56.714 [debug] QUERY OK source="settings" db=0.0ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:48:56.714 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/@yunjadong --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/윤자동/%(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/9b/f4/9bf4f92db00466bedd119382d1d3f441f9fc56b277ba66df65f9e287e3b88c46.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/68/3e680197870fef1ad96e3864f9644c164b135fcc95f8e90aec53177fb92ec456.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:48:57.714 [debug] Current batch of media processed. Will check again in 1000ms 08:48:58.715 [debug] Current batch of media processed. Will check again in 1000ms 08:48:59.562 [info] {"source":"oban","duration":779,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:48:59.716 [debug] Current batch of media processed. Will check again in 1000ms 08:49:00.717 [debug] Current batch of media processed. Will check again in 1000ms 08:49:00.987 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:49:01.719 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "📌 신영선 대표님이 직접 운영 중인 AI 서비스 & 커뮤니티\n\n1️⃣ 무료 자료가 넘치는 1.2만 명 AI 커뮤니티 카페\n👉 https://bit.ly/4oPtPSK\n\n2️⃣ 국내 최초 생성형 상세페이지 AI\n👉 https://bit.ly/47RsNQq\n\n3️⃣ 블로그 마케팅 외주비를 아껴주는 블로그 AI\n👉 https://bit.ly/3X6mNgv\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "duration" => 2029, "filename" => "/downloads/윤자동/2025-12-16 이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰]/이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰] [ZVGY6IaAb9U].mp4", "id" => "ZVGY6IaAb9U", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=ZVGY6IaAb9U", "playlist_index" => 1, "timestamp" => 1765873000, "title" => "이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰]", "upload_date" => "20251216"} 08:49:01.719 [debug] QUERY OK source="sources" db=0.1ms idle=1725.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 (?)) [4] 08:49:01.719 [debug] QUERY OK source="sources" db=0.1ms idle=1725.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] 08:49:01.720 [debug] QUERY OK source="media_items" db=0.2ms idle=1011.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-16 08:16:40Z], 4] 08:49:01.721 [debug] QUERY OK source="media_items" db=0.6ms idle=733.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["📌 신영선 대표님이 직접 운영 중인 AI 서비스 & 커뮤니티\n\n1️⃣ 무료 자료가 넘치는 1.2만 명 AI 커뮤니티 카페\n👉 https://bit.ly/4oPtPSK\n\n2️⃣ 국내 최초 생성형 상세페이지 AI\n👉 https://bit.ly/47RsNQq\n\n3️⃣ 블로그 마케팅 외주비를 아껴주는 블로그 AI\n👉 https://bit.ly/3X6mNgv\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰]", "5422faa7-78ca-46c7-8e5e-21f3a5658a2c", false, 2029, false, "ZVGY6IaAb9U", "https://www.youtube.com/watch?v=ZVGY6IaAb9U", 1, "/downloads/윤자동/2025-12-16 이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰]/이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰] [ZVGY6IaAb9U].mp4", false, false, 4, [], 98, ~U[2025-12-16 08:16:40Z], ~U[2025-12-21 08:49:01Z], ~U[2025-12-21 08:49:01Z], "📌 신영선 대표님이 직접 운영 중인 AI 서비스 & 커뮤니티\n\n1️⃣ 무료 자료가 넘치는 1.2만 명 AI 커뮤니티 카페\n👉 https://bit.ly/4oPtPSK\n\n2️⃣ 국내 최초 생성형 상세페이지 AI\n👉 https://bit.ly/47RsNQq\n\n3️⃣ 블로그 마케팅 외주비를 아껴주는 블로그 AI\n👉 https://bit.ly/3X6mNgv\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰]", 2029, false, "ZVGY6IaAb9U", "https://www.youtube.com/watch?v=ZVGY6IaAb9U", "/downloads/윤자동/2025-12-16 이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰]/이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰] [ZVGY6IaAb9U].mp4", false, 4, ~U[2025-12-16 08:16:40Z]] 08:49:01.721 [debug] QUERY OK source="sources" db=0.0ms 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" = ?) [4] 08:49:01.721 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:01.721 [debug] QUERY OK source="media_items" db=0.0ms idle=1.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 [10281] 08:49:01.722 [debug] Current batch of media processed. Will check again in 1000ms 08:49:02.722 [debug] Current batch of media processed. Will check again in 1000ms 08:49:03.724 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "마누스 사용해보러 가기~!\n👉https://manus.im/redeem?c=odvkmtu\n마누스 보안이 궁금하신분은: https://trust.manus.im\n\n🎁 댓글 남기고 30만원 상당의 선물 응모하세요.\n• 응모 기간 : 지금부터 2025-12-18(목) 23:59 까지\n• 당첨 발표 : 2025‑12‑19(금) 윤자동 채널 커뮤니티 탭\n• 경품 : 마누스 AI Pro 1개월 이용권 (약 30만원 상당) 2명\n\n✅ 참여 방법\n1. 이 영상에 댓글을 남겨주시면 자동 응모됩니다!\n2. 당첨 발표 후, 당첨자는 커뮤니티 탭에 올라온 링크로 본인의 유튜브 계정임을 인증하는 사진과 마누스 가입한 이메일을 보내주시면 해당 계정에 Pro 1개월 이용권을 지급해드립니다.\n(당첨 발표 후 48시간 이내에 이메일을 제출하지 않을 경우, 당첨은 자동 취소되며 예비 당첨자에게 기회가 넘어갑니다.)\n\n영상이 유익했다면 좋아요와 구독도 함께 부탁드려요 😊\n\n※ 본 영상은 마누스 AI (Manus AI)의 지원(유료 광고)으로 제작되었습니다.\n\n#마누스AI #ManusAI #Manus 1.5#업무자동화 #AI자동화 #자동화툴 #생산성향상\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "duration" => 941, "filename" => "/downloads/윤자동/2025-12-11 당신이 기다렸던 진짜 혼자 다하는 AI 등장/당신이 기다렸던 진짜 혼자 다하는 AI 등장 [fipV6y2sz64].mp4", "id" => "fipV6y2sz64", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=fipV6y2sz64", "playlist_index" => 2, "timestamp" => 1765443669, "title" => "당신이 기다렸던 진짜 혼자 다하는 AI 등장", "upload_date" => "20251211"} 08:49:03.724 [debug] QUERY OK source="sources" db=0.2ms idle=730.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] 08:49:03.725 [debug] QUERY OK source="sources" db=0.3ms idle=730.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] 08:49:03.726 [debug] QUERY OK source="media_items" db=0.6ms idle=731.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-11 09:01:09Z], 4] 08:49:03.727 [debug] QUERY OK source="media_items" db=0.6ms idle=732.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["마누스 사용해보러 가기~!\n👉https://manus.im/redeem?c=odvkmtu\n마누스 보안이 궁금하신분은: https://trust.manus.im\n\n🎁 댓글 남기고 30만원 상당의 선물 응모하세요.\n• 응모 기간 : 지금부터 2025-12-18(목) 23:59 까지\n• 당첨 발표 : 2025‑12‑19(금) 윤자동 채널 커뮤니티 탭\n• 경품 : 마누스 AI Pro 1개월 이용권 (약 30만원 상당) 2명\n\n✅ 참여 방법\n1. 이 영상에 댓글을 남겨주시면 자동 응모됩니다!\n2. 당첨 발표 후, 당첨자는 커뮤니티 탭에 올라온 링크로 본인의 유튜브 계정임을 인증하는 사진과 마누스 가입한 이메일을 보내주시면 해당 계정에 Pro 1개월 이용권을 지급해드립니다.\n(당첨 발표 후 48시간 이내에 이메일을 제출하지 않을 경우, 당첨은 자동 취소되며 예비 당첨자에게 기회가 넘어갑니다.)\n\n영상이 유익했다면 좋아요와 구독도 함께 부탁드려요 😊\n\n※ 본 영상은 마누스 AI (Manus AI)의 지원(유료 광고)으로 제작되었습니다.\n\n#마누스AI #ManusAI #Manus 1.5#업무자동화 #AI자동화 #자동화툴 #생산성향상\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "당신이 기다렸던 진짜 혼자 다하는 AI 등장", "a78694d1-96f1-42ca-8e39-98a250f43f56", false, 941, false, "fipV6y2sz64", "https://www.youtube.com/watch?v=fipV6y2sz64", 2, "/downloads/윤자동/2025-12-11 당신이 기다렸던 진짜 혼자 다하는 AI 등장/당신이 기다렸던 진짜 혼자 다하는 AI 등장 [fipV6y2sz64].mp4", false, false, 4, [], 98, ~U[2025-12-11 09:01:09Z], ~U[2025-12-21 08:49:03Z], ~U[2025-12-21 08:49:03Z], "마누스 사용해보러 가기~!\n👉https://manus.im/redeem?c=odvkmtu\n마누스 보안이 궁금하신분은: https://trust.manus.im\n\n🎁 댓글 남기고 30만원 상당의 선물 응모하세요.\n• 응모 기간 : 지금부터 2025-12-18(목) 23:59 까지\n• 당첨 발표 : 2025‑12‑19(금) 윤자동 채널 커뮤니티 탭\n• 경품 : 마누스 AI Pro 1개월 이용권 (약 30만원 상당) 2명\n\n✅ 참여 방법\n1. 이 영상에 댓글을 남겨주시면 자동 응모됩니다!\n2. 당첨 발표 후, 당첨자는 커뮤니티 탭에 올라온 링크로 본인의 유튜브 계정임을 인증하는 사진과 마누스 가입한 이메일을 보내주시면 해당 계정에 Pro 1개월 이용권을 지급해드립니다.\n(당첨 발표 후 48시간 이내에 이메일을 제출하지 않을 경우, 당첨은 자동 취소되며 예비 당첨자에게 기회가 넘어갑니다.)\n\n영상이 유익했다면 좋아요와 구독도 함께 부탁드려요 😊\n\n※ 본 영상은 마누스 AI (Manus AI)의 지원(유료 광고)으로 제작되었습니다.\n\n#마누스AI #ManusAI #Manus 1.5#업무자동화 #AI자동화 #자동화툴 #생산성향상\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "당신이 기다렸던 진짜 혼자 다하는 AI 등장", 941, false, "fipV6y2sz64", "https://www.youtube.com/watch?v=fipV6y2sz64", "/downloads/윤자동/2025-12-11 당신이 기다렸던 진짜 혼자 다하는 AI 등장/당신이 기다렸던 진짜 혼자 다하는 AI 등장 [fipV6y2sz64].mp4", false, 4, ~U[2025-12-11 09:01:09Z]] 08:49:03.727 [debug] QUERY OK source="sources" db=0.1ms idle=14.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] 08:49:03.727 [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] 08:49:03.727 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [9979] 08:49:03.728 [debug] Current batch of media processed. Will check again in 1000ms 08:49:04.728 [debug] Current batch of media processed. Will check again in 1000ms 08:49:05.730 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "퇴사 이후의 길은 누구에게나 막막합니다. 하지만 누군가는 그 시간을 \n새로운 시작의 기회로 바꾸어냅니다.\n이번 영상에서는 커밍쏜님과 함께 퇴사 후 유튜브를 시작하는 이유, 그리고 1인 퍼스널브랜딩으로 자신의 이름을 하나의 브랜드로 만들어가는 과정에 대해 깊이 있게 이야기했습니다.\n\n@커밍쏜 \n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#업무자동화 #퍼스널브랜딩 #커밍쏜 #인사이트 #유튜브성장 #퇴사 #1인기업가", "duration" => 2092, "filename" => "/downloads/윤자동/2025-12-10 퇴사 생각 있으시다면 이 영상부터 보세요/퇴사 생각 있으시다면 이 영상부터 보세요 [gOTReFKU72s].mkv", "id" => "gOTReFKU72s", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=gOTReFKU72s", "playlist_index" => 3, "timestamp" => 1765355432, "title" => "퇴사 생각 있으시다면 이 영상부터 보세요", "upload_date" => "20251210"} 08:49:05.730 [debug] QUERY OK source="sources" db=0.1ms idle=736.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 (?)) [4] 08:49:05.730 [debug] QUERY OK source="sources" db=0.1ms idle=736.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" = ?) [4] 08:49:05.731 [debug] QUERY OK source="media_items" db=0.6ms idle=736.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-10 08:30:32Z], 4] 08:49:05.732 [debug] QUERY OK source="media_items" db=0.6ms idle=737.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["퇴사 이후의 길은 누구에게나 막막합니다. 하지만 누군가는 그 시간을 \n새로운 시작의 기회로 바꾸어냅니다.\n이번 영상에서는 커밍쏜님과 함께 퇴사 후 유튜브를 시작하는 이유, 그리고 1인 퍼스널브랜딩으로 자신의 이름을 하나의 브랜드로 만들어가는 과정에 대해 깊이 있게 이야기했습니다.\n\n@커밍쏜 \n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#업무자동화 #퍼스널브랜딩 #커밍쏜 #인사이트 #유튜브성장 #퇴사 #1인기업가", "퇴사 생각 있으시다면 이 영상부터 보세요", "6611a77f-fe8d-4b03-8c3e-5b3b4a2dfa8d", false, 2092, false, "gOTReFKU72s", "https://www.youtube.com/watch?v=gOTReFKU72s", 3, "/downloads/윤자동/2025-12-10 퇴사 생각 있으시다면 이 영상부터 보세요/퇴사 생각 있으시다면 이 영상부터 보세요 [gOTReFKU72s].mkv", false, false, 4, [], 98, ~U[2025-12-10 08:30:32Z], ~U[2025-12-21 08:49:05Z], ~U[2025-12-21 08:49:05Z], "퇴사 이후의 길은 누구에게나 막막합니다. 하지만 누군가는 그 시간을 \n새로운 시작의 기회로 바꾸어냅니다.\n이번 영상에서는 커밍쏜님과 함께 퇴사 후 유튜브를 시작하는 이유, 그리고 1인 퍼스널브랜딩으로 자신의 이름을 하나의 브랜드로 만들어가는 과정에 대해 깊이 있게 이야기했습니다.\n\n@커밍쏜 \n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#업무자동화 #퍼스널브랜딩 #커밍쏜 #인사이트 #유튜브성장 #퇴사 #1인기업가", "퇴사 생각 있으시다면 이 영상부터 보세요", 2092, false, "gOTReFKU72s", "https://www.youtube.com/watch?v=gOTReFKU72s", "/downloads/윤자동/2025-12-10 퇴사 생각 있으시다면 이 영상부터 보세요/퇴사 생각 있으시다면 이 영상부터 보세요 [gOTReFKU72s].mkv", false, 4, ~U[2025-12-10 08:30:32Z]] 08:49:05.732 [debug] QUERY OK source="sources" db=0.0ms idle=18.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" = ?) [4] 08:49:05.733 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:05.733 [debug] QUERY OK source="media_items" db=0.1ms 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 [9831] 08:49:05.733 [debug] Current batch of media processed. Will check again in 1000ms 08:49:06.733 [debug] Current batch of media processed. Will check again in 1000ms 08:49:07.735 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 [플라우드노트 프로 구매 링크]\n🔗https://mkt.shopping.naver.com/link/692407bb165146157ed2e485?nt_source=Youtube&nt_medium=PP&nt_detail=678&nt_keyword=\n\n🎁 댓글 이벤트 안내\n\n이번 영상 공개 기념으로 댓글을 남겨주신 분들 중 1분을 추첨해 \n‘플라우드노트 프로’ 1대를 선물로 드립니다!\n\n참여 방법:\n1) 영상 좋아요 👍 \n2) 구독 버튼 클릭 \n3) 아무 댓글이나 작성!\n\n기간: 업로드일 기준 7일간\n발표: 7일 후 유튜브 커뮤니티 탭 공지\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#플라우드노트 #플라우드노트프로 #회의록자동화 #노션자동화 #Zapier #업무자동화 #회의록", "duration" => 519, "filename" => "/downloads/윤자동/2025-12-05 플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동)/플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동) [KSI19aPorh0].mp4", "id" => "KSI19aPorh0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=KSI19aPorh0", "playlist_index" => 4, "timestamp" => 1764923420, "title" => "플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동)", "upload_date" => "20251205"} 08:49:07.735 [debug] QUERY OK source="sources" db=0.1ms idle=741.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 (?)) [4] 08:49:07.735 [debug] QUERY OK source="sources" db=0.1ms idle=741.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" = ?) [4] 08:49:07.736 [debug] QUERY OK source="media_items" db=0.5ms idle=741.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-05 08:30:20Z], 4] 08:49:07.738 [debug] QUERY OK source="media_items" db=1.1ms idle=742.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["👉 [플라우드노트 프로 구매 링크]\n🔗https://mkt.shopping.naver.com/link/692407bb165146157ed2e485?nt_source=Youtube&nt_medium=PP&nt_detail=678&nt_keyword=\n\n🎁 댓글 이벤트 안내\n\n이번 영상 공개 기념으로 댓글을 남겨주신 분들 중 1분을 추첨해 \n‘플라우드노트 프로’ 1대를 선물로 드립니다!\n\n참여 방법:\n1) 영상 좋아요 👍 \n2) 구독 버튼 클릭 \n3) 아무 댓글이나 작성!\n\n기간: 업로드일 기준 7일간\n발표: 7일 후 유튜브 커뮤니티 탭 공지\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#플라우드노트 #플라우드노트프로 #회의록자동화 #노션자동화 #Zapier #업무자동화 #회의록", "플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동)", "af3af04d-a5d7-45cd-a6e9-4fe3820e8135", false, 519, false, "KSI19aPorh0", "https://www.youtube.com/watch?v=KSI19aPorh0", 4, "/downloads/윤자동/2025-12-05 플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동)/플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동) [KSI19aPorh0].mp4", false, false, 4, [], 98, ~U[2025-12-05 08:30:20Z], ~U[2025-12-21 08:49:07Z], ~U[2025-12-21 08:49:07Z], "👉 [플라우드노트 프로 구매 링크]\n🔗https://mkt.shopping.naver.com/link/692407bb165146157ed2e485?nt_source=Youtube&nt_medium=PP&nt_detail=678&nt_keyword=\n\n🎁 댓글 이벤트 안내\n\n이번 영상 공개 기념으로 댓글을 남겨주신 분들 중 1분을 추첨해 \n‘플라우드노트 프로’ 1대를 선물로 드립니다!\n\n참여 방법:\n1) 영상 좋아요 👍 \n2) 구독 버튼 클릭 \n3) 아무 댓글이나 작성!\n\n기간: 업로드일 기준 7일간\n발표: 7일 후 유튜브 커뮤니티 탭 공지\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#플라우드노트 #플라우드노트프로 #회의록자동화 #노션자동화 #Zapier #업무자동화 #회의록", "플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동)", 519, false, "KSI19aPorh0", "https://www.youtube.com/watch?v=KSI19aPorh0", "/downloads/윤자동/2025-12-05 플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동)/플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동) [KSI19aPorh0].mp4", false, 4, ~U[2025-12-05 08:30:20Z]] 08:49:07.738 [debug] QUERY OK source="sources" db=0.0ms 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" = ?) [4] 08:49:07.738 [debug] QUERY OK source="media_profiles" db=0.0ms idle=2.7ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:07.738 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [9449] 08:49:07.738 [debug] Current batch of media processed. Will check again in 1000ms 08:49:08.739 [debug] Current batch of media processed. Will check again in 1000ms 08:49:09.740 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "아래 링크에서 감마를 시작하세요!\nhttps://gamma.app/\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "duration" => 542, "filename" => "/downloads/윤자동/2025-12-01 아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다/아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다 [Fi2VatU5y2w].mp4", "id" => "Fi2VatU5y2w", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Fi2VatU5y2w", "playlist_index" => 5, "timestamp" => 1764577816, "title" => "아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다", "upload_date" => "20251201"} 08:49:09.740 [debug] QUERY OK source="sources" db=0.1ms idle=746.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 (?)) [4] 08:49:09.740 [debug] QUERY OK source="sources" db=0.2ms idle=746.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] 08:49:09.741 [debug] QUERY OK source="media_items" db=0.6ms idle=747.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-01 08:30:16Z], 4] 08:49:09.742 [debug] QUERY OK source="media_items" db=0.6ms idle=747.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["아래 링크에서 감마를 시작하세요!\nhttps://gamma.app/\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다", "ffb09926-e8ea-40fb-b37a-17723dad6a04", false, 542, false, "Fi2VatU5y2w", "https://www.youtube.com/watch?v=Fi2VatU5y2w", 5, "/downloads/윤자동/2025-12-01 아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다/아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다 [Fi2VatU5y2w].mp4", false, false, 4, [], 98, ~U[2025-12-01 08:30:16Z], ~U[2025-12-21 08:49:09Z], ~U[2025-12-21 08:49:09Z], "아래 링크에서 감마를 시작하세요!\nhttps://gamma.app/\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다", 542, false, "Fi2VatU5y2w", "https://www.youtube.com/watch?v=Fi2VatU5y2w", "/downloads/윤자동/2025-12-01 아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다/아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다 [Fi2VatU5y2w].mp4", false, 4, ~U[2025-12-01 08:30:16Z]] 08:49:09.742 [debug] QUERY OK source="sources" db=0.1ms idle=24.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" = ?) [4] 08:49:09.743 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.5ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:09.743 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [9153] 08:49:09.743 [debug] Current batch of media processed. Will check again in 1000ms 08:49:10.743 [debug] Current batch of media processed. Will check again in 1000ms 08:49:11.745 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "📍 장소 협찬: 라임스퀘어파티룸 강남역점\n👉 https://blog.naver.com/lime_sq\n\n💻레플릿 오프라인 강의 신청 링크:\n🔗 https://www.yunjadong.com/programs/?idx=152\n\n💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Replit #AI자동화 #AI강의 #오프라인강의 #기업강의 #노코드 #바이브코딩 #업무자동화 #코딩 #레플릿", "duration" => 693, "filename" => "/downloads/윤자동/2025-11-28 Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup/Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup [LrFiEdUiBwY].mp4", "id" => "LrFiEdUiBwY", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=LrFiEdUiBwY", "playlist_index" => 6, "timestamp" => 1764323661, "title" => "Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup", "upload_date" => "20251128"} 08:49:11.745 [debug] QUERY OK source="sources" db=0.3ms idle=751.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 (?)) [4] 08:49:11.746 [debug] QUERY OK source="sources" db=0.1ms idle=752.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] 08:49:11.746 [debug] QUERY OK source="media_items" db=0.6ms idle=752.2ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-28 09:54:21Z], 4] 08:49:11.747 [debug] QUERY OK source="media_items" db=0.6ms idle=753.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["📍 장소 협찬: 라임스퀘어파티룸 강남역점\n👉 https://blog.naver.com/lime_sq\n\n💻레플릿 오프라인 강의 신청 링크:\n🔗 https://www.yunjadong.com/programs/?idx=152\n\n💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Replit #AI자동화 #AI강의 #오프라인강의 #기업강의 #노코드 #바이브코딩 #업무자동화 #코딩 #레플릿", "Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup", "b3883466-c67e-44e3-b82c-bbbf654c47bc", false, 693, false, "LrFiEdUiBwY", "https://www.youtube.com/watch?v=LrFiEdUiBwY", 6, "/downloads/윤자동/2025-11-28 Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup/Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup [LrFiEdUiBwY].mp4", false, false, 4, [], 98, ~U[2025-11-28 09:54:21Z], ~U[2025-12-21 08:49:11Z], ~U[2025-12-21 08:49:11Z], "📍 장소 협찬: 라임스퀘어파티룸 강남역점\n👉 https://blog.naver.com/lime_sq\n\n💻레플릿 오프라인 강의 신청 링크:\n🔗 https://www.yunjadong.com/programs/?idx=152\n\n💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Replit #AI자동화 #AI강의 #오프라인강의 #기업강의 #노코드 #바이브코딩 #업무자동화 #코딩 #레플릿", "Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup", 693, false, "LrFiEdUiBwY", "https://www.youtube.com/watch?v=LrFiEdUiBwY", "/downloads/윤자동/2025-11-28 Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup/Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup [LrFiEdUiBwY].mp4", false, 4, ~U[2025-11-28 09:54:21Z]] 08:49:11.748 [debug] QUERY OK source="sources" db=0.1ms idle=27.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" = ?) [4] 08:49:11.748 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:11.748 [debug] QUERY OK source="media_items" db=0.2ms 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 [9007] 08:49:11.748 [debug] Current batch of media processed. Will check again in 1000ms 08:49:12.749 [debug] Current batch of media processed. Will check again in 1000ms 08:49:13.751 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "duration" => 9017, "filename" => "/downloads/윤자동/2025-11-26 세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다]/세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다] [UNOSfBOA69I].mp4", "id" => "UNOSfBOA69I", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=UNOSfBOA69I", "playlist_index" => 7, "timestamp" => 1764129335, "title" => "세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다]", "upload_date" => "20251126"} 08:49:13.751 [debug] QUERY OK source="sources" db=0.1ms idle=757.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 (?)) [4] 08:49:13.751 [debug] QUERY OK source="sources" db=0.2ms idle=757.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" = ?) [4] 08:49:13.752 [debug] QUERY OK source="media_items" db=0.5ms idle=757.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-26 03:55:35Z], 4] 08:49:13.753 [debug] QUERY OK source="media_items" db=0.5ms idle=758.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다]", "77f28c05-2122-4200-a48a-af12d883996b", false, 9017, false, "UNOSfBOA69I", "https://www.youtube.com/watch?v=UNOSfBOA69I", 7, "/downloads/윤자동/2025-11-26 세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다]/세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다] [UNOSfBOA69I].mp4", false, false, 4, [], 98, ~U[2025-11-26 03:55:35Z], ~U[2025-12-21 08:49:13Z], ~U[2025-12-21 08:49:13Z], "🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다]", 9017, false, "UNOSfBOA69I", "https://www.youtube.com/watch?v=UNOSfBOA69I", "/downloads/윤자동/2025-11-26 세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다]/세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다] [UNOSfBOA69I].mp4", false, 4, ~U[2025-11-26 03:55:35Z]] 08:49:13.753 [debug] QUERY OK source="sources" db=0.1ms idle=31.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" = ?) [4] 08:49:13.754 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:13.754 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [8793] 08:49:13.754 [debug] Current batch of media processed. Will check again in 1000ms 08:49:14.754 [debug] Current batch of media processed. Will check again in 1000ms 08:49:15.756 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n이젠 복잡한 API 키 설정, 인증, 문서 찾기에 5분 이상 낭비하지 마세요! \nReplit AI Integrations는 비개발자도 아이디어만 있으면 3분 만에 실제 작동하는 \n수천만원급 AI 자동화 웹사이트를 '딸깍' 한 번으로 만들고 배포할 수 있게 해줍니다.\n\nAPI 연결 없이 GPT-4o, Gemini 등 300개 이상의 최신 AI 모델을 활용하여 \n바로 빌드하세요!\n\n이번 영상에서는 \n✔ API 키 없이 AI 앱을 만드는 혁신적인 과정\n ✔ 3분 만에 웹사이트 디자인 및 기능 구현 시연\n ✔ 원클릭 배포와 비즈니스 활용 사례 를 모두 보여드립니다.\n\n⚡ Replit AI Integrations 주요 특징\n\nAPI 키 ❌, 설정 ❌: 복잡한 API 키 관리나 인증 없이 바로 빌드 가능합니다.\n300개 이상 모델 지원: GPT-4o, Gemini 등 최신 모델을 포함한 300+ 모델을 활용할 수 있습니다.\n올인원 & 원클릭 배포: 개발, 테스트, 원클릭 URL 생성까지 Replit 안에서 모두 해결됩니다.\nAI와 협업하는 새로운 개발 패러다임, Replit AI Integrations와 함께 직접 경험해 보세요! 🚀\n\n🎓 윤자동 올인원 멤버십 OPEN! 한 번의 선택으로 윤자동의 모든 지식을! 이제 모든 강의를 1년간 무제한 수강하세요. 👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지 👉 https://www.yunjadong.com/\n\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기 👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의 📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중! 자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면 좋아요 👍 구독 🔔 댓글 💬 부탁드립니다! 여러분의 피드백이 다음 콘텐츠를 만듭니다 :)\n\n#Replit #ReplitAI #AI코딩 #레플릿 #웹사이트자동화 #비개발자 #노코드개발 #AI자동화 #업무자동화 #Replit튜토리얼 #Replit강의 #ReplitAIIntegrations", "duration" => 447, "filename" => "/downloads/윤자동/2025-11-13 Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법/Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법 [V-KdgY8Mmnc].mp4", "id" => "V-KdgY8Mmnc", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=V-KdgY8Mmnc", "playlist_index" => 8, "timestamp" => 1763022614, "title" => "Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법", "upload_date" => "20251113"} 08:49:15.756 [debug] QUERY OK source="sources" db=0.1ms idle=762.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 (?)) [4] 08:49:15.757 [debug] QUERY OK source="sources" db=0.1ms idle=762.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] 08:49:15.757 [debug] QUERY OK source="media_items" db=0.7ms idle=763.1ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-13 08:30:14Z], 4] 08:49:15.759 [debug] QUERY OK source="media_items" db=0.7ms idle=764.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n이젠 복잡한 API 키 설정, 인증, 문서 찾기에 5분 이상 낭비하지 마세요! \nReplit AI Integrations는 비개발자도 아이디어만 있으면 3분 만에 실제 작동하는 \n수천만원급 AI 자동화 웹사이트를 '딸깍' 한 번으로 만들고 배포할 수 있게 해줍니다.\n\nAPI 연결 없이 GPT-4o, Gemini 등 300개 이상의 최신 AI 모델을 활용하여 \n바로 빌드하세요!\n\n이번 영상에서는 \n✔ API 키 없이 AI 앱을 만드는 혁신적인 과정\n ✔ 3분 만에 웹사이트 디자인 및 기능 구현 시연\n ✔ 원클릭 배포와 비즈니스 활용 사례 를 모두 보여드립니다.\n\n⚡ Replit AI Integrations 주요 특징\n\nAPI 키 ❌, 설정 ❌: 복잡한 API 키 관리나 인증 없이 바로 빌드 가능합니다.\n300개 이상 모델 지원: GPT-4o, Gemini 등 최신 모델을 포함한 300+ 모델을 활용할 수 있습니다.\n올인원 & 원클릭 배포: 개발, 테스트, 원클릭 URL 생성까지 Replit 안에서 모두 해결됩니다.\nAI와 협업하는 새로운 개발 패러다임, Replit AI Integrations와 함께 직접 경험해 보세요! 🚀\n\n🎓 윤자동 올인원 멤버십 OPEN! 한 번의 선택으로 윤자동의 모든 지식을! 이제 모든 강의를 1년간 무제한 수강하세요. 👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지 👉 https://www.yunjadong.com/\n\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기 👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의 📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중! 자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면 좋아요 👍 구독 🔔 댓글 💬 부탁드립니다! 여러분의 피드백이 다음 콘텐츠를 만듭니다 :)\n\n#Replit #ReplitAI #AI코딩 #레플릿 #웹사이트자동화 #비개발자 #노코드개발 #AI자동화 #업무자동화 #Replit튜토리얼 #Replit강의 #ReplitAIIntegrations", "Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법", "acdf0fb9-58bb-4461-9309-8db2ab48216f", false, 447, false, "V-KdgY8Mmnc", "https://www.youtube.com/watch?v=V-KdgY8Mmnc", 8, "/downloads/윤자동/2025-11-13 Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법/Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법 [V-KdgY8Mmnc].mp4", false, false, 4, [], 98, ~U[2025-11-13 08:30:14Z], ~U[2025-12-21 08:49:15Z], ~U[2025-12-21 08:49:15Z], "💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n이젠 복잡한 API 키 설정, 인증, 문서 찾기에 5분 이상 낭비하지 마세요! \nReplit AI Integrations는 비개발자도 아이디어만 있으면 3분 만에 실제 작동하는 \n수천만원급 AI 자동화 웹사이트를 '딸깍' 한 번으로 만들고 배포할 수 있게 해줍니다.\n\nAPI 연결 없이 GPT-4o, Gemini 등 300개 이상의 최신 AI 모델을 활용하여 \n바로 빌드하세요!\n\n이번 영상에서는 \n✔ API 키 없이 AI 앱을 만드는 혁신적인 과정\n ✔ 3분 만에 웹사이트 디자인 및 기능 구현 시연\n ✔ 원클릭 배포와 비즈니스 활용 사례 를 모두 보여드립니다.\n\n⚡ Replit AI Integrations 주요 특징\n\nAPI 키 ❌, 설정 ❌: 복잡한 API 키 관리나 인증 없이 바로 빌드 가능합니다.\n300개 이상 모델 지원: GPT-4o, Gemini 등 최신 모델을 포함한 300+ 모델을 활용할 수 있습니다.\n올인원 & 원클릭 배포: 개발, 테스트, 원클릭 URL 생성까지 Replit 안에서 모두 해결됩니다.\nAI와 협업하는 새로운 개발 패러다임, Replit AI Integrations와 함께 직접 경험해 보세요! 🚀\n\n🎓 윤자동 올인원 멤버십 OPEN! 한 번의 선택으로 윤자동의 모든 지식을! 이제 모든 강의를 1년간 무제한 수강하세요. 👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지 👉 https://www.yunjadong.com/\n\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기 👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의 📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중! 자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면 좋아요 👍 구독 🔔 댓글 💬 부탁드립니다! 여러분의 피드백이 다음 콘텐츠를 만듭니다 :)\n\n#Replit #ReplitAI #AI코딩 #레플릿 #웹사이트자동화 #비개발자 #노코드개발 #AI자동화 #업무자동화 #Replit튜토리얼 #Replit강의 #ReplitAIIntegrations", "Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법", 447, false, "V-KdgY8Mmnc", "https://www.youtube.com/watch?v=V-KdgY8Mmnc", "/downloads/윤자동/2025-11-13 Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법/Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법 [V-KdgY8Mmnc].mp4", false, 4, ~U[2025-11-13 08:30:14Z]] 08:49:15.759 [debug] QUERY OK source="sources" db=0.1ms idle=34.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" = ?) [4] 08:49:15.759 [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] 08:49:15.759 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [7975] 08:49:15.759 [debug] Current batch of media processed. Will check again in 1000ms 08:49:16.759 [debug] Current batch of media processed. Will check again in 1000ms 08:49:17.761 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "Ai를 활용해서 1인 기업가로 성장한 시현님의 스토리가 더 궁금하다면? @sihyun_adventure ←←←\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "duration" => 1283, "filename" => "/downloads/윤자동/2025-11-03 자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험/자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험 [zMwYyrK8x7k].mkv", "id" => "zMwYyrK8x7k", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=zMwYyrK8x7k", "playlist_index" => 9, "timestamp" => 1762159508, "title" => "자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험", "upload_date" => "20251103"} 08:49:17.761 [debug] QUERY OK source="sources" db=0.1ms idle=767.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 (?)) [4] 08:49:17.761 [debug] QUERY OK source="sources" db=0.1ms idle=767.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] 08:49:17.762 [debug] QUERY OK source="media_items" db=0.6ms idle=767.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-03 08:45:08Z], 4] 08:49:17.763 [debug] QUERY OK source="media_items" db=0.5ms idle=768.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["Ai를 활용해서 1인 기업가로 성장한 시현님의 스토리가 더 궁금하다면? @sihyun_adventure ←←←\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험", "38f5ccfa-9793-4e00-b18d-0f6973b34a0b", false, 1283, false, "zMwYyrK8x7k", "https://www.youtube.com/watch?v=zMwYyrK8x7k", 9, "/downloads/윤자동/2025-11-03 자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험/자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험 [zMwYyrK8x7k].mkv", false, false, 4, [], 98, ~U[2025-11-03 08:45:08Z], ~U[2025-12-21 08:49:17Z], ~U[2025-12-21 08:49:17Z], "Ai를 활용해서 1인 기업가로 성장한 시현님의 스토리가 더 궁금하다면? @sihyun_adventure ←←←\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험", 1283, false, "zMwYyrK8x7k", "https://www.youtube.com/watch?v=zMwYyrK8x7k", "/downloads/윤자동/2025-11-03 자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험/자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험 [zMwYyrK8x7k].mkv", false, 4, ~U[2025-11-03 08:45:08Z]] 08:49:17.763 [debug] QUERY OK source="sources" db=0.0ms idle=37.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] 08:49:17.763 [debug] QUERY OK source="media_profiles" db=0.0ms idle=2.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:17.764 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [7310] 08:49:17.764 [debug] Current batch of media processed. Will check again in 1000ms 08:49:18.765 [debug] Current batch of media processed. Will check again in 1000ms 08:49:19.765 [debug] Current batch of media processed. Will check again in 1000ms 08:49:20.767 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "AI 없이 유튜브 시작하면 늦습니다.\n동테크님이 공개하는 AI 기획법,\n평범한 사람도 통하는 누구나 가능한 유튜브 성장 전략을 만나보세요.\n\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁과 인사이트를 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#유튜브기획 #AI기획법 #동테크 #유튜브영상제작 #유튜브AI #AI자동화 #생성형AI #업무자동화 #콘텐츠전략 #유튜브성장", "duration" => 2672, "filename" => "/downloads/윤자동/2025-10-23 유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰/유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰 [v14JiQ2-bIw].mkv", "id" => "v14JiQ2-bIw", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=v14JiQ2-bIw", "playlist_index" => 10, "timestamp" => 1761249652, "title" => "유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰", "upload_date" => "20251023"} 08:49:20.767 [debug] QUERY OK source="sources" db=0.2ms idle=1773.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 (?)) [4] 08:49:20.768 [debug] QUERY OK source="sources" db=0.2ms idle=1773.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] 08:49:20.768 [debug] QUERY OK source="media_items" db=0.5ms idle=1774.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-23 20:00:52Z], 4] 08:49:20.769 [debug] QUERY OK source="media_items" db=0.6ms idle=1040.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["AI 없이 유튜브 시작하면 늦습니다.\n동테크님이 공개하는 AI 기획법,\n평범한 사람도 통하는 누구나 가능한 유튜브 성장 전략을 만나보세요.\n\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁과 인사이트를 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#유튜브기획 #AI기획법 #동테크 #유튜브영상제작 #유튜브AI #AI자동화 #생성형AI #업무자동화 #콘텐츠전략 #유튜브성장", "유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰", "8d1af944-105b-41f3-81ea-e73cecac0301", false, 2672, false, "v14JiQ2-bIw", "https://www.youtube.com/watch?v=v14JiQ2-bIw", 10, "/downloads/윤자동/2025-10-23 유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰/유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰 [v14JiQ2-bIw].mkv", false, false, 4, [], 98, ~U[2025-10-23 20:00:52Z], ~U[2025-12-21 08:49:20Z], ~U[2025-12-21 08:49:20Z], "AI 없이 유튜브 시작하면 늦습니다.\n동테크님이 공개하는 AI 기획법,\n평범한 사람도 통하는 누구나 가능한 유튜브 성장 전략을 만나보세요.\n\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁과 인사이트를 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#유튜브기획 #AI기획법 #동테크 #유튜브영상제작 #유튜브AI #AI자동화 #생성형AI #업무자동화 #콘텐츠전략 #유튜브성장", "유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰", 2672, false, "v14JiQ2-bIw", "https://www.youtube.com/watch?v=v14JiQ2-bIw", "/downloads/윤자동/2025-10-23 유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰/유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰 [v14JiQ2-bIw].mkv", false, 4, ~U[2025-10-23 20:00:52Z]] 08:49:20.770 [debug] QUERY OK source="sources" db=0.1ms idle=40.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] 08:49:20.770 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:20.770 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [6616] 08:49:20.770 [debug] Current batch of media processed. Will check again in 1000ms 08:49:21.771 [debug] Current batch of media processed. Will check again in 1000ms 08:49:22.772 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "결혼과 동시에 창업, 그리고 투자 한 푼 없이 90만 유저를 만든 릴리스AI.\n\n요약이 아닌 ‘이해’를 만드는 AI로 성장한 부부 스타트업,\n오현수 대표와 김예인 공동창업자가 직접 들려주는 릴리스AI의 여정과 철학.\n\n🎁 댓글 이벤트 진행 중!\n댓글을 남겨주신 분들 중 3분을 추첨하여\nLilysAI 프로플랜 1개월 이용권을 드립니다 💡\n\n🎯 참여 방법\n1️⃣ 이 영상에 댓글을 남겨주시면 자동 응모됩니다.\n2️⃣ 당첨 발표 후, 커뮤니티 탭에 안내된 윤자동 카카오채널로\n본인의 유튜브 계정 인증 사진 + LilysAI 가입 이메일을 보내주세요.\n(48시간 내 미제출 시, 당첨이 자동 취소됩니다.)\n\n📅 이벤트 일정\n\n응모 기간: 지금부터 2025-10-30(목) 23:59까지\n\n당첨 발표: 2025-10-31(금) 윤자동 채널 커뮤니티 탭\n\n경품: LilysAI 프로플랜 1개월 이용권 (총 3명)\n\n📍 릴리스AI 바로가기: https://lilys.ai/\n📍업무 생산성 무한 증폭하는 : AI 실무 자동화: https://classu.co.kr/me/19173\n📍 협업 문의: ceo@yunjadong.com\n\n#릴리스AI #AI스타트업 #AI인터뷰 #업무자동화 #요약자동화 #ai툴 #LilysAI", "duration" => 1836, "filename" => "/downloads/윤자동/2025-10-17 릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰/릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰 [eUhHYs-81Uk].mkv", "id" => "eUhHYs-81Uk", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=eUhHYs-81Uk", "playlist_index" => 11, "timestamp" => 1760688301, "title" => "릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰", "upload_date" => "20251017"} 08:49:22.772 [debug] QUERY OK source="sources" db=0.1ms idle=778.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 (?)) [4] 08:49:22.772 [debug] QUERY OK source="sources" db=0.1ms idle=778.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] 08:49:22.773 [debug] QUERY OK source="media_items" db=0.6ms idle=778.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-17 08:05:01Z], 4] 08:49:22.774 [debug] QUERY OK source="media_items" db=0.6ms idle=779.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["결혼과 동시에 창업, 그리고 투자 한 푼 없이 90만 유저를 만든 릴리스AI.\n\n요약이 아닌 ‘이해’를 만드는 AI로 성장한 부부 스타트업,\n오현수 대표와 김예인 공동창업자가 직접 들려주는 릴리스AI의 여정과 철학.\n\n🎁 댓글 이벤트 진행 중!\n댓글을 남겨주신 분들 중 3분을 추첨하여\nLilysAI 프로플랜 1개월 이용권을 드립니다 💡\n\n🎯 참여 방법\n1️⃣ 이 영상에 댓글을 남겨주시면 자동 응모됩니다.\n2️⃣ 당첨 발표 후, 커뮤니티 탭에 안내된 윤자동 카카오채널로\n본인의 유튜브 계정 인증 사진 + LilysAI 가입 이메일을 보내주세요.\n(48시간 내 미제출 시, 당첨이 자동 취소됩니다.)\n\n📅 이벤트 일정\n\n응모 기간: 지금부터 2025-10-30(목) 23:59까지\n\n당첨 발표: 2025-10-31(금) 윤자동 채널 커뮤니티 탭\n\n경품: LilysAI 프로플랜 1개월 이용권 (총 3명)\n\n📍 릴리스AI 바로가기: https://lilys.ai/\n📍업무 생산성 무한 증폭하는 : AI 실무 자동화: https://classu.co.kr/me/19173\n📍 협업 문의: ceo@yunjadong.com\n\n#릴리스AI #AI스타트업 #AI인터뷰 #업무자동화 #요약자동화 #ai툴 #LilysAI", "릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰", "5c86b1ed-b289-475f-9e2b-b1ec53fdab31", false, 1836, false, "eUhHYs-81Uk", "https://www.youtube.com/watch?v=eUhHYs-81Uk", 11, "/downloads/윤자동/2025-10-17 릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰/릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰 [eUhHYs-81Uk].mkv", false, false, 4, [], 98, ~U[2025-10-17 08:05:01Z], ~U[2025-12-21 08:49:22Z], ~U[2025-12-21 08:49:22Z], "결혼과 동시에 창업, 그리고 투자 한 푼 없이 90만 유저를 만든 릴리스AI.\n\n요약이 아닌 ‘이해’를 만드는 AI로 성장한 부부 스타트업,\n오현수 대표와 김예인 공동창업자가 직접 들려주는 릴리스AI의 여정과 철학.\n\n🎁 댓글 이벤트 진행 중!\n댓글을 남겨주신 분들 중 3분을 추첨하여\nLilysAI 프로플랜 1개월 이용권을 드립니다 💡\n\n🎯 참여 방법\n1️⃣ 이 영상에 댓글을 남겨주시면 자동 응모됩니다.\n2️⃣ 당첨 발표 후, 커뮤니티 탭에 안내된 윤자동 카카오채널로\n본인의 유튜브 계정 인증 사진 + LilysAI 가입 이메일을 보내주세요.\n(48시간 내 미제출 시, 당첨이 자동 취소됩니다.)\n\n📅 이벤트 일정\n\n응모 기간: 지금부터 2025-10-30(목) 23:59까지\n\n당첨 발표: 2025-10-31(금) 윤자동 채널 커뮤니티 탭\n\n경품: LilysAI 프로플랜 1개월 이용권 (총 3명)\n\n📍 릴리스AI 바로가기: https://lilys.ai/\n📍업무 생산성 무한 증폭하는 : AI 실무 자동화: https://classu.co.kr/me/19173\n📍 협업 문의: ceo@yunjadong.com\n\n#릴리스AI #AI스타트업 #AI인터뷰 #업무자동화 #요약자동화 #ai툴 #LilysAI", "릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰", 1836, false, "eUhHYs-81Uk", "https://www.youtube.com/watch?v=eUhHYs-81Uk", "/downloads/윤자동/2025-10-17 릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰/릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰 [eUhHYs-81Uk].mkv", false, 4, ~U[2025-10-17 08:05:01Z]] 08:49:22.774 [debug] QUERY OK source="sources" db=0.0ms idle=43.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] 08:49:22.775 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:22.775 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [6237] 08:49:22.775 [debug] Current batch of media processed. Will check again in 1000ms 08:49:23.776 [debug] Current batch of media processed. Will check again in 1000ms 08:49:24.777 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "옵시디언으로 지식관리의 한계를 넘은 남자, 구요한 대표님\nAI 시대, 상위 1%가 선택한 세컨드 브레인 전략을 공개합니다.\n\n지식이 곧 자산인 시대, \n기록이 어떻게 경쟁력이 되는지 영상에서 확인하세요.\n\n📅 PKM 컨퍼런스 2025 \n여러분 드디어 PKM 컨퍼런스 신청페이지를 열었습니다! \n개인과 조직이 지식을 어떻게 관리하고 AI를 활용하는지 \n궁금하신 분들 함께해주세요. \n옵시디언, 노션, 크래프트, n8n, 에이전트, 데본씽크, 로지텍 마우스까지!\n지식관리에 진심인 분들이 각자의 이야기를 나누는 자리입니다.\n\n🗓 일정: 10/23(목) 14:00 ~ 10/24(금) 12:00 \n📍 장소: 롯데호텔앤리조트 김해 (오프라인·온라인 동시 진행) \n💰 참가비: 오프라인 3만원(숙박·식사 제공) / 온라인 1만원 \n👉 신청하기: https://cmdspace.short.gy/pkm-conference-2025\n\n🏫 커맨드스페이스 교육 플랫폼 \nhttps://class.cmdspace.kr \n\n📚 커맨드스페이스 교육 자료 \nhttps://slashpage.com/cmds-class \n\n◾️ 커맨드스페이스 유튜브 메인 채널 \nhttps://www.youtube.com/@cmdspace \n\n#옵시디언 #지식관리 #세컨드브레인 #AI #생산성 #구요한 #커맨드스페이스 #옵시디언활용법#ai툴 #CMDSPACE\n\n더 많은 인사이트와 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "duration" => 2232, "filename" => "/downloads/윤자동/2025-10-14 옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스/옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스 [-bO_J3fD4Jc].mkv", "id" => "-bO_J3fD4Jc", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=-bO_J3fD4Jc", "playlist_index" => 12, "timestamp" => 1760430600, "title" => "옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스", "upload_date" => "20251014"} 08:49:24.777 [debug] QUERY OK source="sources" db=0.1ms idle=783.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] 08:49:24.778 [debug] QUERY OK source="sources" db=0.1ms idle=783.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] 08:49:24.778 [debug] QUERY OK source="media_items" db=0.5ms idle=784.1ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-14 08:30:00Z], 4] 08:49:24.779 [debug] QUERY OK source="media_items" db=0.6ms idle=784.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["옵시디언으로 지식관리의 한계를 넘은 남자, 구요한 대표님\nAI 시대, 상위 1%가 선택한 세컨드 브레인 전략을 공개합니다.\n\n지식이 곧 자산인 시대, \n기록이 어떻게 경쟁력이 되는지 영상에서 확인하세요.\n\n📅 PKM 컨퍼런스 2025 \n여러분 드디어 PKM 컨퍼런스 신청페이지를 열었습니다! \n개인과 조직이 지식을 어떻게 관리하고 AI를 활용하는지 \n궁금하신 분들 함께해주세요. \n옵시디언, 노션, 크래프트, n8n, 에이전트, 데본씽크, 로지텍 마우스까지!\n지식관리에 진심인 분들이 각자의 이야기를 나누는 자리입니다.\n\n🗓 일정: 10/23(목) 14:00 ~ 10/24(금) 12:00 \n📍 장소: 롯데호텔앤리조트 김해 (오프라인·온라인 동시 진행) \n💰 참가비: 오프라인 3만원(숙박·식사 제공) / 온라인 1만원 \n👉 신청하기: https://cmdspace.short.gy/pkm-conference-2025\n\n🏫 커맨드스페이스 교육 플랫폼 \nhttps://class.cmdspace.kr \n\n📚 커맨드스페이스 교육 자료 \nhttps://slashpage.com/cmds-class \n\n◾️ 커맨드스페이스 유튜브 메인 채널 \nhttps://www.youtube.com/@cmdspace \n\n#옵시디언 #지식관리 #세컨드브레인 #AI #생산성 #구요한 #커맨드스페이스 #옵시디언활용법#ai툴 #CMDSPACE\n\n더 많은 인사이트와 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스", "f87f000b-c1da-473a-b53a-be5059f12097", false, 2232, false, "-bO_J3fD4Jc", "https://www.youtube.com/watch?v=-bO_J3fD4Jc", 12, "/downloads/윤자동/2025-10-14 옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스/옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스 [-bO_J3fD4Jc].mkv", false, false, 4, [], 98, ~U[2025-10-14 08:30:00Z], ~U[2025-12-21 08:49:24Z], ~U[2025-12-21 08:49:24Z], "옵시디언으로 지식관리의 한계를 넘은 남자, 구요한 대표님\nAI 시대, 상위 1%가 선택한 세컨드 브레인 전략을 공개합니다.\n\n지식이 곧 자산인 시대, \n기록이 어떻게 경쟁력이 되는지 영상에서 확인하세요.\n\n📅 PKM 컨퍼런스 2025 \n여러분 드디어 PKM 컨퍼런스 신청페이지를 열었습니다! \n개인과 조직이 지식을 어떻게 관리하고 AI를 활용하는지 \n궁금하신 분들 함께해주세요. \n옵시디언, 노션, 크래프트, n8n, 에이전트, 데본씽크, 로지텍 마우스까지!\n지식관리에 진심인 분들이 각자의 이야기를 나누는 자리입니다.\n\n🗓 일정: 10/23(목) 14:00 ~ 10/24(금) 12:00 \n📍 장소: 롯데호텔앤리조트 김해 (오프라인·온라인 동시 진행) \n💰 참가비: 오프라인 3만원(숙박·식사 제공) / 온라인 1만원 \n👉 신청하기: https://cmdspace.short.gy/pkm-conference-2025\n\n🏫 커맨드스페이스 교육 플랫폼 \nhttps://class.cmdspace.kr \n\n📚 커맨드스페이스 교육 자료 \nhttps://slashpage.com/cmds-class \n\n◾️ 커맨드스페이스 유튜브 메인 채널 \nhttps://www.youtube.com/@cmdspace \n\n#옵시디언 #지식관리 #세컨드브레인 #AI #생산성 #구요한 #커맨드스페이스 #옵시디언활용법#ai툴 #CMDSPACE\n\n더 많은 인사이트와 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스", 2232, false, "-bO_J3fD4Jc", "https://www.youtube.com/watch?v=-bO_J3fD4Jc", "/downloads/윤자동/2025-10-14 옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스/옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스 [-bO_J3fD4Jc].mkv", false, 4, ~U[2025-10-14 08:30:00Z]] 08:49:24.780 [debug] QUERY OK source="sources" db=0.1ms idle=46.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" = ?) [4] 08:49:24.780 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:24.780 [debug] QUERY OK source="media_items" db=0.1ms 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 [6055] 08:49:24.780 [debug] Current batch of media processed. Will check again in 1000ms 08:49:25.781 [debug] Current batch of media processed. Will check again in 1000ms 08:49:26.782 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "👉 지금 바로 체험하기: https://workwith.headai.io/3ViGOzx\n\n🤔 이런 문제로 고민하고 계신가요?\n\n ChatGPT에서 질문 하나 끝나면 처음부터 다시 설명해야 하는 번거로움\n 노션에 정리한 노트들이 쌓이기만 하고 다시 찾아보기 어려움\n PDF, 유튜브, 웹사이트를 오가며 생각이 산산조각 나는 느낌\n 복잡한 정보를 체계적으로 정리하고 연결하기 어려움\n\n✅ Ponder가 해결해드립니다!\nPonder는 단순한 생산성 도구가 아닙니다.\n더 빠르게가 아니라, 더 깊이 있게 생각할 수 있도록 도와주는 AI 파트너입니다.\n\n🎯 핵심 기능들\n🌟 무한 캔버스: 생각이 자연스럽게 가지치고 연결되는 공간\n📚 통합 지식 공간: PDF, 영상, 웹페이지를 한 곳에서 관리\n🤖 Ponder Agent: 사고 과정 전반에 임베딩된 AI 파트너\n🔗 비선형 사고: 아이디어를 자유롭게 확장·연결·재방문\n📊 구조화된 출력: 마크다운, 마인드맵, 리포트로 내보내기\n👥 이런 분들께 특히 추천!\n\n🎓 학생·연구자: 방대한 자료를 체계적으로 정리\n💼 지식근로자: 복잡한 정보를 인사이트로 변환\n✍️ 콘텐츠 크리에이터: 아이디어를 명확한 구조로 발전\n📈 분석가·투자자: 흩어진 데이터에서 패턴 발견\n\n🔥 왜 Ponder를 선택해야 할까요?\n\n기존 도구들은 실행을 위해 만들어졌지만,\nPonder는 탐색과 사고를 위해 설계되었습니다.\n💡 선형적 사고의 한계를 뛰어넘어\n🧩 모든 정보를 하나의 맥락으로 연결\n🚀 시간이 지날수록 성장하는 개인 지식 라이브러리\n\n\n @Ponder_HQ\n\n#Ponder #PonderAI #ThinkingSpace #AIResearch #ProductivityTools #지식관리 #StudyWithPonder #AcademicSuccess #인공지능도구 #생산성향상\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "duration" => 442, "filename" => "/downloads/윤자동/2025-09-30 Ponder AI | 학습을 위한 AI 에이전트/Ponder AI | 학습을 위한 AI 에이전트 [wVlOHGMDEys].mp4", "id" => "wVlOHGMDEys", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=wVlOHGMDEys", "playlist_index" => 13, "timestamp" => 1759221037, "title" => "Ponder AI | 학습을 위한 AI 에이전트", "upload_date" => "20250930"} 08:49:26.782 [debug] QUERY OK source="sources" db=0.2ms idle=788.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] 08:49:26.783 [debug] QUERY OK source="sources" db=0.1ms idle=788.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] 08:49:26.783 [debug] QUERY OK source="media_items" db=0.7ms idle=789.1ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-30 08:30:37Z], 4] 08:49:26.784 [debug] QUERY OK source="media_items" db=0.7ms idle=790.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["👉 지금 바로 체험하기: https://workwith.headai.io/3ViGOzx\n\n🤔 이런 문제로 고민하고 계신가요?\n\n ChatGPT에서 질문 하나 끝나면 처음부터 다시 설명해야 하는 번거로움\n 노션에 정리한 노트들이 쌓이기만 하고 다시 찾아보기 어려움\n PDF, 유튜브, 웹사이트를 오가며 생각이 산산조각 나는 느낌\n 복잡한 정보를 체계적으로 정리하고 연결하기 어려움\n\n✅ Ponder가 해결해드립니다!\nPonder는 단순한 생산성 도구가 아닙니다.\n더 빠르게가 아니라, 더 깊이 있게 생각할 수 있도록 도와주는 AI 파트너입니다.\n\n🎯 핵심 기능들\n🌟 무한 캔버스: 생각이 자연스럽게 가지치고 연결되는 공간\n📚 통합 지식 공간: PDF, 영상, 웹페이지를 한 곳에서 관리\n🤖 Ponder Agent: 사고 과정 전반에 임베딩된 AI 파트너\n🔗 비선형 사고: 아이디어를 자유롭게 확장·연결·재방문\n📊 구조화된 출력: 마크다운, 마인드맵, 리포트로 내보내기\n👥 이런 분들께 특히 추천!\n\n🎓 학생·연구자: 방대한 자료를 체계적으로 정리\n💼 지식근로자: 복잡한 정보를 인사이트로 변환\n✍️ 콘텐츠 크리에이터: 아이디어를 명확한 구조로 발전\n📈 분석가·투자자: 흩어진 데이터에서 패턴 발견\n\n🔥 왜 Ponder를 선택해야 할까요?\n\n기존 도구들은 실행을 위해 만들어졌지만,\nPonder는 탐색과 사고를 위해 설계되었습니다.\n💡 선형적 사고의 한계를 뛰어넘어\n🧩 모든 정보를 하나의 맥락으로 연결\n🚀 시간이 지날수록 성장하는 개인 지식 라이브러리\n\n\n @Ponder_HQ\n\n#Ponder #PonderAI #ThinkingSpace #AIResearch #ProductivityTools #지식관리 #StudyWithPonder #AcademicSuccess #인공지능도구 #생산성향상\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "Ponder AI | 학습을 위한 AI 에이전트", "47fe3f10-d35d-451d-a612-0e280085ba9c", false, 442, false, "wVlOHGMDEys", "https://www.youtube.com/watch?v=wVlOHGMDEys", 13, "/downloads/윤자동/2025-09-30 Ponder AI | 학습을 위한 AI 에이전트/Ponder AI | 학습을 위한 AI 에이전트 [wVlOHGMDEys].mp4", false, false, 4, [], 98, ~U[2025-09-30 08:30:37Z], ~U[2025-12-21 08:49:26Z], ~U[2025-12-21 08:49:26Z], "👉 지금 바로 체험하기: https://workwith.headai.io/3ViGOzx\n\n🤔 이런 문제로 고민하고 계신가요?\n\n ChatGPT에서 질문 하나 끝나면 처음부터 다시 설명해야 하는 번거로움\n 노션에 정리한 노트들이 쌓이기만 하고 다시 찾아보기 어려움\n PDF, 유튜브, 웹사이트를 오가며 생각이 산산조각 나는 느낌\n 복잡한 정보를 체계적으로 정리하고 연결하기 어려움\n\n✅ Ponder가 해결해드립니다!\nPonder는 단순한 생산성 도구가 아닙니다.\n더 빠르게가 아니라, 더 깊이 있게 생각할 수 있도록 도와주는 AI 파트너입니다.\n\n🎯 핵심 기능들\n🌟 무한 캔버스: 생각이 자연스럽게 가지치고 연결되는 공간\n📚 통합 지식 공간: PDF, 영상, 웹페이지를 한 곳에서 관리\n🤖 Ponder Agent: 사고 과정 전반에 임베딩된 AI 파트너\n🔗 비선형 사고: 아이디어를 자유롭게 확장·연결·재방문\n📊 구조화된 출력: 마크다운, 마인드맵, 리포트로 내보내기\n👥 이런 분들께 특히 추천!\n\n🎓 학생·연구자: 방대한 자료를 체계적으로 정리\n💼 지식근로자: 복잡한 정보를 인사이트로 변환\n✍️ 콘텐츠 크리에이터: 아이디어를 명확한 구조로 발전\n📈 분석가·투자자: 흩어진 데이터에서 패턴 발견\n\n🔥 왜 Ponder를 선택해야 할까요?\n\n기존 도구들은 실행을 위해 만들어졌지만,\nPonder는 탐색과 사고를 위해 설계되었습니다.\n💡 선형적 사고의 한계를 뛰어넘어\n🧩 모든 정보를 하나의 맥락으로 연결\n🚀 시간이 지날수록 성장하는 개인 지식 라이브러리\n\n\n @Ponder_HQ\n\n#Ponder #PonderAI #ThinkingSpace #AIResearch #ProductivityTools #지식관리 #StudyWithPonder #AcademicSuccess #인공지능도구 #생산성향상\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "Ponder AI | 학습을 위한 AI 에이전트", 442, false, "wVlOHGMDEys", "https://www.youtube.com/watch?v=wVlOHGMDEys", "/downloads/윤자동/2025-09-30 Ponder AI | 학습을 위한 AI 에이전트/Ponder AI | 학습을 위한 AI 에이전트 [wVlOHGMDEys].mp4", false, 4, ~U[2025-09-30 08:30:37Z]] 08:49:26.785 [debug] QUERY OK source="sources" db=0.0ms idle=49.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" = ?) [4] 08:49:26.785 [debug] QUERY OK source="media_profiles" db=0.0ms idle=2.5ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:26.785 [debug] QUERY OK source="media_items" db=0.1ms 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 [5304] 08:49:26.785 [debug] Current batch of media processed. Will check again in 1000ms 08:49:27.786 [debug] Current batch of media processed. Will check again in 1000ms 08:49:28.787 [debug] Current batch of media processed. Will check again in 1000ms 08:49:29.564 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:49:29.788 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n드디어 Replit이 새로운 AI 에이전트, Agent 3 🚀를 공개했습니다!\n이제 단순한 코드 생성기를 넘어, 진짜 개발 파트너처럼 함께 일할 수 있습니다.\n\n이번 영상에서는\n✔ Agent 3의 핵심 업그레이드 3가지\n✔ 딸깍 한 번으로 웹사이트 만드는 과정\n✔ 기존 개발 방식과 비교되는 차이점\n을 모두 보여드립니다.\n\n⚡ Agent 3 주요 특징\n\n최대 200분 동안 완전 자율 실행 → 중간에 멈추지 않고 끝까지 작업\n\n실시간 브라우저 테스트 & 자동 수정 → 더 빠르고, 더 저렴하게 개발\n\nSlack, Telegram 연동 → 맞춤형 봇·자동화 제작 가능\n\nAI와 협업하는 새로운 개발 패러다임,\nReplit Agent 3와 함께 직접 경험해 보세요! 🚀\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\n\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다 :)\n\n#Replit #Agent3 #AI코딩 #레플릿 #웹사이트자동화 #바이브코딩 #노코드개발 #AI자동화 #업무자동화 #Replit튜토리얼 #Replit강의", "duration" => 1152, "filename" => "/downloads/윤자동/2025-09-22 Replit Agent 3 출시! 초보자도 가능한 "진짜" 딸깍 바이브코딩/Replit Agent 3 출시! 초보자도 가능한 "진짜" 딸깍 바이브코딩 [C7JcOx2ACJ0].mp4", "id" => "C7JcOx2ACJ0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=C7JcOx2ACJ0", "playlist_index" => 14, "timestamp" => 1758531625, "title" => "Replit Agent 3 출시! 초보자도 가능한 \"진짜\" 딸깍 바이브코딩", "upload_date" => "20250922"} 08:49:29.788 [debug] QUERY OK source="sources" db=0.1ms idle=1794.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 (?)) [4] 08:49:29.789 [debug] QUERY OK source="sources" db=0.1ms idle=1794.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] 08:49:29.789 [debug] QUERY OK source="media_items" db=0.6ms idle=1051.7ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-22 09:00:25Z], 4] 08:49:29.790 [debug] QUERY OK source="media_items" db=0.6ms idle=225.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n드디어 Replit이 새로운 AI 에이전트, Agent 3 🚀를 공개했습니다!\n이제 단순한 코드 생성기를 넘어, 진짜 개발 파트너처럼 함께 일할 수 있습니다.\n\n이번 영상에서는\n✔ Agent 3의 핵심 업그레이드 3가지\n✔ 딸깍 한 번으로 웹사이트 만드는 과정\n✔ 기존 개발 방식과 비교되는 차이점\n을 모두 보여드립니다.\n\n⚡ Agent 3 주요 특징\n\n최대 200분 동안 완전 자율 실행 → 중간에 멈추지 않고 끝까지 작업\n\n실시간 브라우저 테스트 & 자동 수정 → 더 빠르고, 더 저렴하게 개발\n\nSlack, Telegram 연동 → 맞춤형 봇·자동화 제작 가능\n\nAI와 협업하는 새로운 개발 패러다임,\nReplit Agent 3와 함께 직접 경험해 보세요! 🚀\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\n\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다 :)\n\n#Replit #Agent3 #AI코딩 #레플릿 #웹사이트자동화 #바이브코딩 #노코드개발 #AI자동화 #업무자동화 #Replit튜토리얼 #Replit강의", "Replit Agent 3 출시! 초보자도 가능한 \"진짜\" 딸깍 바이브코딩", "54544deb-417e-4226-ba75-2363159dcd60", false, 1152, false, "C7JcOx2ACJ0", "https://www.youtube.com/watch?v=C7JcOx2ACJ0", 14, "/downloads/윤자동/2025-09-22 Replit Agent 3 출시! 초보자도 가능한 "진짜" 딸깍 바이브코딩/Replit Agent 3 출시! 초보자도 가능한 "진짜" 딸깍 바이브코딩 [C7JcOx2ACJ0].mp4", false, false, 4, [], 98, ~U[2025-09-22 09:00:25Z], ~U[2025-12-21 08:49:29Z], ~U[2025-12-21 08:49:29Z], "💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n드디어 Replit이 새로운 AI 에이전트, Agent 3 🚀를 공개했습니다!\n이제 단순한 코드 생성기를 넘어, 진짜 개발 파트너처럼 함께 일할 수 있습니다.\n\n이번 영상에서는\n✔ Agent 3의 핵심 업그레이드 3가지\n✔ 딸깍 한 번으로 웹사이트 만드는 과정\n✔ 기존 개발 방식과 비교되는 차이점\n을 모두 보여드립니다.\n\n⚡ Agent 3 주요 특징\n\n최대 200분 동안 완전 자율 실행 → 중간에 멈추지 않고 끝까지 작업\n\n실시간 브라우저 테스트 & 자동 수정 → 더 빠르고, 더 저렴하게 개발\n\nSlack, Telegram 연동 → 맞춤형 봇·자동화 제작 가능\n\nAI와 협업하는 새로운 개발 패러다임,\nReplit Agent 3와 함께 직접 경험해 보세요! 🚀\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\n\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다 :)\n\n#Replit #Agent3 #AI코딩 #레플릿 #웹사이트자동화 #바이브코딩 #노코드개발 #AI자동화 #업무자동화 #Replit튜토리얼 #Replit강의", "Replit Agent 3 출시! 초보자도 가능한 \"진짜\" 딸깍 바이브코딩", 1152, false, "C7JcOx2ACJ0", "https://www.youtube.com/watch?v=C7JcOx2ACJ0", "/downloads/윤자동/2025-09-22 Replit Agent 3 출시! 초보자도 가능한 "진짜" 딸깍 바이브코딩/Replit Agent 3 출시! 초보자도 가능한 "진짜" 딸깍 바이브코딩 [C7JcOx2ACJ0].mp4", false, 4, ~U[2025-09-22 09:00:25Z]] 08:49:29.791 [debug] QUERY OK source="sources" db=0.1ms idle=52.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] 08:49:29.791 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:49:29.791 [debug] QUERY OK source="media_items" db=0.1ms 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 [4943] 08:49:29.791 [debug] Current batch of media processed. Will check again in 1000ms 08:49:30.792 [debug] Current batch of media processed. Will check again in 1000ms 08:49:31.793 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "메이크(Make)를 활용해 명함 자동화 시스템을 직접 만들어봤습니다!\n사진으로 명함을 찍으면 AI가 자동으로 정보를 추출하고, 노션이나 구글 연락처에 저장하며, 상대방에게 제 명함을 문자로 자동 발송하는 과정까지 모두 구현했습니다. \n\n이번 영상에서 다루는 주요 내용:\n- 메이크(Make)로 명함 자동화 시나리오 설계하기\n- 오픈AI를 활용한 명함 이미지 분석 및 정보 추출\n- 노션(Notion)과 구글 연락처에 자동 저장하기\n- 솔라피(SOLAPI)를 이용한 문자 자동 발송\n- 리멤버(Remember) 없이도 가능한 AI 명함 관리 시스템\n\n이 방법을 활용하면 비즈니스 미팅에서 명함 교환 후, \n별도 입력 없이 자동으로 연락처가 정리되고 \n상대방에게는 제 명함이 바로 전달되어 아이스브레이킹 효과까지 누릴 수 있습니다. \n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#메이크 #명함자동화 #make #AI자동화 #업무자동화 #노션자동화 \n#명함관리 #오픈AI #문자자동발송 #리멤버 #노코드", "duration" => 3603, "filename" => "/downloads/윤자동/2025-09-18 메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화/메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화 [sNMzNZUeAqU].mp4", "id" => "sNMzNZUeAqU", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=sNMzNZUeAqU", "playlist_index" => 15, "timestamp" => 1758186087, "title" => "메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화", "upload_date" => "20250918"} 08:49:31.793 [debug] QUERY OK source="sources" db=0.1ms idle=799.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 (?)) [4] 08:49:31.794 [debug] QUERY OK source="sources" db=0.0ms idle=799.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" = ?) [4] 08:49:31.794 [debug] QUERY OK source="media_items" db=0.5ms idle=799.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-18 09:01:27Z], 4] 08:49:31.795 [debug] QUERY OK source="media_items" db=0.7ms idle=800.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["메이크(Make)를 활용해 명함 자동화 시스템을 직접 만들어봤습니다!\n사진으로 명함을 찍으면 AI가 자동으로 정보를 추출하고, 노션이나 구글 연락처에 저장하며, 상대방에게 제 명함을 문자로 자동 발송하는 과정까지 모두 구현했습니다. \n\n이번 영상에서 다루는 주요 내용:\n- 메이크(Make)로 명함 자동화 시나리오 설계하기\n- 오픈AI를 활용한 명함 이미지 분석 및 정보 추출\n- 노션(Notion)과 구글 연락처에 자동 저장하기\n- 솔라피(SOLAPI)를 이용한 문자 자동 발송\n- 리멤버(Remember) 없이도 가능한 AI 명함 관리 시스템\n\n이 방법을 활용하면 비즈니스 미팅에서 명함 교환 후, \n별도 입력 없이 자동으로 연락처가 정리되고 \n상대방에게는 제 명함이 바로 전달되어 아이스브레이킹 효과까지 누릴 수 있습니다. \n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#메이크 #명함자동화 #make #AI자동화 #업무자동화 #노션자동화 \n#명함관리 #오픈AI #문자자동발송 #리멤버 #노코드", "메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화", "1e020494-da2b-4914-954f-8e1bb298f918", false, 3603, false, "sNMzNZUeAqU", "https://www.youtube.com/watch?v=sNMzNZUeAqU", 15, "/downloads/윤자동/2025-09-18 메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화/메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화 [sNMzNZUeAqU].mp4", false, false, 4, [], 98, ~U[2025-09-18 09:01:27Z], ~U[2025-12-21 08:49:31Z], ~U[2025-12-21 08:49:31Z], "메이크(Make)를 활용해 명함 자동화 시스템을 직접 만들어봤습니다!\n사진으로 명함을 찍으면 AI가 자동으로 정보를 추출하고, 노션이나 구글 연락처에 저장하며, 상대방에게 제 명함을 문자로 자동 발송하는 과정까지 모두 구현했습니다. \n\n이번 영상에서 다루는 주요 내용:\n- 메이크(Make)로 명함 자동화 시나리오 설계하기\n- 오픈AI를 활용한 명함 이미지 분석 및 정보 추출\n- 노션(Notion)과 구글 연락처에 자동 저장하기\n- 솔라피(SOLAPI)를 이용한 문자 자동 발송\n- 리멤버(Remember) 없이도 가능한 AI 명함 관리 시스템\n\n이 방법을 활용하면 비즈니스 미팅에서 명함 교환 후, \n별도 입력 없이 자동으로 연락처가 정리되고 \n상대방에게는 제 명함이 바로 전달되어 아이스브레이킹 효과까지 누릴 수 있습니다. \n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#메이크 #명함자동화 #make #AI자동화 #업무자동화 #노션자동화 \n#명함관리 #오픈AI #문자자동발송 #리멤버 #노코드", "메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화", 3603, false, "sNMzNZUeAqU", "https://www.youtube.com/watch?v=sNMzNZUeAqU", "/downloads/윤자동/2025-09-18 메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화/메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화 [sNMzNZUeAqU].mp4", false, 4, ~U[2025-09-18 09:01:27Z]] 08:49:31.795 [debug] QUERY OK source="sources" db=0.0ms idle=55.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] 08:49:31.796 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:31.796 [debug] QUERY OK source="media_items" db=0.1ms 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 [4781] 08:49:31.796 [debug] Current batch of media processed. Will check again in 1000ms 08:49:32.797 [debug] Current batch of media processed. Will check again in 1000ms 08:49:33.798 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n---\n\n우리 채널에서 [조회수 34만 회]를 기록한 재고관리 프로그램 영상, 기억하시나요? \n그때는 엑셀로 1시간이나 걸려서 만들었던 프로그램을 \n이제는 [Replit]을 활용해 단 10분 만에 완성할 수 있습니다! 🚀 \n\n이번 영상에서는 \n✔ Replit으로 재고관리 프로그램을 만드는 방법 \n✔ 클릭 몇 번으로 DB·로그인·배포까지 끝내는 방법 \n✔ 엑셀 방식보다 훨씬 빠르고 효율적인 자동화 팁 \n까지 모두 공개합니다.\n\n시간을 아끼고 싶다면 이번 영상 꼭 시청하세요! ⏱️\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Replit #ReplitAI #레플릿 #재고관리 #재고관리프로그램 #AI자동화 #자동화프로그램 #엑셀재고관리 #재고관리자동화 #바이브코딩 #노코드개발 #재고관리시스템 #Replit강의 #Replit튜토리얼 #AI활용 #업무자동화", "duration" => 730, "filename" => "/downloads/윤자동/2025-09-10 Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트/Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트 [w1IKOhfT4as].mp4", "id" => "w1IKOhfT4as", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=w1IKOhfT4as", "playlist_index" => 16, "timestamp" => 1757493034, "title" => "Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트", "upload_date" => "20250910"} 08:49:33.798 [debug] QUERY OK source="sources" db=0.1ms idle=804.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 (?)) [4] 08:49:33.799 [debug] QUERY OK source="sources" db=0.0ms idle=804.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] 08:49:33.799 [debug] QUERY OK source="media_items" db=0.5ms idle=805.0ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-10 08:30:34Z], 4] 08:49:33.801 [debug] QUERY OK source="media_items" db=1.7ms idle=805.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n---\n\n우리 채널에서 [조회수 34만 회]를 기록한 재고관리 프로그램 영상, 기억하시나요? \n그때는 엑셀로 1시간이나 걸려서 만들었던 프로그램을 \n이제는 [Replit]을 활용해 단 10분 만에 완성할 수 있습니다! 🚀 \n\n이번 영상에서는 \n✔ Replit으로 재고관리 프로그램을 만드는 방법 \n✔ 클릭 몇 번으로 DB·로그인·배포까지 끝내는 방법 \n✔ 엑셀 방식보다 훨씬 빠르고 효율적인 자동화 팁 \n까지 모두 공개합니다.\n\n시간을 아끼고 싶다면 이번 영상 꼭 시청하세요! ⏱️\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Replit #ReplitAI #레플릿 #재고관리 #재고관리프로그램 #AI자동화 #자동화프로그램 #엑셀재고관리 #재고관리자동화 #바이브코딩 #노코드개발 #재고관리시스템 #Replit강의 #Replit튜토리얼 #AI활용 #업무자동화", "Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트", "e789c983-f7f7-4cdf-9416-0924ebdd4883", false, 730, false, "w1IKOhfT4as", "https://www.youtube.com/watch?v=w1IKOhfT4as", 16, "/downloads/윤자동/2025-09-10 Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트/Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트 [w1IKOhfT4as].mp4", false, false, 4, [], 98, ~U[2025-09-10 08:30:34Z], ~U[2025-12-21 08:49:33Z], ~U[2025-12-21 08:49:33Z], "💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n---\n\n우리 채널에서 [조회수 34만 회]를 기록한 재고관리 프로그램 영상, 기억하시나요? \n그때는 엑셀로 1시간이나 걸려서 만들었던 프로그램을 \n이제는 [Replit]을 활용해 단 10분 만에 완성할 수 있습니다! 🚀 \n\n이번 영상에서는 \n✔ Replit으로 재고관리 프로그램을 만드는 방법 \n✔ 클릭 몇 번으로 DB·로그인·배포까지 끝내는 방법 \n✔ 엑셀 방식보다 훨씬 빠르고 효율적인 자동화 팁 \n까지 모두 공개합니다.\n\n시간을 아끼고 싶다면 이번 영상 꼭 시청하세요! ⏱️\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Replit #ReplitAI #레플릿 #재고관리 #재고관리프로그램 #AI자동화 #자동화프로그램 #엑셀재고관리 #재고관리자동화 #바이브코딩 #노코드개발 #재고관리시스템 #Replit강의 #Replit튜토리얼 #AI활용 #업무자동화", "Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트", 730, false, "w1IKOhfT4as", "https://www.youtube.com/watch?v=w1IKOhfT4as", "/downloads/윤자동/2025-09-10 Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트/Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트 [w1IKOhfT4as].mp4", false, 4, ~U[2025-09-10 08:30:34Z]] 08:49:33.802 [debug] QUERY OK source="sources" db=0.1ms idle=59.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] 08:49:33.802 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:49:33.802 [debug] QUERY OK source="media_items" db=0.1ms idle=3.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 [4450] 08:49:33.802 [debug] Current batch of media processed. Will check again in 1000ms 08:49:34.803 [debug] Current batch of media processed. Will check again in 1000ms 08:49:35.804 [debug] Current batch of media processed. Will check again in 1000ms 08:49:36.805 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "직원 스케줄 관리, 교대 근무, 팀장 배정…\n머리 아프고 시간 많이 빼앗기셨죠? 😮\u200D💨\n\n이번 영상에서는 레플릿(Replit)으로 직접 개발한\nAI 인력관리 자동화 프로그램을 활용해\n청소업체 퍼스트클린이 월 100시간을 절약한 비결을 공개합니다! 🧹✨\n\n🎁 플라우드 노트핀 댓글 이벤트\n\nAI 기반 회의록 자동 생성 & 요약 도구 플라우드 노트핀을\n1분께 무료 증정해 드립니다! 🚀\n\n• 응모 기간 : 지금부터 2025-09-15(월) 00:00까지\n• 당첨 발표 : 2025-09-16(화), 윤자동 채널 커뮤니티 탭\n• 경품 : 플라우드 노트핀 1개 (약 30만원 상당)\n\n참여 방법\n1. 본 영상 구독 + 좋아요\n2. 댓글 작성\n3. 당첨자는 발표 후 커뮤니티 탭에 올라온 링크로\n본인의 유튜브 계정임을 인증하는 캡처를 제출하면\n플라우드 노트핀 1개를 보내드립니다.\n4. 당첨 발표 후 48시간 내에 인증하지 않으면,\n예비 당첨자에게 기회가 넘어갑니다.\n\n플라우드 노트핀 구매 링크\nhttps://mkt.shopping.naver.com/link/6865d2d01fd1ac4107989801?nt_source=Youtube&nt_medium=NP&nt_detail=394&nt_keyword=\n\n💡 자동화 외주 서비스 안내\n\n윤자동은 강의만 하지 않습니다.\n레플릿(Replit)·Make·Cursor등을 활용해\n 맞춤형 AI 자동화 프로그램을 직접 개발해드립니다.\n\n외주 문의하기 👉 https://yunjadong.com\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#레플릿 #AI자동화 #인력관리자동화 #업무자동화 #플라우드노트핀 # #Replit #개발외주", "duration" => 367, "filename" => "/downloads/윤자동/2025-09-09 레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿/레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿 [a5YCWDv-9fI].mkv", "id" => "a5YCWDv-9fI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=a5YCWDv-9fI", "playlist_index" => 17, "timestamp" => 1757405682, "title" => "레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿", "upload_date" => "20250909"} 08:49:36.805 [debug] QUERY OK source="sources" db=0.2ms idle=1811.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 (?)) [4] 08:49:36.806 [debug] QUERY OK source="sources" db=0.1ms idle=1811.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] 08:49:36.806 [debug] QUERY OK source="media_items" db=0.5ms idle=1812.1ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-09 08:14:42Z], 4] 08:49:36.807 [debug] QUERY OK source="media_items" db=0.7ms idle=1062.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["직원 스케줄 관리, 교대 근무, 팀장 배정…\n머리 아프고 시간 많이 빼앗기셨죠? 😮\u200D💨\n\n이번 영상에서는 레플릿(Replit)으로 직접 개발한\nAI 인력관리 자동화 프로그램을 활용해\n청소업체 퍼스트클린이 월 100시간을 절약한 비결을 공개합니다! 🧹✨\n\n🎁 플라우드 노트핀 댓글 이벤트\n\nAI 기반 회의록 자동 생성 & 요약 도구 플라우드 노트핀을\n1분께 무료 증정해 드립니다! 🚀\n\n• 응모 기간 : 지금부터 2025-09-15(월) 00:00까지\n• 당첨 발표 : 2025-09-16(화), 윤자동 채널 커뮤니티 탭\n• 경품 : 플라우드 노트핀 1개 (약 30만원 상당)\n\n참여 방법\n1. 본 영상 구독 + 좋아요\n2. 댓글 작성\n3. 당첨자는 발표 후 커뮤니티 탭에 올라온 링크로\n본인의 유튜브 계정임을 인증하는 캡처를 제출하면\n플라우드 노트핀 1개를 보내드립니다.\n4. 당첨 발표 후 48시간 내에 인증하지 않으면,\n예비 당첨자에게 기회가 넘어갑니다.\n\n플라우드 노트핀 구매 링크\nhttps://mkt.shopping.naver.com/link/6865d2d01fd1ac4107989801?nt_source=Youtube&nt_medium=NP&nt_detail=394&nt_keyword=\n\n💡 자동화 외주 서비스 안내\n\n윤자동은 강의만 하지 않습니다.\n레플릿(Replit)·Make·Cursor등을 활용해\n 맞춤형 AI 자동화 프로그램을 직접 개발해드립니다.\n\n외주 문의하기 👉 https://yunjadong.com\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#레플릿 #AI자동화 #인력관리자동화 #업무자동화 #플라우드노트핀 # #Replit #개발외주", "레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿", "a36c907e-1ecd-4d5b-9e72-f59a87a7300d", false, 367, false, "a5YCWDv-9fI", "https://www.youtube.com/watch?v=a5YCWDv-9fI", 17, "/downloads/윤자동/2025-09-09 레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿/레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿 [a5YCWDv-9fI].mkv", false, false, 4, [], 98, ~U[2025-09-09 08:14:42Z], ~U[2025-12-21 08:49:36Z], ~U[2025-12-21 08:49:36Z], "직원 스케줄 관리, 교대 근무, 팀장 배정…\n머리 아프고 시간 많이 빼앗기셨죠? 😮\u200D💨\n\n이번 영상에서는 레플릿(Replit)으로 직접 개발한\nAI 인력관리 자동화 프로그램을 활용해\n청소업체 퍼스트클린이 월 100시간을 절약한 비결을 공개합니다! 🧹✨\n\n🎁 플라우드 노트핀 댓글 이벤트\n\nAI 기반 회의록 자동 생성 & 요약 도구 플라우드 노트핀을\n1분께 무료 증정해 드립니다! 🚀\n\n• 응모 기간 : 지금부터 2025-09-15(월) 00:00까지\n• 당첨 발표 : 2025-09-16(화), 윤자동 채널 커뮤니티 탭\n• 경품 : 플라우드 노트핀 1개 (약 30만원 상당)\n\n참여 방법\n1. 본 영상 구독 + 좋아요\n2. 댓글 작성\n3. 당첨자는 발표 후 커뮤니티 탭에 올라온 링크로\n본인의 유튜브 계정임을 인증하는 캡처를 제출하면\n플라우드 노트핀 1개를 보내드립니다.\n4. 당첨 발표 후 48시간 내에 인증하지 않으면,\n예비 당첨자에게 기회가 넘어갑니다.\n\n플라우드 노트핀 구매 링크\nhttps://mkt.shopping.naver.com/link/6865d2d01fd1ac4107989801?nt_source=Youtube&nt_medium=NP&nt_detail=394&nt_keyword=\n\n💡 자동화 외주 서비스 안내\n\n윤자동은 강의만 하지 않습니다.\n레플릿(Replit)·Make·Cursor등을 활용해\n 맞춤형 AI 자동화 프로그램을 직접 개발해드립니다.\n\n외주 문의하기 👉 https://yunjadong.com\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#레플릿 #AI자동화 #인력관리자동화 #업무자동화 #플라우드노트핀 # #Replit #개발외주", "레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿", 367, false, "a5YCWDv-9fI", "https://www.youtube.com/watch?v=a5YCWDv-9fI", "/downloads/윤자동/2025-09-09 레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿/레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿 [a5YCWDv-9fI].mkv", false, 4, ~U[2025-09-09 08:14:42Z]] 08:49:36.808 [debug] QUERY OK source="sources" db=0.1ms idle=62.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" = ?) [4] 08:49:36.808 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:36.808 [debug] QUERY OK source="media_items" db=0.1ms 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 [4414] 08:49:36.808 [debug] Current batch of media processed. Will check again in 1000ms 08:49:37.809 [debug] Current batch of media processed. Will check again in 1000ms 08:49:38.810 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "AI 활용 실전가 AIXLIFE 나민수 대표와의 인터뷰!\n화장실 청소부터 AI 강사까지, 인생을 바꾼 이야기.\n실전 노하우와 철학까지 전부 공개합니다.\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n🔎 나를 찾아줘 \n(AI와 대화하며 나를 발견하는 시간)\n👉 https://chatgpt.com/g/g-685220c4ba7881919214d48ac5e8afdd-na-reul-cajajweo-v-3\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#AI #AI활용 #AIXLIFE #AI자동화 #AI수익화 #업무자동화 #업무효율화 #생산성향상 #인생역전 #ChatGPT #Claud #perplexity", "duration" => 2636, "filename" => "/downloads/윤자동/2025-09-06 AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE/AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE [lJnBdsIgmJM].mkv", "id" => "lJnBdsIgmJM", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=lJnBdsIgmJM", "playlist_index" => 18, "timestamp" => 1757156560, "title" => "AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE", "upload_date" => "20250906"} 08:49:38.811 [debug] QUERY OK source="sources" db=0.3ms idle=816.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] 08:49:38.811 [debug] QUERY OK source="sources" db=0.0ms idle=817.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] 08:49:38.812 [debug] QUERY OK source="media_items" db=0.6ms idle=817.3ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-06 11:02:40Z], 4] 08:49:38.813 [debug] QUERY OK source="media_items" db=0.6ms idle=818.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["AI 활용 실전가 AIXLIFE 나민수 대표와의 인터뷰!\n화장실 청소부터 AI 강사까지, 인생을 바꾼 이야기.\n실전 노하우와 철학까지 전부 공개합니다.\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n🔎 나를 찾아줘 \n(AI와 대화하며 나를 발견하는 시간)\n👉 https://chatgpt.com/g/g-685220c4ba7881919214d48ac5e8afdd-na-reul-cajajweo-v-3\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#AI #AI활용 #AIXLIFE #AI자동화 #AI수익화 #업무자동화 #업무효율화 #생산성향상 #인생역전 #ChatGPT #Claud #perplexity", "AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE", "d603cb80-8dbc-4c21-8cd3-530edc221b2f", false, 2636, false, "lJnBdsIgmJM", "https://www.youtube.com/watch?v=lJnBdsIgmJM", 18, "/downloads/윤자동/2025-09-06 AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE/AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE [lJnBdsIgmJM].mkv", false, false, 4, [], 98, ~U[2025-09-06 11:02:40Z], ~U[2025-12-21 08:49:38Z], ~U[2025-12-21 08:49:38Z], "AI 활용 실전가 AIXLIFE 나민수 대표와의 인터뷰!\n화장실 청소부터 AI 강사까지, 인생을 바꾼 이야기.\n실전 노하우와 철학까지 전부 공개합니다.\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n🔎 나를 찾아줘 \n(AI와 대화하며 나를 발견하는 시간)\n👉 https://chatgpt.com/g/g-685220c4ba7881919214d48ac5e8afdd-na-reul-cajajweo-v-3\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#AI #AI활용 #AIXLIFE #AI자동화 #AI수익화 #업무자동화 #업무효율화 #생산성향상 #인생역전 #ChatGPT #Claud #perplexity", "AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE", 2636, false, "lJnBdsIgmJM", "https://www.youtube.com/watch?v=lJnBdsIgmJM", "/downloads/윤자동/2025-09-06 AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE/AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE [lJnBdsIgmJM].mkv", false, 4, ~U[2025-09-06 11:02:40Z]] 08:49:38.813 [debug] QUERY OK source="sources" db=0.0ms idle=65.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" = ?) [4] 08:49:38.813 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:38.813 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [4312] 08:49:38.813 [debug] Current batch of media processed. Will check again in 1000ms 08:49:39.813 [debug] Current batch of media processed. Will check again in 1000ms 08:49:40.548 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/@yunjadong --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/윤자동/%(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/9b/f4/9bf4f92db00466bedd119382d1d3f441f9fc56b277ba66df65f9e287e3b88c46.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/68/3e680197870fef1ad96e3864f9644c164b135fcc95f8e90aec53177fb92ec456.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 101 with: 08:49:40.549 [debug] Gracefully stopping file follower 08:49:40.550 [debug] QUERY OK source="sources" db=0.2ms idle=801.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 (?)) [4] 08:49:40.550 [debug] QUERY OK source="sources" db=0.0ms idle=556.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" = ?) [4] 08:49:40.551 [debug] QUERY OK source="media_items" db=0.5ms idle=556.6ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-16 08:16:40Z], 4] 08:49:40.552 [debug] QUERY OK source="media_items" db=0.5ms idle=557.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["📌 신영선 대표님이 직접 운영 중인 AI 서비스 & 커뮤니티\n\n1️⃣ 무료 자료가 넘치는 1.2만 명 AI 커뮤니티 카페\n👉 https://bit.ly/4oPtPSK\n\n2️⃣ 국내 최초 생성형 상세페이지 AI\n👉 https://bit.ly/47RsNQq\n\n3️⃣ 블로그 마케팅 외주비를 아껴주는 블로그 AI\n👉 https://bit.ly/3X6mNgv\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰]", "12522a7c-f45d-49cb-85ed-d4b764997884", false, 2029, false, "ZVGY6IaAb9U", "https://www.youtube.com/watch?v=ZVGY6IaAb9U", 1, "/downloads/윤자동/2025-12-16 이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰]/이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰] [ZVGY6IaAb9U].mp4", false, false, 4, [], 98, ~U[2025-12-16 08:16:40Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "📌 신영선 대표님이 직접 운영 중인 AI 서비스 & 커뮤니티\n\n1️⃣ 무료 자료가 넘치는 1.2만 명 AI 커뮤니티 카페\n👉 https://bit.ly/4oPtPSK\n\n2️⃣ 국내 최초 생성형 상세페이지 AI\n👉 https://bit.ly/47RsNQq\n\n3️⃣ 블로그 마케팅 외주비를 아껴주는 블로그 AI\n👉 https://bit.ly/3X6mNgv\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰]", 2029, false, "ZVGY6IaAb9U", "https://www.youtube.com/watch?v=ZVGY6IaAb9U", "/downloads/윤자동/2025-12-16 이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰]/이 사람은 어떻게 혼자서 사업을 4개나 굴릴 수 있었을까? [윤자동X 신영선님 인터뷰] [ZVGY6IaAb9U].mp4", false, 4, ~U[2025-12-16 08:16:40Z]] 08:49:40.552 [debug] QUERY OK source="sources" db=0.1ms idle=558.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] 08:49:40.552 [debug] QUERY OK source="media_items" db=0.5ms idle=2.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-11 09:01:09Z], 4] 08:49:40.553 [debug] QUERY OK source="media_items" db=0.5ms idle=2.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["마누스 사용해보러 가기~!\n👉https://manus.im/redeem?c=odvkmtu\n마누스 보안이 궁금하신분은: https://trust.manus.im\n\n🎁 댓글 남기고 30만원 상당의 선물 응모하세요.\n• 응모 기간 : 지금부터 2025-12-18(목) 23:59 까지\n• 당첨 발표 : 2025‑12‑19(금) 윤자동 채널 커뮤니티 탭\n• 경품 : 마누스 AI Pro 1개월 이용권 (약 30만원 상당) 2명\n\n✅ 참여 방법\n1. 이 영상에 댓글을 남겨주시면 자동 응모됩니다!\n2. 당첨 발표 후, 당첨자는 커뮤니티 탭에 올라온 링크로 본인의 유튜브 계정임을 인증하는 사진과 마누스 가입한 이메일을 보내주시면 해당 계정에 Pro 1개월 이용권을 지급해드립니다.\n(당첨 발표 후 48시간 이내에 이메일을 제출하지 않을 경우, 당첨은 자동 취소되며 예비 당첨자에게 기회가 넘어갑니다.)\n\n영상이 유익했다면 좋아요와 구독도 함께 부탁드려요 😊\n\n※ 본 영상은 마누스 AI (Manus AI)의 지원(유료 광고)으로 제작되었습니다.\n\n#마누스AI #ManusAI #Manus 1.5#업무자동화 #AI자동화 #자동화툴 #생산성향상\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "당신이 기다렸던 진짜 혼자 다하는 AI 등장", "902d5984-9480-421d-b579-d8aa8201437c", false, 941, false, "fipV6y2sz64", "https://www.youtube.com/watch?v=fipV6y2sz64", 2, "/downloads/윤자동/2025-12-11 당신이 기다렸던 진짜 혼자 다하는 AI 등장/당신이 기다렸던 진짜 혼자 다하는 AI 등장 [fipV6y2sz64].mp4", false, false, 4, [], 98, ~U[2025-12-11 09:01:09Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "마누스 사용해보러 가기~!\n👉https://manus.im/redeem?c=odvkmtu\n마누스 보안이 궁금하신분은: https://trust.manus.im\n\n🎁 댓글 남기고 30만원 상당의 선물 응모하세요.\n• 응모 기간 : 지금부터 2025-12-18(목) 23:59 까지\n• 당첨 발표 : 2025‑12‑19(금) 윤자동 채널 커뮤니티 탭\n• 경품 : 마누스 AI Pro 1개월 이용권 (약 30만원 상당) 2명\n\n✅ 참여 방법\n1. 이 영상에 댓글을 남겨주시면 자동 응모됩니다!\n2. 당첨 발표 후, 당첨자는 커뮤니티 탭에 올라온 링크로 본인의 유튜브 계정임을 인증하는 사진과 마누스 가입한 이메일을 보내주시면 해당 계정에 Pro 1개월 이용권을 지급해드립니다.\n(당첨 발표 후 48시간 이내에 이메일을 제출하지 않을 경우, 당첨은 자동 취소되며 예비 당첨자에게 기회가 넘어갑니다.)\n\n영상이 유익했다면 좋아요와 구독도 함께 부탁드려요 😊\n\n※ 본 영상은 마누스 AI (Manus AI)의 지원(유료 광고)으로 제작되었습니다.\n\n#마누스AI #ManusAI #Manus 1.5#업무자동화 #AI자동화 #자동화툴 #생산성향상\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "당신이 기다렸던 진짜 혼자 다하는 AI 등장", 941, false, "fipV6y2sz64", "https://www.youtube.com/watch?v=fipV6y2sz64", "/downloads/윤자동/2025-12-11 당신이 기다렸던 진짜 혼자 다하는 AI 등장/당신이 기다렸던 진짜 혼자 다하는 AI 등장 [fipV6y2sz64].mp4", false, 4, ~U[2025-12-11 09:01:09Z]] 08:49:40.553 [debug] QUERY OK source="sources" db=0.1ms idle=2.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.554 [debug] QUERY OK source="media_items" db=0.3ms idle=2.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-10 08:30:32Z], 4] 08:49:40.555 [debug] QUERY OK source="media_items" db=0.5ms idle=2.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["퇴사 이후의 길은 누구에게나 막막합니다. 하지만 누군가는 그 시간을 \n새로운 시작의 기회로 바꾸어냅니다.\n이번 영상에서는 커밍쏜님과 함께 퇴사 후 유튜브를 시작하는 이유, 그리고 1인 퍼스널브랜딩으로 자신의 이름을 하나의 브랜드로 만들어가는 과정에 대해 깊이 있게 이야기했습니다.\n\n@커밍쏜 \n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#업무자동화 #퍼스널브랜딩 #커밍쏜 #인사이트 #유튜브성장 #퇴사 #1인기업가", "퇴사 생각 있으시다면 이 영상부터 보세요", "0dba16e1-d373-4faf-b899-215e00ec6f60", false, 2092, false, "gOTReFKU72s", "https://www.youtube.com/watch?v=gOTReFKU72s", 3, "/downloads/윤자동/2025-12-10 퇴사 생각 있으시다면 이 영상부터 보세요/퇴사 생각 있으시다면 이 영상부터 보세요 [gOTReFKU72s].mkv", false, false, 4, [], 98, ~U[2025-12-10 08:30:32Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "퇴사 이후의 길은 누구에게나 막막합니다. 하지만 누군가는 그 시간을 \n새로운 시작의 기회로 바꾸어냅니다.\n이번 영상에서는 커밍쏜님과 함께 퇴사 후 유튜브를 시작하는 이유, 그리고 1인 퍼스널브랜딩으로 자신의 이름을 하나의 브랜드로 만들어가는 과정에 대해 깊이 있게 이야기했습니다.\n\n@커밍쏜 \n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#업무자동화 #퍼스널브랜딩 #커밍쏜 #인사이트 #유튜브성장 #퇴사 #1인기업가", "퇴사 생각 있으시다면 이 영상부터 보세요", 2092, false, "gOTReFKU72s", "https://www.youtube.com/watch?v=gOTReFKU72s", "/downloads/윤자동/2025-12-10 퇴사 생각 있으시다면 이 영상부터 보세요/퇴사 생각 있으시다면 이 영상부터 보세요 [gOTReFKU72s].mkv", false, 4, ~U[2025-12-10 08:30:32Z]] 08:49:40.555 [debug] QUERY OK source="sources" db=0.1ms idle=2.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.555 [debug] QUERY OK source="media_items" db=0.4ms idle=1.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-05 08:30:20Z], 4] 08:49:40.556 [debug] QUERY OK source="media_items" db=0.5ms idle=2.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["👉 [플라우드노트 프로 구매 링크]\n🔗https://mkt.shopping.naver.com/link/692407bb165146157ed2e485?nt_source=Youtube&nt_medium=PP&nt_detail=678&nt_keyword=\n\n🎁 댓글 이벤트 안내\n\n이번 영상 공개 기념으로 댓글을 남겨주신 분들 중 1분을 추첨해 \n‘플라우드노트 프로’ 1대를 선물로 드립니다!\n\n참여 방법:\n1) 영상 좋아요 👍 \n2) 구독 버튼 클릭 \n3) 아무 댓글이나 작성!\n\n기간: 업로드일 기준 7일간\n발표: 7일 후 유튜브 커뮤니티 탭 공지\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#플라우드노트 #플라우드노트프로 #회의록자동화 #노션자동화 #Zapier #업무자동화 #회의록", "플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동)", "07598d18-b22f-496e-bfae-8ba4a2f88798", false, 519, false, "KSI19aPorh0", "https://www.youtube.com/watch?v=KSI19aPorh0", 4, "/downloads/윤자동/2025-12-05 플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동)/플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동) [KSI19aPorh0].mp4", false, false, 4, [], 98, ~U[2025-12-05 08:30:20Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "👉 [플라우드노트 프로 구매 링크]\n🔗https://mkt.shopping.naver.com/link/692407bb165146157ed2e485?nt_source=Youtube&nt_medium=PP&nt_detail=678&nt_keyword=\n\n🎁 댓글 이벤트 안내\n\n이번 영상 공개 기념으로 댓글을 남겨주신 분들 중 1분을 추첨해 \n‘플라우드노트 프로’ 1대를 선물로 드립니다!\n\n참여 방법:\n1) 영상 좋아요 👍 \n2) 구독 버튼 클릭 \n3) 아무 댓글이나 작성!\n\n기간: 업로드일 기준 7일간\n발표: 7일 후 유튜브 커뮤니티 탭 공지\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#플라우드노트 #플라우드노트프로 #회의록자동화 #노션자동화 #Zapier #업무자동화 #회의록", "플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동)", 519, false, "KSI19aPorh0", "https://www.youtube.com/watch?v=KSI19aPorh0", "/downloads/윤자동/2025-12-05 플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동)/플라우드노트 프로 완벽정리|회의록 자동화 끝판왕 설정법(Zapier 자동화 + 노션연동) [KSI19aPorh0].mp4", false, 4, ~U[2025-12-05 08:30:20Z]] 08:49:40.556 [debug] QUERY OK source="sources" db=0.0ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.557 [debug] QUERY OK source="media_items" db=0.3ms idle=1.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-01 08:30:16Z], 4] 08:49:40.558 [debug] QUERY OK source="media_items" db=0.4ms idle=2.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["아래 링크에서 감마를 시작하세요!\nhttps://gamma.app/\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다", "4f5c8555-7c5d-4bd6-b8a3-d1b874c184e3", false, 542, false, "Fi2VatU5y2w", "https://www.youtube.com/watch?v=Fi2VatU5y2w", 5, "/downloads/윤자동/2025-12-01 아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다/아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다 [Fi2VatU5y2w].mp4", false, false, 4, [], 98, ~U[2025-12-01 08:30:16Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "아래 링크에서 감마를 시작하세요!\nhttps://gamma.app/\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다", 542, false, "Fi2VatU5y2w", "https://www.youtube.com/watch?v=Fi2VatU5y2w", "/downloads/윤자동/2025-12-01 아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다/아직도 PPT 만들 때 Ai 안쓰고 계시다면 진짜 손해입니다 [Fi2VatU5y2w].mp4", false, 4, ~U[2025-12-01 08:30:16Z]] 08:49:40.558 [debug] QUERY OK source="sources" db=0.1ms idle=2.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.558 [debug] QUERY OK source="media_items" db=0.4ms idle=1.7ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-28 09:54:21Z], 4] 08:49:40.559 [debug] QUERY OK source="media_items" db=0.5ms idle=2.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["📍 장소 협찬: 라임스퀘어파티룸 강남역점\n👉 https://blog.naver.com/lime_sq\n\n💻레플릿 오프라인 강의 신청 링크:\n🔗 https://www.yunjadong.com/programs/?idx=152\n\n💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Replit #AI자동화 #AI강의 #오프라인강의 #기업강의 #노코드 #바이브코딩 #업무자동화 #코딩 #레플릿", "Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup", "034e994a-6913-48f9-aadd-42d8dd4312f6", false, 693, false, "LrFiEdUiBwY", "https://www.youtube.com/watch?v=LrFiEdUiBwY", 6, "/downloads/윤자동/2025-11-28 Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup/Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup [LrFiEdUiBwY].mp4", false, false, 4, [], 98, ~U[2025-11-28 09:54:21Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "📍 장소 협찬: 라임스퀘어파티룸 강남역점\n👉 https://blog.naver.com/lime_sq\n\n💻레플릿 오프라인 강의 신청 링크:\n🔗 https://www.yunjadong.com/programs/?idx=152\n\n💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Replit #AI자동화 #AI강의 #오프라인강의 #기업강의 #노코드 #바이브코딩 #업무자동화 #코딩 #레플릿", "Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup", 693, false, "LrFiEdUiBwY", "https://www.youtube.com/watch?v=LrFiEdUiBwY", "/downloads/윤자동/2025-11-28 Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup/Replit 직원이 한국을 방문했다고?? | Replit Seoul Meetup [LrFiEdUiBwY].mp4", false, 4, ~U[2025-11-28 09:54:21Z]] 08:49:40.559 [debug] QUERY OK source="sources" db=0.1ms idle=2.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.560 [debug] QUERY OK source="media_items" db=0.3ms idle=1.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-26 03:55:35Z], 4] 08:49:40.561 [debug] QUERY OK source="media_items" db=0.5ms idle=2.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다]", "6dafdf97-f3e7-42d2-b46c-144f732fc9bb", false, 9017, false, "UNOSfBOA69I", "https://www.youtube.com/watch?v=UNOSfBOA69I", 7, "/downloads/윤자동/2025-11-26 세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다]/세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다] [UNOSfBOA69I].mp4", false, false, 4, [], 98, ~U[2025-11-26 03:55:35Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다]", 9017, false, "UNOSfBOA69I", "https://www.youtube.com/watch?v=UNOSfBOA69I", "/downloads/윤자동/2025-11-26 세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다]/세상에서 가장 쉬운 노션 설명회 [노션 포기했던 사람이 알려줍니다] [UNOSfBOA69I].mp4", false, 4, ~U[2025-11-26 03:55:35Z]] 08:49:40.561 [debug] QUERY OK source="sources" db=0.0ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.561 [debug] QUERY OK source="media_items" db=0.3ms idle=1.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-13 08:30:14Z], 4] 08:49:40.562 [debug] QUERY OK source="media_items" db=0.6ms idle=1.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n이젠 복잡한 API 키 설정, 인증, 문서 찾기에 5분 이상 낭비하지 마세요! \nReplit AI Integrations는 비개발자도 아이디어만 있으면 3분 만에 실제 작동하는 \n수천만원급 AI 자동화 웹사이트를 '딸깍' 한 번으로 만들고 배포할 수 있게 해줍니다.\n\nAPI 연결 없이 GPT-4o, Gemini 등 300개 이상의 최신 AI 모델을 활용하여 \n바로 빌드하세요!\n\n이번 영상에서는 \n✔ API 키 없이 AI 앱을 만드는 혁신적인 과정\n ✔ 3분 만에 웹사이트 디자인 및 기능 구현 시연\n ✔ 원클릭 배포와 비즈니스 활용 사례 를 모두 보여드립니다.\n\n⚡ Replit AI Integrations 주요 특징\n\nAPI 키 ❌, 설정 ❌: 복잡한 API 키 관리나 인증 없이 바로 빌드 가능합니다.\n300개 이상 모델 지원: GPT-4o, Gemini 등 최신 모델을 포함한 300+ 모델을 활용할 수 있습니다.\n올인원 & 원클릭 배포: 개발, 테스트, 원클릭 URL 생성까지 Replit 안에서 모두 해결됩니다.\nAI와 협업하는 새로운 개발 패러다임, Replit AI Integrations와 함께 직접 경험해 보세요! 🚀\n\n🎓 윤자동 올인원 멤버십 OPEN! 한 번의 선택으로 윤자동의 모든 지식을! 이제 모든 강의를 1년간 무제한 수강하세요. 👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지 👉 https://www.yunjadong.com/\n\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기 👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의 📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중! 자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면 좋아요 👍 구독 🔔 댓글 💬 부탁드립니다! 여러분의 피드백이 다음 콘텐츠를 만듭니다 :)\n\n#Replit #ReplitAI #AI코딩 #레플릿 #웹사이트자동화 #비개발자 #노코드개발 #AI자동화 #업무자동화 #Replit튜토리얼 #Replit강의 #ReplitAIIntegrations", "Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법", "d075cdf3-245d-4aa2-9646-f88e9a8ce569", false, 447, false, "V-KdgY8Mmnc", "https://www.youtube.com/watch?v=V-KdgY8Mmnc", 8, "/downloads/윤자동/2025-11-13 Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법/Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법 [V-KdgY8Mmnc].mp4", false, false, 4, [], 98, ~U[2025-11-13 08:30:14Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n이젠 복잡한 API 키 설정, 인증, 문서 찾기에 5분 이상 낭비하지 마세요! \nReplit AI Integrations는 비개발자도 아이디어만 있으면 3분 만에 실제 작동하는 \n수천만원급 AI 자동화 웹사이트를 '딸깍' 한 번으로 만들고 배포할 수 있게 해줍니다.\n\nAPI 연결 없이 GPT-4o, Gemini 등 300개 이상의 최신 AI 모델을 활용하여 \n바로 빌드하세요!\n\n이번 영상에서는 \n✔ API 키 없이 AI 앱을 만드는 혁신적인 과정\n ✔ 3분 만에 웹사이트 디자인 및 기능 구현 시연\n ✔ 원클릭 배포와 비즈니스 활용 사례 를 모두 보여드립니다.\n\n⚡ Replit AI Integrations 주요 특징\n\nAPI 키 ❌, 설정 ❌: 복잡한 API 키 관리나 인증 없이 바로 빌드 가능합니다.\n300개 이상 모델 지원: GPT-4o, Gemini 등 최신 모델을 포함한 300+ 모델을 활용할 수 있습니다.\n올인원 & 원클릭 배포: 개발, 테스트, 원클릭 URL 생성까지 Replit 안에서 모두 해결됩니다.\nAI와 협업하는 새로운 개발 패러다임, Replit AI Integrations와 함께 직접 경험해 보세요! 🚀\n\n🎓 윤자동 올인원 멤버십 OPEN! 한 번의 선택으로 윤자동의 모든 지식을! 이제 모든 강의를 1년간 무제한 수강하세요. 👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지 👉 https://www.yunjadong.com/\n\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기 👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의 📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중! 자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면 좋아요 👍 구독 🔔 댓글 💬 부탁드립니다! 여러분의 피드백이 다음 콘텐츠를 만듭니다 :)\n\n#Replit #ReplitAI #AI코딩 #레플릿 #웹사이트자동화 #비개발자 #노코드개발 #AI자동화 #업무자동화 #Replit튜토리얼 #Replit강의 #ReplitAIIntegrations", "Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법", 447, false, "V-KdgY8Mmnc", "https://www.youtube.com/watch?v=V-KdgY8Mmnc", "/downloads/윤자동/2025-11-13 Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법/Replit AI Integrations: 미쳤다! API 키 없이 3분 만에 수천만원 AI 앱 완성하는 법 [V-KdgY8Mmnc].mp4", false, 4, ~U[2025-11-13 08:30:14Z]] 08:49:40.562 [debug] QUERY OK source="sources" db=0.0ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.563 [debug] QUERY OK source="media_items" db=0.3ms idle=1.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-03 08:45:08Z], 4] 08:49:40.564 [debug] QUERY OK source="media_items" db=0.5ms idle=2.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["Ai를 활용해서 1인 기업가로 성장한 시현님의 스토리가 더 궁금하다면? @sihyun_adventure ←←←\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험", "d5c84ed1-a23d-4641-accf-eb1e30903ca4", false, 1283, false, "zMwYyrK8x7k", "https://www.youtube.com/watch?v=zMwYyrK8x7k", 9, "/downloads/윤자동/2025-11-03 자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험/자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험 [zMwYyrK8x7k].mkv", false, false, 4, [], 98, ~U[2025-11-03 08:45:08Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "Ai를 활용해서 1인 기업가로 성장한 시현님의 스토리가 더 궁금하다면? @sihyun_adventure ←←←\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험", 1283, false, "zMwYyrK8x7k", "https://www.youtube.com/watch?v=zMwYyrK8x7k", "/downloads/윤자동/2025-11-03 자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험/자동화, Ai로 돈을 벌고자 한다면 반드시 필요한 1가지 | 1인 사업가 시현의 모험 [zMwYyrK8x7k].mkv", false, 4, ~U[2025-11-03 08:45:08Z]] 08:49:40.564 [debug] QUERY OK source="sources" db=0.1ms idle=2.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.564 [debug] QUERY OK source="media_items" db=0.3ms idle=1.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-23 20:00:52Z], 4] 08:49:40.565 [debug] QUERY OK source="media_items" db=0.5ms idle=2.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["AI 없이 유튜브 시작하면 늦습니다.\n동테크님이 공개하는 AI 기획법,\n평범한 사람도 통하는 누구나 가능한 유튜브 성장 전략을 만나보세요.\n\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁과 인사이트를 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#유튜브기획 #AI기획법 #동테크 #유튜브영상제작 #유튜브AI #AI자동화 #생성형AI #업무자동화 #콘텐츠전략 #유튜브성장", "유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰", "dfcb623b-0534-466f-9695-108be25d03a5", false, 2672, false, "v14JiQ2-bIw", "https://www.youtube.com/watch?v=v14JiQ2-bIw", 10, "/downloads/윤자동/2025-10-23 유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰/유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰 [v14JiQ2-bIw].mkv", false, false, 4, [], 98, ~U[2025-10-23 20:00:52Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "AI 없이 유튜브 시작하면 늦습니다.\n동테크님이 공개하는 AI 기획법,\n평범한 사람도 통하는 누구나 가능한 유튜브 성장 전략을 만나보세요.\n\n\n🎓 윤자동 올인원 멤버십 2기 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/packages/269928\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁과 인사이트를 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#유튜브기획 #AI기획법 #동테크 #유튜브영상제작 #유튜브AI #AI자동화 #생성형AI #업무자동화 #콘텐츠전략 #유튜브성장", "유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰", 2672, false, "v14JiQ2-bIw", "https://www.youtube.com/watch?v=v14JiQ2-bIw", "/downloads/윤자동/2025-10-23 유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰/유튜브 시작 전, 이걸 모르면 끝입니다 | 동테크님 인터뷰 [v14JiQ2-bIw].mkv", false, 4, ~U[2025-10-23 20:00:52Z]] 08:49:40.565 [debug] QUERY OK source="sources" db=0.0ms idle=2.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.566 [debug] QUERY OK source="media_items" db=0.3ms idle=1.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-17 08:05:01Z], 4] 08:49:40.566 [debug] QUERY OK source="media_items" db=0.4ms idle=2.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["결혼과 동시에 창업, 그리고 투자 한 푼 없이 90만 유저를 만든 릴리스AI.\n\n요약이 아닌 ‘이해’를 만드는 AI로 성장한 부부 스타트업,\n오현수 대표와 김예인 공동창업자가 직접 들려주는 릴리스AI의 여정과 철학.\n\n🎁 댓글 이벤트 진행 중!\n댓글을 남겨주신 분들 중 3분을 추첨하여\nLilysAI 프로플랜 1개월 이용권을 드립니다 💡\n\n🎯 참여 방법\n1️⃣ 이 영상에 댓글을 남겨주시면 자동 응모됩니다.\n2️⃣ 당첨 발표 후, 커뮤니티 탭에 안내된 윤자동 카카오채널로\n본인의 유튜브 계정 인증 사진 + LilysAI 가입 이메일을 보내주세요.\n(48시간 내 미제출 시, 당첨이 자동 취소됩니다.)\n\n📅 이벤트 일정\n\n응모 기간: 지금부터 2025-10-30(목) 23:59까지\n\n당첨 발표: 2025-10-31(금) 윤자동 채널 커뮤니티 탭\n\n경품: LilysAI 프로플랜 1개월 이용권 (총 3명)\n\n📍 릴리스AI 바로가기: https://lilys.ai/\n📍업무 생산성 무한 증폭하는 : AI 실무 자동화: https://classu.co.kr/me/19173\n📍 협업 문의: ceo@yunjadong.com\n\n#릴리스AI #AI스타트업 #AI인터뷰 #업무자동화 #요약자동화 #ai툴 #LilysAI", "릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰", "b4376b4f-216f-4d6b-87ef-b87c45ef7e4b", false, 1836, false, "eUhHYs-81Uk", "https://www.youtube.com/watch?v=eUhHYs-81Uk", 11, "/downloads/윤자동/2025-10-17 릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰/릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰 [eUhHYs-81Uk].mkv", false, false, 4, [], 98, ~U[2025-10-17 08:05:01Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "결혼과 동시에 창업, 그리고 투자 한 푼 없이 90만 유저를 만든 릴리스AI.\n\n요약이 아닌 ‘이해’를 만드는 AI로 성장한 부부 스타트업,\n오현수 대표와 김예인 공동창업자가 직접 들려주는 릴리스AI의 여정과 철학.\n\n🎁 댓글 이벤트 진행 중!\n댓글을 남겨주신 분들 중 3분을 추첨하여\nLilysAI 프로플랜 1개월 이용권을 드립니다 💡\n\n🎯 참여 방법\n1️⃣ 이 영상에 댓글을 남겨주시면 자동 응모됩니다.\n2️⃣ 당첨 발표 후, 커뮤니티 탭에 안내된 윤자동 카카오채널로\n본인의 유튜브 계정 인증 사진 + LilysAI 가입 이메일을 보내주세요.\n(48시간 내 미제출 시, 당첨이 자동 취소됩니다.)\n\n📅 이벤트 일정\n\n응모 기간: 지금부터 2025-10-30(목) 23:59까지\n\n당첨 발표: 2025-10-31(금) 윤자동 채널 커뮤니티 탭\n\n경품: LilysAI 프로플랜 1개월 이용권 (총 3명)\n\n📍 릴리스AI 바로가기: https://lilys.ai/\n📍업무 생산성 무한 증폭하는 : AI 실무 자동화: https://classu.co.kr/me/19173\n📍 협업 문의: ceo@yunjadong.com\n\n#릴리스AI #AI스타트업 #AI인터뷰 #업무자동화 #요약자동화 #ai툴 #LilysAI", "릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰", 1836, false, "eUhHYs-81Uk", "https://www.youtube.com/watch?v=eUhHYs-81Uk", "/downloads/윤자동/2025-10-17 릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰/릴리스AI | 투자 한 푼 없이 90만 유저 달성한 부부 스타트업 이야기 | 오현수 대표, 김예인 공동창업자 인터뷰 [eUhHYs-81Uk].mkv", false, 4, ~U[2025-10-17 08:05:01Z]] 08:49:40.567 [debug] QUERY OK source="sources" db=0.0ms idle=2.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.567 [debug] QUERY OK source="media_items" db=0.3ms idle=1.7ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-10-14 08:30:00Z], 4] 08:49:40.568 [debug] QUERY OK source="media_items" db=0.5ms idle=2.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["옵시디언으로 지식관리의 한계를 넘은 남자, 구요한 대표님\nAI 시대, 상위 1%가 선택한 세컨드 브레인 전략을 공개합니다.\n\n지식이 곧 자산인 시대, \n기록이 어떻게 경쟁력이 되는지 영상에서 확인하세요.\n\n📅 PKM 컨퍼런스 2025 \n여러분 드디어 PKM 컨퍼런스 신청페이지를 열었습니다! \n개인과 조직이 지식을 어떻게 관리하고 AI를 활용하는지 \n궁금하신 분들 함께해주세요. \n옵시디언, 노션, 크래프트, n8n, 에이전트, 데본씽크, 로지텍 마우스까지!\n지식관리에 진심인 분들이 각자의 이야기를 나누는 자리입니다.\n\n🗓 일정: 10/23(목) 14:00 ~ 10/24(금) 12:00 \n📍 장소: 롯데호텔앤리조트 김해 (오프라인·온라인 동시 진행) \n💰 참가비: 오프라인 3만원(숙박·식사 제공) / 온라인 1만원 \n👉 신청하기: https://cmdspace.short.gy/pkm-conference-2025\n\n🏫 커맨드스페이스 교육 플랫폼 \nhttps://class.cmdspace.kr \n\n📚 커맨드스페이스 교육 자료 \nhttps://slashpage.com/cmds-class \n\n◾️ 커맨드스페이스 유튜브 메인 채널 \nhttps://www.youtube.com/@cmdspace \n\n#옵시디언 #지식관리 #세컨드브레인 #AI #생산성 #구요한 #커맨드스페이스 #옵시디언활용법#ai툴 #CMDSPACE\n\n더 많은 인사이트와 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스", "438370af-c645-46f3-aba1-811b8bef324e", false, 2232, false, "-bO_J3fD4Jc", "https://www.youtube.com/watch?v=-bO_J3fD4Jc", 12, "/downloads/윤자동/2025-10-14 옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스/옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스 [-bO_J3fD4Jc].mkv", false, false, 4, [], 98, ~U[2025-10-14 08:30:00Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "옵시디언으로 지식관리의 한계를 넘은 남자, 구요한 대표님\nAI 시대, 상위 1%가 선택한 세컨드 브레인 전략을 공개합니다.\n\n지식이 곧 자산인 시대, \n기록이 어떻게 경쟁력이 되는지 영상에서 확인하세요.\n\n📅 PKM 컨퍼런스 2025 \n여러분 드디어 PKM 컨퍼런스 신청페이지를 열었습니다! \n개인과 조직이 지식을 어떻게 관리하고 AI를 활용하는지 \n궁금하신 분들 함께해주세요. \n옵시디언, 노션, 크래프트, n8n, 에이전트, 데본씽크, 로지텍 마우스까지!\n지식관리에 진심인 분들이 각자의 이야기를 나누는 자리입니다.\n\n🗓 일정: 10/23(목) 14:00 ~ 10/24(금) 12:00 \n📍 장소: 롯데호텔앤리조트 김해 (오프라인·온라인 동시 진행) \n💰 참가비: 오프라인 3만원(숙박·식사 제공) / 온라인 1만원 \n👉 신청하기: https://cmdspace.short.gy/pkm-conference-2025\n\n🏫 커맨드스페이스 교육 플랫폼 \nhttps://class.cmdspace.kr \n\n📚 커맨드스페이스 교육 자료 \nhttps://slashpage.com/cmds-class \n\n◾️ 커맨드스페이스 유튜브 메인 채널 \nhttps://www.youtube.com/@cmdspace \n\n#옵시디언 #지식관리 #세컨드브레인 #AI #생산성 #구요한 #커맨드스페이스 #옵시디언활용법#ai툴 #CMDSPACE\n\n더 많은 인사이트와 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스", 2232, false, "-bO_J3fD4Jc", "https://www.youtube.com/watch?v=-bO_J3fD4Jc", "/downloads/윤자동/2025-10-14 옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스/옵시디언으로 두 번째 뇌를 만드는 남자|지식관리 전문가 구요한님 인터뷰|커멘드스페이스 [-bO_J3fD4Jc].mkv", false, 4, ~U[2025-10-14 08:30:00Z]] 08:49:40.568 [debug] QUERY OK source="sources" db=0.0ms idle=2.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.569 [debug] QUERY OK source="media_items" db=0.3ms idle=1.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-30 08:30:37Z], 4] 08:49:40.569 [debug] QUERY OK source="media_items" db=0.5ms idle=2.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["👉 지금 바로 체험하기: https://workwith.headai.io/3ViGOzx\n\n🤔 이런 문제로 고민하고 계신가요?\n\n ChatGPT에서 질문 하나 끝나면 처음부터 다시 설명해야 하는 번거로움\n 노션에 정리한 노트들이 쌓이기만 하고 다시 찾아보기 어려움\n PDF, 유튜브, 웹사이트를 오가며 생각이 산산조각 나는 느낌\n 복잡한 정보를 체계적으로 정리하고 연결하기 어려움\n\n✅ Ponder가 해결해드립니다!\nPonder는 단순한 생산성 도구가 아닙니다.\n더 빠르게가 아니라, 더 깊이 있게 생각할 수 있도록 도와주는 AI 파트너입니다.\n\n🎯 핵심 기능들\n🌟 무한 캔버스: 생각이 자연스럽게 가지치고 연결되는 공간\n📚 통합 지식 공간: PDF, 영상, 웹페이지를 한 곳에서 관리\n🤖 Ponder Agent: 사고 과정 전반에 임베딩된 AI 파트너\n🔗 비선형 사고: 아이디어를 자유롭게 확장·연결·재방문\n📊 구조화된 출력: 마크다운, 마인드맵, 리포트로 내보내기\n👥 이런 분들께 특히 추천!\n\n🎓 학생·연구자: 방대한 자료를 체계적으로 정리\n💼 지식근로자: 복잡한 정보를 인사이트로 변환\n✍️ 콘텐츠 크리에이터: 아이디어를 명확한 구조로 발전\n📈 분석가·투자자: 흩어진 데이터에서 패턴 발견\n\n🔥 왜 Ponder를 선택해야 할까요?\n\n기존 도구들은 실행을 위해 만들어졌지만,\nPonder는 탐색과 사고를 위해 설계되었습니다.\n💡 선형적 사고의 한계를 뛰어넘어\n🧩 모든 정보를 하나의 맥락으로 연결\n🚀 시간이 지날수록 성장하는 개인 지식 라이브러리\n\n\n @Ponder_HQ\n\n#Ponder #PonderAI #ThinkingSpace #AIResearch #ProductivityTools #지식관리 #StudyWithPonder #AcademicSuccess #인공지능도구 #생산성향상\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "Ponder AI | 학습을 위한 AI 에이전트", "aaa99676-8b18-4f6f-960f-a762b3c4fed4", false, 442, false, "wVlOHGMDEys", "https://www.youtube.com/watch?v=wVlOHGMDEys", 13, "/downloads/윤자동/2025-09-30 Ponder AI | 학습을 위한 AI 에이전트/Ponder AI | 학습을 위한 AI 에이전트 [wVlOHGMDEys].mp4", false, false, 4, [], 98, ~U[2025-09-30 08:30:37Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "👉 지금 바로 체험하기: https://workwith.headai.io/3ViGOzx\n\n🤔 이런 문제로 고민하고 계신가요?\n\n ChatGPT에서 질문 하나 끝나면 처음부터 다시 설명해야 하는 번거로움\n 노션에 정리한 노트들이 쌓이기만 하고 다시 찾아보기 어려움\n PDF, 유튜브, 웹사이트를 오가며 생각이 산산조각 나는 느낌\n 복잡한 정보를 체계적으로 정리하고 연결하기 어려움\n\n✅ Ponder가 해결해드립니다!\nPonder는 단순한 생산성 도구가 아닙니다.\n더 빠르게가 아니라, 더 깊이 있게 생각할 수 있도록 도와주는 AI 파트너입니다.\n\n🎯 핵심 기능들\n🌟 무한 캔버스: 생각이 자연스럽게 가지치고 연결되는 공간\n📚 통합 지식 공간: PDF, 영상, 웹페이지를 한 곳에서 관리\n🤖 Ponder Agent: 사고 과정 전반에 임베딩된 AI 파트너\n🔗 비선형 사고: 아이디어를 자유롭게 확장·연결·재방문\n📊 구조화된 출력: 마크다운, 마인드맵, 리포트로 내보내기\n👥 이런 분들께 특히 추천!\n\n🎓 학생·연구자: 방대한 자료를 체계적으로 정리\n💼 지식근로자: 복잡한 정보를 인사이트로 변환\n✍️ 콘텐츠 크리에이터: 아이디어를 명확한 구조로 발전\n📈 분석가·투자자: 흩어진 데이터에서 패턴 발견\n\n🔥 왜 Ponder를 선택해야 할까요?\n\n기존 도구들은 실행을 위해 만들어졌지만,\nPonder는 탐색과 사고를 위해 설계되었습니다.\n💡 선형적 사고의 한계를 뛰어넘어\n🧩 모든 정보를 하나의 맥락으로 연결\n🚀 시간이 지날수록 성장하는 개인 지식 라이브러리\n\n\n @Ponder_HQ\n\n#Ponder #PonderAI #ThinkingSpace #AIResearch #ProductivityTools #지식관리 #StudyWithPonder #AcademicSuccess #인공지능도구 #생산성향상\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)", "Ponder AI | 학습을 위한 AI 에이전트", 442, false, "wVlOHGMDEys", "https://www.youtube.com/watch?v=wVlOHGMDEys", "/downloads/윤자동/2025-09-30 Ponder AI | 학습을 위한 AI 에이전트/Ponder AI | 학습을 위한 AI 에이전트 [wVlOHGMDEys].mp4", false, 4, ~U[2025-09-30 08:30:37Z]] 08:49:40.570 [debug] QUERY OK source="sources" db=0.1ms idle=2.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.570 [debug] QUERY OK source="media_items" db=0.3ms idle=1.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-22 09:00:25Z], 4] 08:49:40.894 [debug] QUERY OK source="media_items" db=323.6ms idle=2.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n드디어 Replit이 새로운 AI 에이전트, Agent 3 🚀를 공개했습니다!\n이제 단순한 코드 생성기를 넘어, 진짜 개발 파트너처럼 함께 일할 수 있습니다.\n\n이번 영상에서는\n✔ Agent 3의 핵심 업그레이드 3가지\n✔ 딸깍 한 번으로 웹사이트 만드는 과정\n✔ 기존 개발 방식과 비교되는 차이점\n을 모두 보여드립니다.\n\n⚡ Agent 3 주요 특징\n\n최대 200분 동안 완전 자율 실행 → 중간에 멈추지 않고 끝까지 작업\n\n실시간 브라우저 테스트 & 자동 수정 → 더 빠르고, 더 저렴하게 개발\n\nSlack, Telegram 연동 → 맞춤형 봇·자동화 제작 가능\n\nAI와 협업하는 새로운 개발 패러다임,\nReplit Agent 3와 함께 직접 경험해 보세요! 🚀\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\n\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다 :)\n\n#Replit #Agent3 #AI코딩 #레플릿 #웹사이트자동화 #바이브코딩 #노코드개발 #AI자동화 #업무자동화 #Replit튜토리얼 #Replit강의", "Replit Agent 3 출시! 초보자도 가능한 \"진짜\" 딸깍 바이브코딩", "1334547b-d089-4dfa-9966-ab83fc0b7a48", false, 1152, false, "C7JcOx2ACJ0", "https://www.youtube.com/watch?v=C7JcOx2ACJ0", 14, "/downloads/윤자동/2025-09-22 Replit Agent 3 출시! 초보자도 가능한 "진짜" 딸깍 바이브코딩/Replit Agent 3 출시! 초보자도 가능한 "진짜" 딸깍 바이브코딩 [C7JcOx2ACJ0].mp4", false, false, 4, [], 98, ~U[2025-09-22 09:00:25Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n드디어 Replit이 새로운 AI 에이전트, Agent 3 🚀를 공개했습니다!\n이제 단순한 코드 생성기를 넘어, 진짜 개발 파트너처럼 함께 일할 수 있습니다.\n\n이번 영상에서는\n✔ Agent 3의 핵심 업그레이드 3가지\n✔ 딸깍 한 번으로 웹사이트 만드는 과정\n✔ 기존 개발 방식과 비교되는 차이점\n을 모두 보여드립니다.\n\n⚡ Agent 3 주요 특징\n\n최대 200분 동안 완전 자율 실행 → 중간에 멈추지 않고 끝까지 작업\n\n실시간 브라우저 테스트 & 자동 수정 → 더 빠르고, 더 저렴하게 개발\n\nSlack, Telegram 연동 → 맞춤형 봇·자동화 제작 가능\n\nAI와 협업하는 새로운 개발 패러다임,\nReplit Agent 3와 함께 직접 경험해 보세요! 🚀\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\n\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다 :)\n\n#Replit #Agent3 #AI코딩 #레플릿 #웹사이트자동화 #바이브코딩 #노코드개발 #AI자동화 #업무자동화 #Replit튜토리얼 #Replit강의", "Replit Agent 3 출시! 초보자도 가능한 \"진짜\" 딸깍 바이브코딩", 1152, false, "C7JcOx2ACJ0", "https://www.youtube.com/watch?v=C7JcOx2ACJ0", "/downloads/윤자동/2025-09-22 Replit Agent 3 출시! 초보자도 가능한 "진짜" 딸깍 바이브코딩/Replit Agent 3 출시! 초보자도 가능한 "진짜" 딸깍 바이브코딩 [C7JcOx2ACJ0].mp4", false, 4, ~U[2025-09-22 09:00:25Z]] 08:49:40.895 [debug] QUERY OK source="sources" db=0.1ms idle=325.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] 08:49:40.895 [debug] QUERY OK source="media_items" db=0.5ms idle=325.1ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-18 09:01:27Z], 4] 08:49:40.988 [debug] QUERY OK source="media_items" db=92.6ms idle=325.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["메이크(Make)를 활용해 명함 자동화 시스템을 직접 만들어봤습니다!\n사진으로 명함을 찍으면 AI가 자동으로 정보를 추출하고, 노션이나 구글 연락처에 저장하며, 상대방에게 제 명함을 문자로 자동 발송하는 과정까지 모두 구현했습니다. \n\n이번 영상에서 다루는 주요 내용:\n- 메이크(Make)로 명함 자동화 시나리오 설계하기\n- 오픈AI를 활용한 명함 이미지 분석 및 정보 추출\n- 노션(Notion)과 구글 연락처에 자동 저장하기\n- 솔라피(SOLAPI)를 이용한 문자 자동 발송\n- 리멤버(Remember) 없이도 가능한 AI 명함 관리 시스템\n\n이 방법을 활용하면 비즈니스 미팅에서 명함 교환 후, \n별도 입력 없이 자동으로 연락처가 정리되고 \n상대방에게는 제 명함이 바로 전달되어 아이스브레이킹 효과까지 누릴 수 있습니다. \n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#메이크 #명함자동화 #make #AI자동화 #업무자동화 #노션자동화 \n#명함관리 #오픈AI #문자자동발송 #리멤버 #노코드", "메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화", "a3a6d826-5133-4396-b6d8-0a473cd5dfde", false, 3603, false, "sNMzNZUeAqU", "https://www.youtube.com/watch?v=sNMzNZUeAqU", 15, "/downloads/윤자동/2025-09-18 메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화/메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화 [sNMzNZUeAqU].mp4", false, false, 4, [], 98, ~U[2025-09-18 09:01:27Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "메이크(Make)를 활용해 명함 자동화 시스템을 직접 만들어봤습니다!\n사진으로 명함을 찍으면 AI가 자동으로 정보를 추출하고, 노션이나 구글 연락처에 저장하며, 상대방에게 제 명함을 문자로 자동 발송하는 과정까지 모두 구현했습니다. \n\n이번 영상에서 다루는 주요 내용:\n- 메이크(Make)로 명함 자동화 시나리오 설계하기\n- 오픈AI를 활용한 명함 이미지 분석 및 정보 추출\n- 노션(Notion)과 구글 연락처에 자동 저장하기\n- 솔라피(SOLAPI)를 이용한 문자 자동 발송\n- 리멤버(Remember) 없이도 가능한 AI 명함 관리 시스템\n\n이 방법을 활용하면 비즈니스 미팅에서 명함 교환 후, \n별도 입력 없이 자동으로 연락처가 정리되고 \n상대방에게는 제 명함이 바로 전달되어 아이스브레이킹 효과까지 누릴 수 있습니다. \n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#메이크 #명함자동화 #make #AI자동화 #업무자동화 #노션자동화 \n#명함관리 #오픈AI #문자자동발송 #리멤버 #노코드", "메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화", 3603, false, "sNMzNZUeAqU", "https://www.youtube.com/watch?v=sNMzNZUeAqU", "/downloads/윤자동/2025-09-18 메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화/메이크로 끝내는 명함 관리, 리멤버 없이도 가능한 AI 자동화 [sNMzNZUeAqU].mp4", false, 4, ~U[2025-09-18 09:01:27Z]] 08:49:40.989 [debug] QUERY OK source="sources" db=0.2ms idle=94.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] 08:49:40.990 [debug] QUERY OK source="media_items" db=0.5ms idle=94.5ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-10 08:30:34Z], 4] 08:49:40.991 [debug] QUERY OK source="media_items" db=0.7ms idle=95.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n---\n\n우리 채널에서 [조회수 34만 회]를 기록한 재고관리 프로그램 영상, 기억하시나요? \n그때는 엑셀로 1시간이나 걸려서 만들었던 프로그램을 \n이제는 [Replit]을 활용해 단 10분 만에 완성할 수 있습니다! 🚀 \n\n이번 영상에서는 \n✔ Replit으로 재고관리 프로그램을 만드는 방법 \n✔ 클릭 몇 번으로 DB·로그인·배포까지 끝내는 방법 \n✔ 엑셀 방식보다 훨씬 빠르고 효율적인 자동화 팁 \n까지 모두 공개합니다.\n\n시간을 아끼고 싶다면 이번 영상 꼭 시청하세요! ⏱️\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Replit #ReplitAI #레플릿 #재고관리 #재고관리프로그램 #AI자동화 #자동화프로그램 #엑셀재고관리 #재고관리자동화 #바이브코딩 #노코드개발 #재고관리시스템 #Replit강의 #Replit튜토리얼 #AI활용 #업무자동화", "Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트", "380fa34c-4944-4284-813c-bd56b4260e0f", false, 730, false, "w1IKOhfT4as", "https://www.youtube.com/watch?v=w1IKOhfT4as", 16, "/downloads/윤자동/2025-09-10 Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트/Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트 [w1IKOhfT4as].mp4", false, false, 4, [], 98, ~U[2025-09-10 08:30:34Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "💰 아래 링크와 프로모션코드를 활용하여 혜택을 받아보세요 \n🔗 링크: https://replit.com/signup?referral=yunjadong\n🎁 프로모션코드: YUNJADONG\n\n---\n\n우리 채널에서 [조회수 34만 회]를 기록한 재고관리 프로그램 영상, 기억하시나요? \n그때는 엑셀로 1시간이나 걸려서 만들었던 프로그램을 \n이제는 [Replit]을 활용해 단 10분 만에 완성할 수 있습니다! 🚀 \n\n이번 영상에서는 \n✔ Replit으로 재고관리 프로그램을 만드는 방법 \n✔ 클릭 몇 번으로 DB·로그인·배포까지 끝내는 방법 \n✔ 엑셀 방식보다 훨씬 빠르고 효율적인 자동화 팁 \n까지 모두 공개합니다.\n\n시간을 아끼고 싶다면 이번 영상 꼭 시청하세요! ⏱️\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Replit #ReplitAI #레플릿 #재고관리 #재고관리프로그램 #AI자동화 #자동화프로그램 #엑셀재고관리 #재고관리자동화 #바이브코딩 #노코드개발 #재고관리시스템 #Replit강의 #Replit튜토리얼 #AI활용 #업무자동화", "Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트", 730, false, "w1IKOhfT4as", "https://www.youtube.com/watch?v=w1IKOhfT4as", "/downloads/윤자동/2025-09-10 Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트/Replit으로 10분 만에 끝! 34만 조회수 엑셀 재고관리 프로그램 업데이트 [w1IKOhfT4as].mp4", false, 4, ~U[2025-09-10 08:30:34Z]] 08:49:40.991 [debug] QUERY OK source="sources" db=0.1ms idle=95.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] 08:49:40.992 [debug] QUERY OK source="media_items" db=0.4ms idle=2.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-09 08:14:42Z], 4] 08:49:40.992 [debug] QUERY OK source="media_items" db=0.6ms idle=2.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["직원 스케줄 관리, 교대 근무, 팀장 배정…\n머리 아프고 시간 많이 빼앗기셨죠? 😮\u200D💨\n\n이번 영상에서는 레플릿(Replit)으로 직접 개발한\nAI 인력관리 자동화 프로그램을 활용해\n청소업체 퍼스트클린이 월 100시간을 절약한 비결을 공개합니다! 🧹✨\n\n🎁 플라우드 노트핀 댓글 이벤트\n\nAI 기반 회의록 자동 생성 & 요약 도구 플라우드 노트핀을\n1분께 무료 증정해 드립니다! 🚀\n\n• 응모 기간 : 지금부터 2025-09-15(월) 00:00까지\n• 당첨 발표 : 2025-09-16(화), 윤자동 채널 커뮤니티 탭\n• 경품 : 플라우드 노트핀 1개 (약 30만원 상당)\n\n참여 방법\n1. 본 영상 구독 + 좋아요\n2. 댓글 작성\n3. 당첨자는 발표 후 커뮤니티 탭에 올라온 링크로\n본인의 유튜브 계정임을 인증하는 캡처를 제출하면\n플라우드 노트핀 1개를 보내드립니다.\n4. 당첨 발표 후 48시간 내에 인증하지 않으면,\n예비 당첨자에게 기회가 넘어갑니다.\n\n플라우드 노트핀 구매 링크\nhttps://mkt.shopping.naver.com/link/6865d2d01fd1ac4107989801?nt_source=Youtube&nt_medium=NP&nt_detail=394&nt_keyword=\n\n💡 자동화 외주 서비스 안내\n\n윤자동은 강의만 하지 않습니다.\n레플릿(Replit)·Make·Cursor등을 활용해\n 맞춤형 AI 자동화 프로그램을 직접 개발해드립니다.\n\n외주 문의하기 👉 https://yunjadong.com\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#레플릿 #AI자동화 #인력관리자동화 #업무자동화 #플라우드노트핀 # #Replit #개발외주", "레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿", "884a9b12-aa6d-4c2b-a370-cc03577107f9", false, 367, false, "a5YCWDv-9fI", "https://www.youtube.com/watch?v=a5YCWDv-9fI", 17, "/downloads/윤자동/2025-09-09 레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿/레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿 [a5YCWDv-9fI].mkv", false, false, 4, [], 98, ~U[2025-09-09 08:14:42Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "직원 스케줄 관리, 교대 근무, 팀장 배정…\n머리 아프고 시간 많이 빼앗기셨죠? 😮\u200D💨\n\n이번 영상에서는 레플릿(Replit)으로 직접 개발한\nAI 인력관리 자동화 프로그램을 활용해\n청소업체 퍼스트클린이 월 100시간을 절약한 비결을 공개합니다! 🧹✨\n\n🎁 플라우드 노트핀 댓글 이벤트\n\nAI 기반 회의록 자동 생성 & 요약 도구 플라우드 노트핀을\n1분께 무료 증정해 드립니다! 🚀\n\n• 응모 기간 : 지금부터 2025-09-15(월) 00:00까지\n• 당첨 발표 : 2025-09-16(화), 윤자동 채널 커뮤니티 탭\n• 경품 : 플라우드 노트핀 1개 (약 30만원 상당)\n\n참여 방법\n1. 본 영상 구독 + 좋아요\n2. 댓글 작성\n3. 당첨자는 발표 후 커뮤니티 탭에 올라온 링크로\n본인의 유튜브 계정임을 인증하는 캡처를 제출하면\n플라우드 노트핀 1개를 보내드립니다.\n4. 당첨 발표 후 48시간 내에 인증하지 않으면,\n예비 당첨자에게 기회가 넘어갑니다.\n\n플라우드 노트핀 구매 링크\nhttps://mkt.shopping.naver.com/link/6865d2d01fd1ac4107989801?nt_source=Youtube&nt_medium=NP&nt_detail=394&nt_keyword=\n\n💡 자동화 외주 서비스 안내\n\n윤자동은 강의만 하지 않습니다.\n레플릿(Replit)·Make·Cursor등을 활용해\n 맞춤형 AI 자동화 프로그램을 직접 개발해드립니다.\n\n외주 문의하기 👉 https://yunjadong.com\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#레플릿 #AI자동화 #인력관리자동화 #업무자동화 #플라우드노트핀 # #Replit #개발외주", "레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿", 367, false, "a5YCWDv-9fI", "https://www.youtube.com/watch?v=a5YCWDv-9fI", "/downloads/윤자동/2025-09-09 레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿/레플릿으로 만든 인력관리 자동화! 청소업체가 월 100시간 절약한 비결 대공개 | 레플릿 [a5YCWDv-9fI].mkv", false, 4, ~U[2025-09-09 08:14:42Z]] 08:49:40.993 [debug] QUERY OK source="sources" db=0.2ms idle=2.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:40.993 [debug] QUERY OK source="media_items" db=0.4ms idle=2.2ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-09-06 11:02:40Z], 4] 08:49:40.994 [debug] QUERY OK source="media_items" db=0.6ms idle=2.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["AI 활용 실전가 AIXLIFE 나민수 대표와의 인터뷰!\n화장실 청소부터 AI 강사까지, 인생을 바꾼 이야기.\n실전 노하우와 철학까지 전부 공개합니다.\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n🔎 나를 찾아줘 \n(AI와 대화하며 나를 발견하는 시간)\n👉 https://chatgpt.com/g/g-685220c4ba7881919214d48ac5e8afdd-na-reul-cajajweo-v-3\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#AI #AI활용 #AIXLIFE #AI자동화 #AI수익화 #업무자동화 #업무효율화 #생산성향상 #인생역전 #ChatGPT #Claud #perplexity", "AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE", "510486a8-314d-493b-abde-99d16ac66441", false, 2636, false, "lJnBdsIgmJM", "https://www.youtube.com/watch?v=lJnBdsIgmJM", 18, "/downloads/윤자동/2025-09-06 AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE/AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE [lJnBdsIgmJM].mkv", false, false, 4, [], 98, ~U[2025-09-06 11:02:40Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "AI 활용 실전가 AIXLIFE 나민수 대표와의 인터뷰!\n화장실 청소부터 AI 강사까지, 인생을 바꾼 이야기.\n실전 노하우와 철학까지 전부 공개합니다.\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n🔎 나를 찾아줘 \n(AI와 대화하며 나를 발견하는 시간)\n👉 https://chatgpt.com/g/g-685220c4ba7881919214d48ac5e8afdd-na-reul-cajajweo-v-3\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#AI #AI활용 #AIXLIFE #AI자동화 #AI수익화 #업무자동화 #업무효율화 #생산성향상 #인생역전 #ChatGPT #Claud #perplexity", "AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE", 2636, false, "lJnBdsIgmJM", "https://www.youtube.com/watch?v=lJnBdsIgmJM", "/downloads/윤자동/2025-09-06 AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE/AI로 인생 바꾼 남자, 2년 전 화장실 청소했습니다 | 나민수님 인터뷰 | AIXLIFE [lJnBdsIgmJM].mkv", false, 4, ~U[2025-09-06 11:02:40Z]] 08:49:40.995 [debug] QUERY OK source="sources" db=0.2ms idle=2.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] 08:49:40.995 [debug] QUERY OK source="media_items" db=0.5ms idle=2.3ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-08-29 09:00:23Z], 4] 08:49:40.996 [debug] QUERY OK source="media_items" db=0.6ms idle=2.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["📌 Make와 n8n으로 자동화의 신이 된 샘 호트만을 만나다\n\nAI 자동화 전략가 샘 호트만이 말하는\nMake vs n8n 자동화 툴 비교 및 자동화 실전 활용법\n자동화와 솔로프리너의 인사이트까지!\n\nZEXEA 대표이자 자동화 코치로 활동 중인\n그의 실전 경험과 꿀팁을 확인해보세요.\n🔗 zexea.io/profile\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Make #n8n #자동화 #AI자동화 #샘호트만 #ZEXEA #AI전략 #AI교육 #자동화시스템 #노코드 #바이브코딩 #인사이트 #업무자동화", "Make+n8n 고수 샘호트만의 실전 활용법 대공개 | 샘호트만님 인터뷰", "9e706d63-efd4-4767-9a0b-3717e5e60219", false, 2395, false, "DUlI3zqOOw0", "https://www.youtube.com/watch?v=DUlI3zqOOw0", 19, "/downloads/윤자동/2025-08-29 Make+n8n 고수 샘호트만의 실전 활용법 대공개 | 샘호트만님 인터뷰/Make+n8n 고수 샘호트만의 실전 활용법 대공개 | 샘호트만님 인터뷰 [DUlI3zqOOw0].mkv", false, false, 4, [], 98, ~U[2025-08-29 09:00:23Z], ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], "📌 Make와 n8n으로 자동화의 신이 된 샘 호트만을 만나다\n\nAI 자동화 전략가 샘 호트만이 말하는\nMake vs n8n 자동화 툴 비교 및 자동화 실전 활용법\n자동화와 솔로프리너의 인사이트까지!\n\nZEXEA 대표이자 자동화 코치로 활동 중인\n그의 실전 경험과 꿀팁을 확인해보세요.\n🔗 zexea.io/profile\n\n🎓 윤자동 올인원 멤버십 OPEN!\n한 번의 선택으로 윤자동의 모든 지식을!\n이제 모든 강의를 1년간 무제한 수강하세요.\n👉 https://yjd.liveklass.com/\n\n🌐 윤자동 공식 홈페이지\n👉 https://www.yunjadong.com/\nAI 자동화 강의, 프로그램, 컨설팅까지 한 곳에!\n\n💬 오픈채팅방 입장하기\n👉 https://open.kakao.com/o/gl2Cf1yf\n\n📧 비즈니스 문의\n📩 ceo@yunjadong.com\n\n매주 목요일 오후 8시, 유튜브 라이브 강의 진행 중!\n자동화 꿀팁 가득하니 꼭 참석해서 함께 배워가요 😊\n\n더 많은 AI 자동화 꿀팁을 원하신다면\n좋아요 👍 구독 🔔 댓글 💬 부탁드립니다!\n여러분의 피드백이 다음 콘텐츠를 만듭니다:)\n\n#Make #n8n #자동화 #AI자동화 #샘호트만 #ZEXEA #AI전략 #AI교육 #자동화시스템 #노코드 #바이브코딩 #인사이트 #업무자동화", "Make+n8n 고수 샘호트만의 실전 활용법 대공개 | 샘호트만님 인터뷰", 2395, false, "DUlI3zqOOw0", "https://www.youtube.com/watch?v=DUlI3zqOOw0", "/downloads/윤자동/2025-08-29 Make+n8n 고수 샘호트만의 실전 활용법 대공개 | 샘호트만님 인터뷰/Make+n8n 고수 샘호트만의 실전 활용법 대공개 | 샘호트만님 인터뷰 [DUlI3zqOOw0].mkv", false, 4, ~U[2025-08-29 09:00:23Z]] 08:49:40.996 [debug] QUERY OK source="sources" db=0.0ms idle=2.9ms UPDATE "sources" SET "last_indexed_at" = ?, "updated_at" = ? WHERE "id" = ? [~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z], 4] 08:49:40.997 [debug] QUERY OK source="media_items" db=0.5ms idle=2.4ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((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] 08:49:40.999 [debug] QUERY OK source="tasks" db=0.2ms idle=2.0ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2340, 2241, ~U[2025-12-21 08:49:40Z], ~U[2025-12-21 08:49:40Z]] 08:49:41.000 [debug] QUERY OK source="tasks" db=0.2ms idle=1.2ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2341, 2243, ~U[2025-12-21 08:49:41Z], ~U[2025-12-21 08:49:41Z]] 08:49:41.001 [debug] QUERY OK source="tasks" db=0.0ms idle=1.2ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2342, 2245, ~U[2025-12-21 08:49:41Z], ~U[2025-12-21 08:49:41Z]] 08:49:41.002 [debug] QUERY OK source="tasks" db=0.0ms idle=0.8ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2343, 2246, ~U[2025-12-21 08:49:41Z], ~U[2025-12-21 08:49:41Z]] 08:49:41.002 [debug] QUERY OK source="tasks" db=0.0ms idle=0.7ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2344, 2248, ~U[2025-12-21 08:49:41Z], ~U[2025-12-21 08:49:41Z]] 08:49:41.003 [debug] QUERY OK source="tasks" db=0.0ms idle=0.7ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2345, 2249, ~U[2025-12-21 08:49:41Z], ~U[2025-12-21 08:49:41Z]] 08:49:41.004 [debug] QUERY OK source="media_items" db=0.4ms 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")))) [4] 08:49:41.004 [debug] QUERY OK source="media_items" db=0.0ms idle=1.2ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [4] 08:49:41.004 [debug] QUERY OK source="tasks" db=0.0ms idle=1.1ms INSERT INTO "tasks" ("job_id","source_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2346, 4, ~U[2025-12-21 08:49:41Z], ~U[2025-12-21 08:49:41Z]] 08:49:41.005 [info] {"args":{"id":4},"id":2330,"meta":{},"state":"success","max_attempts":20,"queue":"media_collection_indexing","worker":"Pinchflat.SlowIndexing.MediaCollectionIndexingWorker","source":"oban","duration":44295388,"event":"job:stop","queue_time":860924,"attempt":1,"tags":["media_source","media_collection_indexing","show_in_dashboard"]} 08:49:41.005 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766306981005338102,"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"]} 08:49:41.005 [info] {"args":{"id":2243},"id":2341,"meta":{},"system_time":1766306981005361786,"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"]} 08:49:41.005 [debug] QUERY OK source="media_items" db=0.1ms idle=0.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" = ?) [2243] 08:49:41.005 [debug] QUERY OK source="media_items" db=0.1ms idle=0.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" = ?) [2241] 08:49:41.005 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:49:41.005 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:49:41.006 [debug] QUERY OK source="sources" db=0.1ms idle=0.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" = ?) [4] 08:49:41.006 [debug] QUERY OK source="sources" db=0.2ms idle=1.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:49:41.006 [debug] QUERY OK source="media_profiles" db=0.1ms idle=0.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] 08:49:41.006 [debug] QUERY OK source="media_profiles" db=0.1ms idle=0.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] 08:49:41.006 [debug] QUERY OK source="media_items" db=0.1ms idle=0.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 [2241] 08:49:41.006 [debug] QUERY OK source="media_items" db=0.1ms idle=0.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 [2243] 08:49:41.007 [debug] QUERY OK source="media_metadata" db=0.0ms idle=0.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" = ?) [2241] 08:49:41.007 [debug] QUERY OK source="media_metadata" db=0.0ms idle=0.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" = ?) [2243] 08:49:41.007 [debug] QUERY OK source="media_profiles" db=0.1ms idle=0.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] 08:49:41.007 [debug] QUERY OK source="media_profiles" db=0.0ms idle=0.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] 08:49:41.007 [debug] QUERY OK source="settings" db=0.1ms 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 [] 08:49:41.007 [debug] QUERY OK source="settings" db=0.2ms idle=0.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 [] 08:49:41.007 [debug] QUERY OK source="settings" db=0.1ms 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 [] 08:49:41.007 [debug] QUERY OK source="settings" db=0.0ms idle=0.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 [] 08:49:41.008 [debug] Running yt-dlp command for action: get_downloadable_status 08:49:41.008 [debug] Running yt-dlp command for action: get_downloadable_status 08:49:41.008 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:41.008 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:41.008 [debug] QUERY OK source="settings" db=0.1ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:41.008 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:41.009 [debug] QUERY OK source="settings" db=0.0ms idle=0.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 [] 08:49:41.009 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:41.009 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/8e/ec/8eec464b31470b7abec4390d9d5ff21bc45c88b0dd9e1f7533f99f656cded175.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:49:41.009 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=9JDmnAPA9Pc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/5f/27/5f27657cb7b1bfc046678b5f1e634cd428ddaf17ba99c32c061be515dee3e631.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:49:43.266 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/8e/ec/8eec464b31470b7abec4390d9d5ff21bc45c88b0dd9e1f7533f99f656cded175.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 08:49:43.266 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 08:49:43.267 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2261737,"event":"job:exception","queue_time":1004820,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:49:43.273 [info] {"args":{"id":2245},"id":2342,"meta":{},"system_time":1766306983273333823,"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"]} 08:49:43.273 [debug] QUERY OK source="media_items" db=0.2ms idle=279.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" = ?) [2245] 08:49:43.273 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:49:43.274 [debug] QUERY OK source="sources" db=0.2ms idle=279.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] 08:49:43.274 [debug] QUERY OK source="media_profiles" db=0.1ms idle=280.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] 08:49:43.274 [debug] QUERY OK source="media_items" db=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 [2245] 08:49:43.275 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [2245] 08:49:43.275 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:49:43.275 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:43.275 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:43.275 [debug] Running yt-dlp command for action: get_downloadable_status 08:49:43.275 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:43.276 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:49:43.276 [debug] QUERY OK source="settings" db=0.1ms 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 [] 08:49:43.276 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=ttdIZNjRKDg --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/19/f9/19f96767fdd223e0739b79002487ee9cdb60012980b70e1cb1c3f06a7365b1c2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:49:43.373 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=9JDmnAPA9Pc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/5f/27/5f27657cb7b1bfc046678b5f1e634cd428ddaf17ba99c32c061be515dee3e631.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 9JDmnAPA9Pc: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks. 08:49:43.373 [error] yt-dlp download error for media item #2243: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 9JDmnAPA9Pc: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks.\n" 08:49:43.373 [error] yt-dlp download will not be retried: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 9JDmnAPA9Pc: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks.\n" 08:49:43.373 [info] {"args":{"id":2243},"id":2341,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2368164,"event":"job:stop","queue_time":4820,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:49:43.380 [info] {"args":{"id":2246},"id":2343,"meta":{},"system_time":1766306983380491936,"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"]} 08:49:43.380 [debug] QUERY OK source="media_items" db=0.2ms idle=104.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" = ?) [2246] 08:49:43.381 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:49:43.381 [debug] QUERY OK source="sources" db=0.1ms idle=105.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" = ?) [4] 08:49:43.382 [debug] QUERY OK source="media_profiles" db=0.2ms idle=105.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] 08:49:43.382 [debug] QUERY OK source="media_items" db=0.2ms 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 [2246] 08:49:43.383 [debug] QUERY OK source="media_metadata" db=0.1ms idle=2.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" = ?) [2246] 08:49:43.383 [debug] QUERY OK source="media_profiles" db=0.2ms 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] 08:49:43.384 [debug] QUERY OK source="settings" db=0.1ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:43.384 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:43.384 [debug] Running yt-dlp command for action: get_downloadable_status 08:49:43.384 [debug] QUERY OK source="settings" db=0.0ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:43.385 [debug] QUERY OK source="settings" db=0.1ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:43.385 [debug] QUERY OK source="settings" db=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:43.385 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=mj5QvcX_9og --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/c0/85/c0858bdcd4e37a07a597bdd048588e318a282d4628b52b90beb3b77e53acf28a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:49:45.513 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=mj5QvcX_9og --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/c0/85/c0858bdcd4e37a07a597bdd048588e318a282d4628b52b90beb3b77e53acf28a.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] mj5QvcX_9og: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks. 08:49:45.513 [error] yt-dlp download error for media item #2246: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] mj5QvcX_9og: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks.\n" 08:49:45.513 [error] yt-dlp download will not be retried: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] mj5QvcX_9og: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks.\n" 08:49:45.514 [info] {"args":{"id":2246},"id":2343,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2133123,"event":"job:stop","queue_time":2379846,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:49:45.520 [info] {"args":{"id":2248},"id":2344,"meta":{},"system_time":1766306985520475368,"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"]} 08:49:45.520 [debug] QUERY OK source="media_items" db=0.1ms idle=526.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" = ?) [2248] 08:49:45.520 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:49:45.521 [debug] QUERY OK source="sources" db=0.1ms idle=526.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] 08:49:45.521 [debug] QUERY OK source="media_profiles" db=0.1ms idle=527.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] 08:49:45.521 [debug] QUERY OK source="media_items" db=0.2ms 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 [2248] 08:49:45.522 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [2248] 08:49:45.522 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:49:45.522 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:45.522 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:45.522 [debug] Running yt-dlp command for action: get_downloadable_status 08:49:45.523 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:45.523 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:45.523 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:45.523 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=w_M_Wn2L-b4 --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/ee/a7/eea73b7a510ab5f819514ed54139f486bdda2e44aa518558b8874c779ef65a11.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:49:45.599 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=ttdIZNjRKDg --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/19/f9/19f96767fdd223e0739b79002487ee9cdb60012980b70e1cb1c3f06a7365b1c2.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] ttdIZNjRKDg: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks. 08:49:45.600 [error] yt-dlp download error for media item #2245: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] ttdIZNjRKDg: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks.\n" 08:49:45.600 [error] yt-dlp download will not be retried: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] ttdIZNjRKDg: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks.\n" 08:49:45.600 [info] {"args":{"id":2245},"id":2342,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2326992,"event":"job:stop","queue_time":2272842,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:49:45.607 [info] {"args":{"id":2249},"id":2345,"meta":{},"system_time":1766306985607544265,"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"]} 08:49:45.608 [debug] QUERY OK source="media_items" db=0.3ms idle=84.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" = ?) [2249] 08:49:45.608 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:49:45.608 [debug] QUERY OK source="sources" db=0.3ms idle=84.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" = ?) [4] 08:49:45.609 [debug] QUERY OK source="media_profiles" db=0.4ms idle=84.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] 08:49:45.609 [debug] QUERY OK source="media_items" db=0.2ms idle=8.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 [2249] 08:49:45.610 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [2249] 08:49:45.610 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.0ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 08:49:45.610 [debug] QUERY OK source="settings" db=0.0ms queue=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 [] 08:49:45.610 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:45.611 [debug] Running yt-dlp command for action: get_downloadable_status 08:49:45.611 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:45.611 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:45.611 [debug] QUERY OK source="settings" db=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:49:45.611 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=C1vpUJuoch4 --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/b2/6a/b26a8f578504e8cff0db6ce5e0195628739c137fc3558a04d7a2e52d65f9ec26.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:49:47.782 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=w_M_Wn2L-b4 --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/ee/a7/eea73b7a510ab5f819514ed54139f486bdda2e44aa518558b8874c779ef65a11.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] w_M_Wn2L-b4: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks. 08:49:47.782 [error] yt-dlp download error for media item #2248: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] w_M_Wn2L-b4: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks.\n" 08:49:47.782 [error] yt-dlp download will not be retried: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] w_M_Wn2L-b4: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks.\n" 08:49:47.783 [info] {"args":{"id":2248},"id":2344,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2262296,"event":"job:stop","queue_time":4519916,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:49:47.924 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=C1vpUJuoch4 --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/b2/6a/b26a8f578504e8cff0db6ce5e0195628739c137fc3558a04d7a2e52d65f9ec26.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] C1vpUJuoch4: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks. 08:49:47.924 [error] yt-dlp download error for media item #2249: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] C1vpUJuoch4: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks.\n" 08:49:47.924 [error] yt-dlp download will not be retried: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] C1vpUJuoch4: This video is available to this channel's members on level: 윤자동 멤버십 (or any higher level). Join this channel to get access to members-only content and other exclusive perks.\n" 08:49:47.924 [info] {"args":{"id":2249},"id":2345,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2316890,"event":"job:stop","queue_time":4606866,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:49:59.565 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:50:00.923 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766307000923615600,"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"]} 08:50:00.924 [debug] QUERY OK source="media_items" db=0.3ms idle=1929.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" = ?) [2241] 08:50:00.924 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:50:00.924 [debug] QUERY OK source="sources" db=0.1ms idle=1358.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] 08:50:00.924 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1008.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] 08:50:00.925 [debug] QUERY OK source="media_items" db=0.2ms 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 [2241] 08:50:00.959 [debug] QUERY OK source="media_metadata" db=0.0ms idle=36.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" = ?) [2241] 08:50:00.960 [debug] QUERY OK source="media_profiles" db=0.1ms idle=35.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] 08:50:00.960 [debug] QUERY OK source="settings" db=0.1ms idle=35.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 [] 08:50:00.960 [debug] QUERY OK source="settings" db=0.0ms idle=35.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 [] 08:50:00.960 [debug] Running yt-dlp command for action: get_downloadable_status 08:50:00.961 [debug] QUERY OK source="settings" db=0.0ms idle=35.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 [] 08:50:00.961 [debug] QUERY OK source="settings" db=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:00.961 [debug] QUERY OK source="settings" db=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:00.961 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/81/81/8181333d516adbef57c15eb3121160d60de8f83223f40fed9b92896df5597492.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:50:00.988 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:50:03.139 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/81/81/8181333d516adbef57c15eb3121160d60de8f83223f40fed9b92896df5597492.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 08:50:03.139 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 08:50:03.140 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2216170,"event":"job:exception","queue_time":655726,"attempt":2,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:50:23.947 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766307023947555448,"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"]} 08:50:23.947 [debug] QUERY OK source="media_items" db=0.1ms idle=1007.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" = ?) [2241] 08:50:23.948 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:50:23.948 [debug] QUERY OK source="sources" db=0.3ms idle=954.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" = ?) [4] 08:50:23.948 [debug] QUERY OK source="media_profiles" db=0.1ms idle=954.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] 08:50:23.949 [debug] QUERY OK source="media_items" db=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 [2241] 08:50:23.949 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [2241] 08:50:23.949 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:50:23.950 [debug] QUERY OK source="settings" db=0.1ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:23.950 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:23.950 [debug] Running yt-dlp command for action: get_downloadable_status 08:50:23.950 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:23.950 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:23.950 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:23.950 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f5/9d/f59d5d13b72a0fe2e1a8a9422118f5e6ac2e0bb589a1906fcbde6fe0b72b29b7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:50:26.104 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/f5/9d/f59d5d13b72a0fe2e1a8a9422118f5e6ac2e0bb589a1906fcbde6fe0b72b29b7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 08:50:26.104 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 08:50:26.105 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2157030,"event":"job:exception","queue_time":807082,"attempt":3,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:50:29.567 [info] {"source":"oban","duration":674,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:50:51.976 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766307051976385621,"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"]} 08:50:51.976 [debug] QUERY OK source="media_items" db=0.3ms idle=982.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" = ?) [2241] 08:50:51.977 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:50:51.977 [debug] QUERY OK source="sources" db=0.1ms idle=983.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" = ?) [4] 08:50:51.977 [debug] QUERY OK source="media_profiles" db=0.1ms idle=983.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] 08:50:51.977 [debug] QUERY OK source="media_items" db=0.1ms 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 [2241] 08:50:51.978 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [2241] 08:50:51.978 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:50:51.978 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:51.979 [debug] QUERY OK source="settings" db=0.2ms 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 [] 08:50:51.979 [debug] Running yt-dlp command for action: get_downloadable_status 08:50:51.979 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:51.979 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:51.979 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:50:51.979 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/64/75/64752ea43e6bf1fe57a8b06ae4de719b96dc835ebea59df80ff596ed359bf0e6.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:50:54.616 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/64/75/64752ea43e6bf1fe57a8b06ae4de719b96dc835ebea59df80ff596ed359bf0e6.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 08:50:54.617 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 08:50:54.617 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2640888,"event":"job:exception","queue_time":871206,"attempt":4,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:50:59.569 [info] {"source":"oban","duration":684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:51:00.989 [info] {"source":"oban","duration":80,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:51:27.011 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766307087011621648,"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"]} 08:51:27.012 [debug] QUERY OK source="media_items" db=0.1ms idle=1017.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" = ?) [2241] 08:51:27.012 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:51:27.012 [debug] QUERY OK source="sources" db=0.1ms idle=1008.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" = ?) [4] 08:51:27.012 [debug] QUERY OK source="media_profiles" db=0.0ms idle=18.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] 08:51:27.013 [debug] QUERY OK source="media_items" db=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 [2241] 08:51:27.013 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [2241] 08:51:27.013 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:51:27.014 [debug] QUERY OK source="settings" db=0.1ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:51:27.014 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:51:27.014 [debug] Running yt-dlp command for action: get_downloadable_status 08:51:27.014 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:51:27.014 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:51:27.014 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:51:27.015 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/8f/1f/8f1fab271a28c0cea272c1ebc6dca2b44557a005e790abb1773e9069dcb8c2a7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:51:29.312 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/8f/1f/8f1fab271a28c0cea272c1ebc6dca2b44557a005e790abb1773e9069dcb8c2a7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 08:51:29.312 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 08:51:29.313 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2301227,"event":"job:exception","queue_time":393582,"attempt":5,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:51:29.570 [info] {"source":"oban","duration":705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:51:59.571 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:52:00.990 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:52:20.065 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766307140065590441,"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"]} 08:52:20.066 [debug] QUERY OK source="media_items" db=0.1ms idle=1072.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" = ?) [2241] 08:52:20.066 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:52:20.066 [debug] QUERY OK source="sources" db=0.1ms idle=1007.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] 08:52:20.066 [debug] QUERY OK source="media_profiles" db=0.0ms idle=72.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] 08:52:20.067 [debug] QUERY OK source="media_items" db=0.1ms idle=7.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 [2241] 08:52:20.067 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [2241] 08:52:20.067 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:52:20.067 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:52:20.068 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:52:20.068 [debug] Running yt-dlp command for action: get_downloadable_status 08:52:20.068 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:52:20.068 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:52:20.068 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:52:20.068 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/d4/10/d410c492b6b337fd45160920087a8cfb6877ced70144e341451e860ea42f8920.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:52:22.126 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/d4/10/d410c492b6b337fd45160920087a8cfb6877ced70144e341451e860ea42f8920.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 08:52:22.126 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 08:52:22.127 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2060726,"event":"job:exception","queue_time":751993,"attempt":6,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:52:29.572 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:52:59.574 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:53:00.991 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:53:29.575 [info] {"source":"oban","duration":682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:53:41.147 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766307221147561302,"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"]} 08:53:41.148 [debug] QUERY OK source="media_items" db=0.3ms idle=1008.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" = ?) [2241] 08:53:41.148 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:53:41.148 [debug] QUERY OK source="sources" db=0.0ms idle=154.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] 08:53:41.148 [debug] QUERY OK source="media_profiles" db=0.0ms idle=154.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] 08:53:41.149 [debug] QUERY OK source="media_items" db=0.1ms 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 [2241] 08:53:41.149 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [2241] 08:53:41.149 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:53:41.149 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:53:41.149 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:53:41.150 [debug] Running yt-dlp command for action: get_downloadable_status 08:53:41.182 [debug] QUERY OK source="settings" db=0.0ms idle=33.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 [] 08:53:41.182 [debug] QUERY OK source="settings" db=0.1ms idle=32.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 [] 08:53:41.182 [debug] QUERY OK source="settings" db=0.0ms idle=32.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 [] 08:53:41.182 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/bf/5f/bf5ff15ae3af71922dc38a9c1536d699992e716360ec4af143ac2bd6d561451d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:53:43.543 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/bf/5f/bf5ff15ae3af71922dc38a9c1536d699992e716360ec4af143ac2bd6d561451d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 08:53:43.543 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 08:53:43.544 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2396426,"event":"job:exception","queue_time":20457,"attempt":7,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:53:59.576 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:54:00.992 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:54:29.577 [info] {"source":"oban","duration":793,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:54:59.578 [info] {"source":"oban","duration":885,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:55:00.993 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:55:29.580 [info] {"source":"oban","duration":858,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:55:59.582 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:56:00.994 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:56:14.302 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766307374302404975,"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"]} 08:56:14.303 [debug] QUERY OK source="media_items" db=0.2ms idle=1308.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" = ?) [2241] 08:56:14.303 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:56:14.303 [debug] QUERY OK source="sources" db=0.1ms idle=1309.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] 08:56:14.303 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1008.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] 08:56:14.304 [debug] QUERY OK source="media_items" db=0.1ms 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 [2241] 08:56:14.304 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [2241] 08:56:14.304 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:56:14.304 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:56:14.305 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:56:14.305 [debug] Running yt-dlp command for action: get_downloadable_status 08:56:14.305 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:56:14.305 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:56:14.305 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:56:14.305 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/58/a0/58a0e983a1d152e16adafb82abacba2f9fd938099dcec438bcc6043aa9f1348d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:56:16.525 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/58/a0/58a0e983a1d152e16adafb82abacba2f9fd938099dcec438bcc6043aa9f1348d.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 08:56:16.525 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 08:56:16.526 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2223608,"event":"job:exception","queue_time":757781,"attempt":8,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:56:29.583 [info] {"source":"oban","duration":676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:56:59.584 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":1} 08:57:00.995 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:57:29.586 [info] {"source":"oban","duration":808,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:57:59.587 [info] {"source":"oban","duration":617,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:58:00.996 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:58:29.588 [info] {"source":"oban","duration":725,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:58:59.589 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:59:00.997 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:59:29.590 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:59:59.591 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:00:00.998 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:00:29.592 [info] {"source":"oban","duration":402,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:00:51.581 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766307651581407498,"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"]} 09:00:51.581 [debug] QUERY OK source="media_items" db=0.2ms idle=587.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" = ?) [2241] 09:00:51.582 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:00:51.582 [debug] QUERY OK source="sources" db=0.1ms idle=588.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] 09:00:51.582 [debug] QUERY OK source="media_profiles" db=0.1ms idle=588.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:00:51.583 [debug] QUERY OK source="media_items" db=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 [2241] 09:00:51.583 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [2241] 09:00:51.583 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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:00:51.583 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:00:51.584 [debug] QUERY OK source="settings" db=0.1ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:00:51.584 [debug] Running yt-dlp command for action: get_downloadable_status 09:00:51.584 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:00:51.584 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:00:51.584 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:00:51.585 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/2d/23/2d23e196cf50f5611f01674a945597b8fb5a64de13c5a9bbaa4736ca7149ed73.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:00:53.795 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/2d/23/2d23e196cf50f5611f01674a945597b8fb5a64de13c5a9bbaa4736ca7149ed73.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 09:00:53.795 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 09:00:53.796 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2214686,"event":"job:exception","queue_time":54821,"attempt":9,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:00:59.593 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:01:00.999 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:01:29.594 [info] {"source":"oban","duration":732,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:01:59.595 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:02:01.000 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:02:29.596 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:02:59.597 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:03:00.001 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:03:29.599 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:03:59.600 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:04:00.002 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:04:29.601 [info] {"source":"oban","duration":712,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:04:59.602 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:05:00.003 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:05:29.603 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:05:59.605 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:06:00.004 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:06:29.607 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:06:59.608 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:07:00.005 [info] {"source":"oban","duration":257,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:07:29.609 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:07:59.610 [info] {"source":"oban","duration":736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:08:00.005 [info] {"source":"oban","duration":109,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:08:29.611 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:08:59.612 [info] {"source":"oban","duration":677,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:09:00.007 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:09:29.613 [info] {"source":"oban","duration":702,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:09:59.614 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:10:00.008 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:10:21.153 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766308221153433000,"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"]} 09:10:21.154 [debug] QUERY OK source="media_items" db=0.2ms idle=159.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" = ?) [2241] 09:10:21.154 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:10:21.154 [debug] QUERY OK source="sources" db=0.0ms idle=160.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] 09:10:21.154 [debug] QUERY OK source="media_profiles" db=0.0ms idle=160.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:10:21.155 [debug] QUERY OK source="media_items" db=0.1ms 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 [2241] 09:10:21.155 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [2241] 09:10:21.155 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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:10:21.155 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:10:21.156 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:10:21.156 [debug] Running yt-dlp command for action: get_downloadable_status 09:10:21.156 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:10:21.156 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:10:21.156 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:10:21.156 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/83/bb/83bb898bd023738c64e6735495795a7d99f373caccdd52f6a85d82fc91affc6e.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:10:23.357 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/83/bb/83bb898bd023738c64e6735495795a7d99f373caccdd52f6a85d82fc91affc6e.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 09:10:23.357 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 09:10:23.358 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2204141,"event":"job:exception","queue_time":356690,"attempt":10,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:10:29.615 [info] {"source":"oban","duration":832,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:10:59.617 [info] {"source":"oban","duration":671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:11:00.009 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:11:29.618 [info] {"source":"oban","duration":846,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:11:59.620 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:12:00.010 [info] {"source":"oban","duration":235,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:12:29.622 [info] {"source":"oban","duration":767,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:12:59.624 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:13:00.011 [info] {"source":"oban","duration":232,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:13:29.625 [info] {"source":"oban","duration":665,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:13:59.626 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:14:00.012 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:14:29.627 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:14:59.628 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:15:00.013 [info] {"source":"oban","duration":210,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:15:29.629 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:15:59.630 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:16:00.014 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:16:29.631 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:16:59.632 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:17:00.015 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:17:29.633 [info] {"source":"oban","duration":450,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:17:59.634 [info] {"source":"oban","duration":401,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:18:00.016 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:18:29.635 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:18:59.636 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:19:00.017 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:19:29.637 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:19:59.638 [info] {"source":"oban","duration":660,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:20:00.018 [info] {"source":"oban","duration":226,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:20:29.639 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:20:51.791 [info] {"args":{"id":3},"id":2336,"meta":{},"system_time":1766308851791387088,"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:20:51.791 [debug] QUERY OK source="sources" db=0.1ms idle=797.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] 09:20:51.792 [debug] QUERY OK source="settings" db=0.1ms idle=797.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:20:51.793 [debug] QUERY OK source="media_items" db=1.1ms idle=798.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")))) [3] 09:20:51.793 [debug] QUERY OK source="media_items" db=0.2ms idle=7.6ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [3] 09:20:51.793 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 09:20:51.794 [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:20:51.794 [debug] QUERY OK source="settings" db=0.1ms idle=2.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:20:51.795 [debug] QUERY OK source="media_items" db=0.7ms idle=1.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."source_id" = ?) ORDER BY m0."uploaded_at" DESC LIMIT 50 OFFSET 20 [3] 09:20:51.796 [debug] Running yt-dlp command for action: get_media_attributes_for_collection 09:20:51.796 [debug] Current batch of media processed. Will check again in 1000ms 09:20:51.796 [debug] QUERY OK source="settings" db=0.1ms idle=2.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:20:51.796 [debug] QUERY OK source="settings" db=0.0ms idle=2.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:20:51.796 [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:20:51.796 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/@%EC%96%B4%ED%8D%BC%EC%BB%B7 --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/어퍼컷Tube/%(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/50/f8/50f83c46f61dc018d40ca196c6969ce7610f277e30487fde36155197fb5eeb3e.txt --print-to-file %(.{id,title,live_status,original_url,description,aspect_ratio,duration,upload_date,timestamp,playlist_index,filename})j /tmp/pinchflat/data/44/f4/44f4d3229cb79ed80bfe932a6df143143c0c358dfb24897552ddd5989bb954f5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:20:52.797 [debug] Current batch of media processed. Will check again in 1000ms 09:20:53.798 [debug] Current batch of media processed. Will check again in 1000ms 09:20:54.798 [debug] Current batch of media processed. Will check again in 1000ms 09:20:55.800 [debug] Current batch of media processed. Will check again in 1000ms 09:20:56.800 [debug] Current batch of media processed. Will check again in 1000ms 09:20:57.802 [debug] Current batch of media processed. Will check again in 1000ms 09:20:58.803 [debug] Current batch of media processed. Will check again in 1000ms 09:20:59.640 [info] {"source":"oban","duration":702,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:20:59.804 [debug] Current batch of media processed. Will check again in 1000ms 09:21:00.019 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:21:00.804 [debug] Current batch of media processed. Will check again in 1000ms 09:21:01.806 [debug] Current batch of media processed. Will check again in 1000ms 09:21:02.807 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "*25년 12월 15일 저작권 하락을 받은 영상입니다\n00:00 BMS 시즌2 1-3화\n33:42 BMS 시즌2 4-5화\n52:44 BMS 시즌2 6-13화\n\n블루 마운틴 스테이트 시즌2 몰아보기 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 6751, "filename" => "/downloads/어퍼컷Tube/2025-12-20 넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 "무삭제로 수입할" 엄두를 못내는 중/넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 "무삭제로 수입할" 엄두를 못내는 중 [yJN1beCWTtY].mp4", "id" => "yJN1beCWTtY", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=yJN1beCWTtY", "playlist_index" => 1, "timestamp" => 1766224904, "title" => "넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 \"무삭제로 수입할\" 엄두를 못내는 중", "upload_date" => "20251220"} 09:21:02.807 [debug] QUERY OK source="sources" db=0.1ms idle=1813.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 (?)) [3] 09:21:02.807 [debug] QUERY OK source="sources" db=0.1ms idle=1813.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] 09:21:02.808 [debug] QUERY OK source="media_items" db=0.8ms idle=1012.2ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-20 10:01:44Z], 3] 09:21:02.809 [debug] QUERY OK source="media_items" db=0.4ms idle=814.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["*25년 12월 15일 저작권 하락을 받은 영상입니다\n00:00 BMS 시즌2 1-3화\n33:42 BMS 시즌2 4-5화\n52:44 BMS 시즌2 6-13화\n\n블루 마운틴 스테이트 시즌2 몰아보기 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 \"무삭제로 수입할\" 엄두를 못내는 중", "c8ce9e06-04a2-4753-95e1-64f0803f9611", false, 6751, false, "yJN1beCWTtY", "https://www.youtube.com/watch?v=yJN1beCWTtY", 1, "/downloads/어퍼컷Tube/2025-12-20 넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 "무삭제로 수입할" 엄두를 못내는 중/넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 "무삭제로 수입할" 엄두를 못내는 중 [yJN1beCWTtY].mp4", false, false, 3, [], 99, ~U[2025-12-20 10:01:44Z], ~U[2025-12-21 09:21:02Z], ~U[2025-12-21 09:21:02Z], "*25년 12월 15일 저작권 하락을 받은 영상입니다\n00:00 BMS 시즌2 1-3화\n33:42 BMS 시즌2 4-5화\n52:44 BMS 시즌2 6-13화\n\n블루 마운틴 스테이트 시즌2 몰아보기 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 \"무삭제로 수입할\" 엄두를 못내는 중", 6751, false, "yJN1beCWTtY", "https://www.youtube.com/watch?v=yJN1beCWTtY", "/downloads/어퍼컷Tube/2025-12-20 넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 "무삭제로 수입할" 엄두를 못내는 중/넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 "무삭제로 수입할" 엄두를 못내는 중 [yJN1beCWTtY].mp4", false, 3, ~U[2025-12-20 10:01:44Z]] 09:21:02.809 [debug] QUERY OK source="sources" db=0.0ms idle=13.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" = ?) [3] 09:21:02.809 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:02.810 [debug] QUERY OK source="media_items" db=0.2ms idle=2.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 [10322] 09:21:02.810 [info] Kicking off download for media item #10322 (yJN1beCWTtY) 09:21:02.810 [debug] Current batch of media processed. Will check again in 1000ms 09:21:03.811 [debug] Current batch of media processed. Will check again in 1000ms 09:21:04.813 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "《She Rides Shotgun》은 아마존 프라임에서\nIP 우회후 (미국) 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 3838, "filename" => "/downloads/어퍼컷Tube/2025-12-17 태런 에저튼의 감동적인 2025년 신작 영화/태런 에저튼의 감동적인 2025년 신작 영화 [a7io4HCXsew].NA", "id" => "a7io4HCXsew", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=a7io4HCXsew", "playlist_index" => 2, "timestamp" => 1765987928, "title" => "태런 에저튼의 감동적인 2025년 신작 영화", "upload_date" => "20251217"} 09:21:04.813 [debug] QUERY OK source="sources" db=0.2ms idle=819.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 (?)) [3] 09:21:04.813 [debug] QUERY OK source="sources" db=0.1ms idle=819.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] 09:21:04.814 [debug] QUERY OK source="media_items" db=0.8ms idle=819.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 16:12:08Z], 3] 09:21:04.815 [debug] QUERY OK source="media_items" db=0.4ms idle=820.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["《She Rides Shotgun》은 아마존 프라임에서\nIP 우회후 (미국) 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "태런 에저튼의 감동적인 2025년 신작 영화", "db74599c-fa49-439a-a556-788d78562865", false, 3838, false, "a7io4HCXsew", "https://www.youtube.com/watch?v=a7io4HCXsew", 2, "/downloads/어퍼컷Tube/2025-12-17 태런 에저튼의 감동적인 2025년 신작 영화/태런 에저튼의 감동적인 2025년 신작 영화 [a7io4HCXsew].NA", false, false, 3, [], 97, ~U[2025-12-17 16:12:08Z], ~U[2025-12-21 09:21:04Z], ~U[2025-12-21 09:21:04Z], "《She Rides Shotgun》은 아마존 프라임에서\nIP 우회후 (미국) 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "태런 에저튼의 감동적인 2025년 신작 영화", 3838, false, "a7io4HCXsew", "https://www.youtube.com/watch?v=a7io4HCXsew", "/downloads/어퍼컷Tube/2025-12-17 태런 에저튼의 감동적인 2025년 신작 영화/태런 에저튼의 감동적인 2025년 신작 영화 [a7io4HCXsew].NA", false, 3, ~U[2025-12-17 16:12:08Z]] 09:21:04.815 [debug] QUERY OK source="sources" db=0.1ms idle=16.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" = ?) [3] 09:21:04.815 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:04.816 [debug] QUERY OK source="media_items" db=0.3ms idle=2.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 [10622] 09:21:04.816 [info] Kicking off download for media item #10622 (a7io4HCXsew) 09:21:04.816 [debug] Current batch of media processed. Will check again in 1000ms 09:21:05.818 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "《폴아웃》 시즌2 1화 요약입니다\n아마존 프라임에서 풀버전 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 1500, "filename" => "/downloads/어퍼컷Tube/2025-12-17 《폴아웃》 시즌2 떳다!!!!!/《폴아웃》 시즌2 떳다!!!!! [nfuQQigzNu0].NA", "id" => "nfuQQigzNu0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=nfuQQigzNu0", "playlist_index" => 3, "timestamp" => 1766011432, "title" => "《폴아웃》 시즌2 떳다!!!!!", "upload_date" => "20251217"} 09:21:05.818 [debug] QUERY OK source="sources" db=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 (?)) [3] 09:21:05.818 [debug] QUERY OK source="sources" db=0.1ms 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" = ?) [3] 09:21:05.819 [debug] QUERY OK source="media_items" db=0.8ms idle=1002.5ms 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 22:43:52Z], 3] 09:21:05.820 [debug] QUERY OK source="media_items" db=0.4ms idle=1003.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["《폴아웃》 시즌2 1화 요약입니다\n아마존 프라임에서 풀버전 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "《폴아웃》 시즌2 떳다!!!!!", "2a9c0b10-bee6-4dc1-8163-1f8d56848d32", false, 1500, false, "nfuQQigzNu0", "https://www.youtube.com/watch?v=nfuQQigzNu0", 3, "/downloads/어퍼컷Tube/2025-12-17 《폴아웃》 시즌2 떳다!!!!!/《폴아웃》 시즌2 떳다!!!!! [nfuQQigzNu0].NA", false, false, 3, [], 97, ~U[2025-12-17 22:43:52Z], ~U[2025-12-21 09:21:05Z], ~U[2025-12-21 09:21:05Z], "《폴아웃》 시즌2 1화 요약입니다\n아마존 프라임에서 풀버전 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "《폴아웃》 시즌2 떳다!!!!!", 1500, false, "nfuQQigzNu0", "https://www.youtube.com/watch?v=nfuQQigzNu0", "/downloads/어퍼컷Tube/2025-12-17 《폴아웃》 시즌2 떳다!!!!!/《폴아웃》 시즌2 떳다!!!!! [nfuQQigzNu0].NA", false, 3, ~U[2025-12-17 22:43:52Z]] 09:21:05.820 [debug] QUERY OK source="sources" db=0.1ms idle=21.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" = ?) [3] 09:21:05.821 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 09:21:05.821 [debug] QUERY OK source="media_items" db=0.1ms 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 [10623] 09:21:05.821 [info] Kicking off download for media item #10623 (nfuQQigzNu0) 09:21:05.822 [debug] Current batch of media processed. Will check again in 1000ms 09:21:06.822 [debug] Current batch of media processed. Will check again in 1000ms 09:21:07.824 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "*25년 10월 31일 TF1 (TV Content), NBC Universal로 부터\n저작권 허락 및 화이트리스트 완료된 영상입니다\n\n#포커페이스 #왓챠 #어퍼컷tube \n《포커페이스》 시즌1 4화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 1916, "filename" => "/downloads/어퍼컷Tube/2025-12-19 이거 완전 미국판 "명탐정 코난" 아니냐???/이거 완전 미국판 "명탐정 코난" 아니냐??? [HQSu9OTMLJo].mkv", "id" => "HQSu9OTMLJo", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=HQSu9OTMLJo", "playlist_index" => 4, "timestamp" => 1766141834, "title" => "이거 완전 미국판 \"명탐정 코난\" 아니냐???", "upload_date" => "20251219"} 09:21:07.824 [debug] QUERY OK source="sources" db=0.1ms idle=830.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 (?)) [3] 09:21:07.824 [debug] QUERY OK source="sources" db=0.1ms idle=830.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" = ?) [3] 09:21:07.825 [debug] QUERY OK source="media_items" db=0.8ms idle=830.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-19 10:57:14Z], 3] 09:21:07.826 [debug] QUERY OK source="media_items" db=0.4ms idle=832.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["*25년 10월 31일 TF1 (TV Content), NBC Universal로 부터\n저작권 허락 및 화이트리스트 완료된 영상입니다\n\n#포커페이스 #왓챠 #어퍼컷tube \n《포커페이스》 시즌1 4화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "이거 완전 미국판 \"명탐정 코난\" 아니냐???", "6efb1005-91dc-440c-acbd-1f5af9ac8284", false, 1916, false, "HQSu9OTMLJo", "https://www.youtube.com/watch?v=HQSu9OTMLJo", 4, "/downloads/어퍼컷Tube/2025-12-19 이거 완전 미국판 "명탐정 코난" 아니냐???/이거 완전 미국판 "명탐정 코난" 아니냐??? [HQSu9OTMLJo].mkv", false, false, 3, [], 98, ~U[2025-12-19 10:57:14Z], ~U[2025-12-21 09:21:07Z], ~U[2025-12-21 09:21:07Z], "*25년 10월 31일 TF1 (TV Content), NBC Universal로 부터\n저작권 허락 및 화이트리스트 완료된 영상입니다\n\n#포커페이스 #왓챠 #어퍼컷tube \n《포커페이스》 시즌1 4화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "이거 완전 미국판 \"명탐정 코난\" 아니냐???", 1916, false, "HQSu9OTMLJo", "https://www.youtube.com/watch?v=HQSu9OTMLJo", "/downloads/어퍼컷Tube/2025-12-19 이거 완전 미국판 "명탐정 코난" 아니냐???/이거 완전 미국판 "명탐정 코난" 아니냐??? [HQSu9OTMLJo].mkv", false, 3, ~U[2025-12-19 10:57:14Z]] 09:21:07.826 [debug] QUERY OK source="sources" db=0.0ms idle=25.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" = ?) [3] 09:21:07.826 [debug] QUERY OK source="media_profiles" db=0.0ms idle=2.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:07.827 [debug] QUERY OK source="media_items" db=0.2ms idle=2.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 [7085] 09:21:07.827 [info] Kicking off download for media item #7085 (HQSu9OTMLJo) 09:21:07.827 [debug] Current batch of media processed. Will check again in 1000ms 09:21:08.828 [debug] Current batch of media processed. Will check again in 1000ms 09:21:09.830 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "*25년 12월 13일 저작권 허락을 받은 영상입니다\n#비키퍼 #제이슨스타뎀 #어퍼컷Tube \n《비키퍼》는 개별구매를 통해 풀버전 시청 가능합니다\n출처: paramount+\n\n구매 링크\nhttps://www.youtube.com/watch?v=HhNdMrq-Xc0\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 3000, "filename" => "/downloads/어퍼컷Tube/2025-12-16 하필이면... 어쩌고...전직 특수부대..#/하필이면... 어쩌고...전직 특수부대... [fXRP8h5joq0].mkv", "id" => "fXRP8h5joq0", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=fXRP8h5joq0", "playlist_index" => 5, "timestamp" => 1765879271, "title" => "하필이면... 어쩌고...전직 특수부대...", "upload_date" => "20251216"} 09:21:09.830 [debug] QUERY OK source="sources" db=0.1ms idle=836.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 (?)) [3] 09:21:09.830 [debug] QUERY OK source="sources" db=0.1ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:09.831 [debug] QUERY OK source="media_items" db=0.7ms idle=836.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-16 10:01:11Z], 3] 09:21:09.832 [debug] QUERY OK source="media_items" db=0.4ms idle=837.8ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["*25년 12월 13일 저작권 허락을 받은 영상입니다\n#비키퍼 #제이슨스타뎀 #어퍼컷Tube \n《비키퍼》는 개별구매를 통해 풀버전 시청 가능합니다\n출처: paramount+\n\n구매 링크\nhttps://www.youtube.com/watch?v=HhNdMrq-Xc0\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "하필이면... 어쩌고...전직 특수부대...", "31169fd7-f895-4865-8967-42cbc1399650", false, 3000, false, "fXRP8h5joq0", "https://www.youtube.com/watch?v=fXRP8h5joq0", 5, "/downloads/어퍼컷Tube/2025-12-16 하필이면... 어쩌고...전직 특수부대..#/하필이면... 어쩌고...전직 특수부대... [fXRP8h5joq0].mkv", false, false, 3, [], 96, ~U[2025-12-16 10:01:11Z], ~U[2025-12-21 09:21:09Z], ~U[2025-12-21 09:21:09Z], "*25년 12월 13일 저작권 허락을 받은 영상입니다\n#비키퍼 #제이슨스타뎀 #어퍼컷Tube \n《비키퍼》는 개별구매를 통해 풀버전 시청 가능합니다\n출처: paramount+\n\n구매 링크\nhttps://www.youtube.com/watch?v=HhNdMrq-Xc0\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "하필이면... 어쩌고...전직 특수부대...", 3000, false, "fXRP8h5joq0", "https://www.youtube.com/watch?v=fXRP8h5joq0", "/downloads/어퍼컷Tube/2025-12-16 하필이면... 어쩌고...전직 특수부대..#/하필이면... 어쩌고...전직 특수부대... [fXRP8h5joq0].mkv", false, 3, ~U[2025-12-16 10:01:11Z]] 09:21:09.832 [debug] QUERY OK source="sources" db=0.0ms idle=29.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:09.832 [debug] QUERY OK source="media_profiles" db=0.0ms idle=2.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:09.833 [debug] QUERY OK source="media_items" db=0.1ms 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 [10168] 09:21:09.833 [debug] Current batch of media processed. Will check again in 1000ms 09:21:10.834 [debug] Current batch of media processed. Will check again in 1000ms 09:21:11.835 [debug] Current batch of media processed. Will check again in 1000ms 09:21:12.836 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "*25년 12월 13일 A24로 부터 저작권 허락을 받았습니다\n영화 《워페어》 몰아보기 영상입니다\n아마존 프라임에서 시청 가능합니다\n출처: A24\n#워페어 #전쟁영화 #어퍼컷tube \n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 2268, "filename" => "/downloads/어퍼컷Tube/2025-12-13 진존잼/진존잼 [B6z-oqn5EA8].mkv", "id" => "B6z-oqn5EA8", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=B6z-oqn5EA8", "playlist_index" => 6, "timestamp" => 1765620014, "title" => "진존잼", "upload_date" => "20251213"} 09:21:12.836 [debug] QUERY OK source="sources" db=0.1ms idle=1842.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 (?)) [3] 09:21:12.836 [debug] QUERY OK source="sources" db=0.1ms idle=1842.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] 09:21:12.837 [debug] QUERY OK source="media_items" db=0.7ms idle=1842.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-13 10:00:14Z], 3] 09:21:12.838 [debug] QUERY OK source="media_items" db=0.4ms idle=1032.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["*25년 12월 13일 A24로 부터 저작권 허락을 받았습니다\n영화 《워페어》 몰아보기 영상입니다\n아마존 프라임에서 시청 가능합니다\n출처: A24\n#워페어 #전쟁영화 #어퍼컷tube \n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "진존잼", "6f4f8d55-4a2b-4380-b824-f688f1d0a03c", false, 2268, false, "B6z-oqn5EA8", "https://www.youtube.com/watch?v=B6z-oqn5EA8", 6, "/downloads/어퍼컷Tube/2025-12-13 진존잼/진존잼 [B6z-oqn5EA8].mkv", false, false, 3, [], 98, ~U[2025-12-13 10:00:14Z], ~U[2025-12-21 09:21:12Z], ~U[2025-12-21 09:21:12Z], "*25년 12월 13일 A24로 부터 저작권 허락을 받았습니다\n영화 《워페어》 몰아보기 영상입니다\n아마존 프라임에서 시청 가능합니다\n출처: A24\n#워페어 #전쟁영화 #어퍼컷tube \n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "진존잼", 2268, false, "B6z-oqn5EA8", "https://www.youtube.com/watch?v=B6z-oqn5EA8", "/downloads/어퍼컷Tube/2025-12-13 진존잼/진존잼 [B6z-oqn5EA8].mkv", false, 3, ~U[2025-12-13 10:00:14Z]] 09:21:12.838 [debug] QUERY OK source="sources" db=0.0ms idle=31.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" = ?) [3] 09:21:12.838 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:12.839 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [10169] 09:21:12.839 [debug] Current batch of media processed. Will check again in 1000ms 09:21:13.839 [debug] Current batch of media processed. Will check again in 1000ms 09:21:14.841 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "* 25년 12월 9일 저작권 허락을 받은 영상입니다\n\n00:00 BMS 시즌2 1-3화\n33:42 BMS 시즌2 4-5화\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 3169, "filename" => "/downloads/어퍼컷Tube/2025-12-12 미국 성인 시트콤, 거실에서 클릭하지마세요/미국 성인 시트콤, 거실에서 클릭하지마세요 [B45ULdgSCuI].mp4", "id" => "B45ULdgSCuI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=B45ULdgSCuI", "playlist_index" => 7, "timestamp" => 1765533618, "title" => "미국 성인 시트콤, 거실에서 클릭하지마세요", "upload_date" => "20251212"} 09:21:14.841 [debug] QUERY OK source="sources" db=0.2ms idle=847.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 (?)) [3] 09:21:14.842 [debug] QUERY OK source="sources" db=0.1ms idle=847.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" = ?) [3] 09:21:14.843 [debug] QUERY OK source="media_items" db=0.8ms idle=848.2ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-12 10:00:18Z], 3] 09:21:14.843 [debug] QUERY OK source="media_items" db=0.4ms idle=849.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["* 25년 12월 9일 저작권 허락을 받은 영상입니다\n\n00:00 BMS 시즌2 1-3화\n33:42 BMS 시즌2 4-5화\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "미국 성인 시트콤, 거실에서 클릭하지마세요", "297170a2-820b-4d1d-920c-c6907529b92b", false, 3169, false, "B45ULdgSCuI", "https://www.youtube.com/watch?v=B45ULdgSCuI", 7, "/downloads/어퍼컷Tube/2025-12-12 미국 성인 시트콤, 거실에서 클릭하지마세요/미국 성인 시트콤, 거실에서 클릭하지마세요 [B45ULdgSCuI].mp4", false, false, 3, [], 97, ~U[2025-12-12 10:00:18Z], ~U[2025-12-21 09:21:14Z], ~U[2025-12-21 09:21:14Z], "* 25년 12월 9일 저작권 허락을 받은 영상입니다\n\n00:00 BMS 시즌2 1-3화\n33:42 BMS 시즌2 4-5화\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "미국 성인 시트콤, 거실에서 클릭하지마세요", 3169, false, "B45ULdgSCuI", "https://www.youtube.com/watch?v=B45ULdgSCuI", "/downloads/어퍼컷Tube/2025-12-12 미국 성인 시트콤, 거실에서 클릭하지마세요/미국 성인 시트콤, 거실에서 클릭하지마세요 [B45ULdgSCuI].mp4", false, 3, ~U[2025-12-12 10:00:18Z]] 09:21:14.843 [debug] QUERY OK source="sources" db=0.1ms idle=35.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" = ?) [3] 09:21:14.844 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:14.844 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [9870] 09:21:14.844 [debug] Current batch of media processed. Will check again in 1000ms 09:21:15.844 [debug] Current batch of media processed. Will check again in 1000ms 09:21:16.845 [debug] Current batch of media processed. Will check again in 1000ms 09:21:17.847 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "00:00 시작\n00:34 10. 탁류\n01:42 9. 터미널리스트: 다크 울프\n02:34 8. 은중과 상연\n03:59 7. 더 스튜디오\n04:49 6. 테스크\n05:34 5. 슬로 호시스\n06:04 4. 루드 비히: 퍼즐로 푸는 진실\n06:48 3. 소년의 시간\n07:36 2. 더 피트\n08:40 1. 덱스터: 레저렉션\n\n*영상속 모든 예고편은 IMDB에서 가져왔습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 683, "filename" => "/downloads/어퍼컷Tube/2025-12-10 벌써 제7회 2025년 "최고의 드라마 TOP 10"/벌써 제7회 2025년 "최고의 드라마 TOP 10" [5UzZ9QuhTUo].mp4", "id" => "5UzZ9QuhTUo", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=5UzZ9QuhTUo", "playlist_index" => 8, "timestamp" => 1765360815, "title" => "벌써 제7회 2025년 \"최고의 드라마 TOP 10\"", "upload_date" => "20251210"} 09:21:17.847 [debug] QUERY OK source="sources" db=0.2ms idle=1853.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 (?)) [3] 09:21:17.847 [debug] QUERY OK source="sources" db=0.1ms idle=1853.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] 09:21:17.848 [debug] QUERY OK source="media_items" db=0.7ms idle=1854.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-10 10:00:15Z], 3] 09:21:17.849 [debug] QUERY OK source="media_items" db=0.4ms idle=1038.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["00:00 시작\n00:34 10. 탁류\n01:42 9. 터미널리스트: 다크 울프\n02:34 8. 은중과 상연\n03:59 7. 더 스튜디오\n04:49 6. 테스크\n05:34 5. 슬로 호시스\n06:04 4. 루드 비히: 퍼즐로 푸는 진실\n06:48 3. 소년의 시간\n07:36 2. 더 피트\n08:40 1. 덱스터: 레저렉션\n\n*영상속 모든 예고편은 IMDB에서 가져왔습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "벌써 제7회 2025년 \"최고의 드라마 TOP 10\"", "e0cc3e15-33ab-4598-9a6b-15f3eb4d34c9", false, 683, false, "5UzZ9QuhTUo", "https://www.youtube.com/watch?v=5UzZ9QuhTUo", 8, "/downloads/어퍼컷Tube/2025-12-10 벌써 제7회 2025년 "최고의 드라마 TOP 10"/벌써 제7회 2025년 "최고의 드라마 TOP 10" [5UzZ9QuhTUo].mp4", false, false, 3, [], 98, ~U[2025-12-10 10:00:15Z], ~U[2025-12-21 09:21:17Z], ~U[2025-12-21 09:21:17Z], "00:00 시작\n00:34 10. 탁류\n01:42 9. 터미널리스트: 다크 울프\n02:34 8. 은중과 상연\n03:59 7. 더 스튜디오\n04:49 6. 테스크\n05:34 5. 슬로 호시스\n06:04 4. 루드 비히: 퍼즐로 푸는 진실\n06:48 3. 소년의 시간\n07:36 2. 더 피트\n08:40 1. 덱스터: 레저렉션\n\n*영상속 모든 예고편은 IMDB에서 가져왔습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "벌써 제7회 2025년 \"최고의 드라마 TOP 10\"", 683, false, "5UzZ9QuhTUo", "https://www.youtube.com/watch?v=5UzZ9QuhTUo", "/downloads/어퍼컷Tube/2025-12-10 벌써 제7회 2025년 "최고의 드라마 TOP 10"/벌써 제7회 2025년 "최고의 드라마 TOP 10" [5UzZ9QuhTUo].mp4", false, 3, ~U[2025-12-10 10:00:15Z]] 09:21:17.849 [debug] QUERY OK source="sources" db=0.0ms idle=38.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" = ?) [3] 09:21:17.850 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:17.850 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [9790] 09:21:17.850 [debug] Current batch of media processed. Will check again in 1000ms 09:21:18.851 [debug] Current batch of media processed. Will check again in 1000ms 09:21:19.852 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 1.78, "description" => "00:00 시작\n00:26 1, 언제 합병 되나?\n01:40 2, 합병이 된다면?\n03:03 3, 과연 나쁜 일일까?\n\n출처\n-넷플관련 기사 및 입장문\nabout.netflix.com\n-영화 및 시리즈 트레일러\nIMDB\n-discussingfilm계정 및 넷플릭스 공직 계정\n쓰레드.com\n-가보자G0 화면\nMBN 유튜브\n- 포스터및 로고\nthemoviedb.com\n- 반독점법 관련 기사\n한국일보\n그 외 이미지는 AI로 생성하였습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 305, "filename" => "/downloads/어퍼컷Tube/2025-12-06 영화 산업의 끝일까 새로운 시대의 시작일까?/영화 산업의 끝일까 새로운 시대의 시작일까? [APpAwdDTuKg].mp4", "id" => "APpAwdDTuKg", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=APpAwdDTuKg", "playlist_index" => 9, "timestamp" => 1764981790, "title" => "영화 산업의 끝일까 새로운 시대의 시작일까?", "upload_date" => "20251206"} 09:21:19.852 [debug] QUERY OK source="sources" db=0.1ms idle=858.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 (?)) [3] 09:21:19.852 [debug] QUERY OK source="sources" db=0.1ms idle=858.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] 09:21:19.853 [debug] QUERY OK source="media_items" db=0.9ms idle=858.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-06 00:43:10Z], 3] 09:21:19.857 [debug] QUERY OK source="media_items" db=3.5ms idle=860.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["00:00 시작\n00:26 1, 언제 합병 되나?\n01:40 2, 합병이 된다면?\n03:03 3, 과연 나쁜 일일까?\n\n출처\n-넷플관련 기사 및 입장문\nabout.netflix.com\n-영화 및 시리즈 트레일러\nIMDB\n-discussingfilm계정 및 넷플릭스 공직 계정\n쓰레드.com\n-가보자G0 화면\nMBN 유튜브\n- 포스터및 로고\nthemoviedb.com\n- 반독점법 관련 기사\n한국일보\n그 외 이미지는 AI로 생성하였습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "영화 산업의 끝일까 새로운 시대의 시작일까?", "84f6d5e4-7670-453c-9ffb-19a7a6ad4449", false, 305, false, "APpAwdDTuKg", "https://www.youtube.com/watch?v=APpAwdDTuKg", 9, "/downloads/어퍼컷Tube/2025-12-06 영화 산업의 끝일까 새로운 시대의 시작일까?/영화 산업의 끝일까 새로운 시대의 시작일까? [APpAwdDTuKg].mp4", false, false, 3, [], 98, ~U[2025-12-06 00:43:10Z], ~U[2025-12-21 09:21:19Z], ~U[2025-12-21 09:21:19Z], "00:00 시작\n00:26 1, 언제 합병 되나?\n01:40 2, 합병이 된다면?\n03:03 3, 과연 나쁜 일일까?\n\n출처\n-넷플관련 기사 및 입장문\nabout.netflix.com\n-영화 및 시리즈 트레일러\nIMDB\n-discussingfilm계정 및 넷플릭스 공직 계정\n쓰레드.com\n-가보자G0 화면\nMBN 유튜브\n- 포스터및 로고\nthemoviedb.com\n- 반독점법 관련 기사\n한국일보\n그 외 이미지는 AI로 생성하였습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "영화 산업의 끝일까 새로운 시대의 시작일까?", 305, false, "APpAwdDTuKg", "https://www.youtube.com/watch?v=APpAwdDTuKg", "/downloads/어퍼컷Tube/2025-12-06 영화 산업의 끝일까 새로운 시대의 시작일까?/영화 산업의 끝일까 새로운 시대의 시작일까? [APpAwdDTuKg].mp4", false, 3, ~U[2025-12-06 00:43:10Z]] 09:21:19.858 [debug] QUERY OK source="sources" db=0.2ms idle=44.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" = ?) [3] 09:21:19.858 [debug] QUERY OK source="media_profiles" db=0.1ms 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] 09:21:19.858 [debug] QUERY OK source="media_items" db=0.1ms idle=5.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 [9564] 09:21:19.858 [debug] Current batch of media processed. Will check again in 1000ms 09:21:20.859 [debug] Current batch of media processed. Will check again in 1000ms 09:21:21.860 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "#장르영화 #본레이크 #어퍼컷Tube \n《본 레이크》는 개별 구매로 시청 가능합니다\n*25년 12월 5일 저작권 허락을 받은 영상입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 1519, "filename" => "/downloads/어퍼컷Tube/2025-12-05 또...또... 이상한 거 가져왔다...또/또...또... 이상한 거 가져왔다...또 [3Zvxifgt1Lk].mkv", "id" => "3Zvxifgt1Lk", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=3Zvxifgt1Lk", "playlist_index" => 10, "timestamp" => 1764931817, "title" => "또...또... 이상한 거 가져왔다...또", "upload_date" => "20251205"} 09:21:21.860 [debug] QUERY OK source="sources" db=0.2ms idle=866.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 (?)) [3] 09:21:21.861 [debug] QUERY OK source="sources" db=0.1ms idle=866.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" = ?) [3] 09:21:21.862 [debug] QUERY OK source="media_items" db=0.8ms idle=867.2ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-05 10:50:17Z], 3] 09:21:21.862 [debug] QUERY OK source="media_items" db=0.4ms idle=868.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["#장르영화 #본레이크 #어퍼컷Tube \n《본 레이크》는 개별 구매로 시청 가능합니다\n*25년 12월 5일 저작권 허락을 받은 영상입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "또...또... 이상한 거 가져왔다...또", "0ec464ef-42cd-4a36-84cf-76c26ededda2", false, 1519, false, "3Zvxifgt1Lk", "https://www.youtube.com/watch?v=3Zvxifgt1Lk", 10, "/downloads/어퍼컷Tube/2025-12-05 또...또... 이상한 거 가져왔다...또/또...또... 이상한 거 가져왔다...또 [3Zvxifgt1Lk].mkv", false, false, 3, [], 98, ~U[2025-12-05 10:50:17Z], ~U[2025-12-21 09:21:21Z], ~U[2025-12-21 09:21:21Z], "#장르영화 #본레이크 #어퍼컷Tube \n《본 레이크》는 개별 구매로 시청 가능합니다\n*25년 12월 5일 저작권 허락을 받은 영상입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "또...또... 이상한 거 가져왔다...또", 1519, false, "3Zvxifgt1Lk", "https://www.youtube.com/watch?v=3Zvxifgt1Lk", "/downloads/어퍼컷Tube/2025-12-05 또...또... 이상한 거 가져왔다...또/또...또... 이상한 거 가져왔다...또 [3Zvxifgt1Lk].mkv", false, 3, ~U[2025-12-05 10:50:17Z]] 09:21:21.862 [debug] QUERY OK source="sources" db=0.1ms idle=46.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" = ?) [3] 09:21:21.863 [debug] QUERY OK source="media_profiles" db=0.2ms idle=2.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:21.863 [debug] QUERY OK source="media_items" db=0.1ms 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 [9488] 09:21:21.863 [debug] Current batch of media processed. Will check again in 1000ms 09:21:22.864 [debug] Current batch of media processed. Will check again in 1000ms 09:21:23.866 [debug] FileFollowerServer Handler: Got media attributes: %{"description" => "어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 4813, "filename" => "/downloads/어퍼컷Tube/2025-11-28 영국을 혼란에 빠뜨린 정체불명의 테러 집단/영국을 혼란에 빠뜨린 정체불명의 테러 집단 [Q-t9X91skts].NA", "id" => "Q-t9X91skts", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Q-t9X91skts", "playlist_index" => 11, "timestamp" => 1764330613, "title" => "영국을 혼란에 빠뜨린 정체불명의 테러 집단", "upload_date" => "20251128"} 09:21:23.866 [debug] QUERY OK source="sources" db=0.1ms idle=872.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 (?)) [3] 09:21:23.867 [debug] QUERY OK source="sources" db=0.3ms idle=872.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" = ?) [3] 09:21:23.868 [debug] QUERY OK source="media_items" db=0.8ms idle=873.2ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-28 11:50:13Z], 3] 09:21:23.868 [debug] QUERY OK source="media_items" db=0.4ms idle=874.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "영국을 혼란에 빠뜨린 정체불명의 테러 집단", "0b706e65-4bc9-4922-956b-b1a0b60874d4", false, 4813, false, "Q-t9X91skts", "https://www.youtube.com/watch?v=Q-t9X91skts", 11, "/downloads/어퍼컷Tube/2025-11-28 영국을 혼란에 빠뜨린 정체불명의 테러 집단/영국을 혼란에 빠뜨린 정체불명의 테러 집단 [Q-t9X91skts].NA", false, false, 3, [], 97, ~U[2025-11-28 11:50:13Z], ~U[2025-12-21 09:21:23Z], ~U[2025-12-21 09:21:23Z], "어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "영국을 혼란에 빠뜨린 정체불명의 테러 집단", 4813, false, "Q-t9X91skts", "https://www.youtube.com/watch?v=Q-t9X91skts", "/downloads/어퍼컷Tube/2025-11-28 영국을 혼란에 빠뜨린 정체불명의 테러 집단/영국을 혼란에 빠뜨린 정체불명의 테러 집단 [Q-t9X91skts].NA", false, 3, ~U[2025-11-28 11:50:13Z]] 09:21:23.868 [debug] QUERY OK source="sources" db=0.1ms idle=50.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" = ?) [3] 09:21:23.869 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.5ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:23.869 [debug] QUERY OK source="media_items" db=0.1ms 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 [9042] 09:21:23.869 [info] Kicking off download for media item #9042 (Q-t9X91skts) 09:21:23.870 [debug] Current batch of media processed. Will check again in 1000ms 09:21:24.871 [debug] Current batch of media processed. Will check again in 1000ms 09:21:25.872 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "#슬로호시스 #애플티비 #어퍼컷tube \n《슬로 호시스》 시즌5 4화까지 요약입니다\n생략된 부분 많으니까 꼭 풀버전으로 시청하세요\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 1919, "filename" => "/downloads/어퍼컷Tube/2025-11-28 다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!!/다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!! [nBumn_zRL2g].mkv", "id" => "nBumn_zRL2g", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=nBumn_zRL2g", "playlist_index" => 12, "timestamp" => 1764320482, "title" => "다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!!", "upload_date" => "20251128"} 09:21:25.872 [debug] QUERY OK source="sources" db=0.1ms idle=878.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 (?)) [3] 09:21:25.872 [debug] QUERY OK source="sources" db=0.1ms idle=878.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" = ?) [3] 09:21:25.874 [debug] QUERY OK source="media_items" db=0.9ms idle=879.0ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-28 09:01:22Z], 3] 09:21:25.874 [debug] QUERY OK source="media_items" db=0.4ms idle=880.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["#슬로호시스 #애플티비 #어퍼컷tube \n《슬로 호시스》 시즌5 4화까지 요약입니다\n생략된 부분 많으니까 꼭 풀버전으로 시청하세요\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!!", "8ffca9f8-4735-4814-828b-012ecc2306f8", false, 1919, false, "nBumn_zRL2g", "https://www.youtube.com/watch?v=nBumn_zRL2g", 12, "/downloads/어퍼컷Tube/2025-11-28 다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!!/다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!! [nBumn_zRL2g].mkv", false, false, 3, [], 97, ~U[2025-11-28 09:01:22Z], ~U[2025-12-21 09:21:25Z], ~U[2025-12-21 09:21:25Z], "#슬로호시스 #애플티비 #어퍼컷tube \n《슬로 호시스》 시즌5 4화까지 요약입니다\n생략된 부분 많으니까 꼭 풀버전으로 시청하세요\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!!", 1919, false, "nBumn_zRL2g", "https://www.youtube.com/watch?v=nBumn_zRL2g", "/downloads/어퍼컷Tube/2025-11-28 다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!!/다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!! [nBumn_zRL2g].mkv", false, 3, ~U[2025-11-28 09:01:22Z]] 09:21:25.874 [debug] QUERY OK source="sources" db=0.0ms idle=54.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" = ?) [3] 09:21:25.875 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 09:21:25.875 [debug] QUERY OK source="media_items" db=0.1ms 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 [8898] 09:21:25.875 [debug] Current batch of media processed. Will check again in 1000ms 09:21:26.876 [debug] Current batch of media processed. Will check again in 1000ms 09:21:27.877 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "#허들 #개봉예정영화 #어퍼컷tube \n오늘 소개해드린 영화 《허들》은 12월 3일 개봉 예정입니다\n추운 날씨에 모두들 《허들》을 보시고 따뜻한 마음으로 극장을 나오시면 좋을것 같습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 917, "filename" => "/downloads/어퍼컷Tube/2025-11-24 숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것/숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것 [O_aLdxoctKk].mp4", "id" => "O_aLdxoctKk", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=O_aLdxoctKk", "playlist_index" => 13, "timestamp" => 1763978444, "title" => "숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것", "upload_date" => "20251124"} 09:21:27.877 [debug] QUERY OK source="sources" db=0.1ms idle=883.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 (?)) [3] 09:21:27.877 [debug] QUERY OK source="sources" db=0.1ms idle=883.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" = ?) [3] 09:21:27.879 [debug] QUERY OK source="media_items" db=0.9ms idle=884.0ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-24 10:00:44Z], 3] 09:21:27.879 [debug] QUERY OK source="media_items" db=0.4ms idle=885.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["#허들 #개봉예정영화 #어퍼컷tube \n오늘 소개해드린 영화 《허들》은 12월 3일 개봉 예정입니다\n추운 날씨에 모두들 《허들》을 보시고 따뜻한 마음으로 극장을 나오시면 좋을것 같습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것", "b07817ae-794f-4f56-95bc-df299a48e1c2", false, 917, false, "O_aLdxoctKk", "https://www.youtube.com/watch?v=O_aLdxoctKk", 13, "/downloads/어퍼컷Tube/2025-11-24 숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것/숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것 [O_aLdxoctKk].mp4", false, false, 3, [], 98, ~U[2025-11-24 10:00:44Z], ~U[2025-12-21 09:21:27Z], ~U[2025-12-21 09:21:27Z], "#허들 #개봉예정영화 #어퍼컷tube \n오늘 소개해드린 영화 《허들》은 12월 3일 개봉 예정입니다\n추운 날씨에 모두들 《허들》을 보시고 따뜻한 마음으로 극장을 나오시면 좋을것 같습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것", 917, false, "O_aLdxoctKk", "https://www.youtube.com/watch?v=O_aLdxoctKk", "/downloads/어퍼컷Tube/2025-11-24 숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것/숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것 [O_aLdxoctKk].mp4", false, 3, ~U[2025-11-24 10:00:44Z]] 09:21:27.879 [debug] QUERY OK source="sources" db=0.0ms idle=57.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" = ?) [3] 09:21:27.880 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 09:21:27.880 [debug] QUERY OK source="media_items" db=0.1ms 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 [8756] 09:21:27.880 [debug] Current batch of media processed. Will check again in 1000ms 09:21:28.881 [debug] Current batch of media processed. Will check again in 1000ms 09:21:29.641 [info] {"source":"oban","duration":715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:21:29.882 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "#플루리부스, #애플티비, #어퍼컷tube \n《플루리부스》 1-2화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 1285, "filename" => "/downloads/어퍼컷Tube/2025-11-21 "나만 빼고" 80억 지구 전체를 감염시킨 외계인/"나만 빼고" 80억 지구 전체를 감염시킨 외계인 [V6g2dKwNZPM].mkv", "id" => "V6g2dKwNZPM", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=V6g2dKwNZPM", "playlist_index" => 14, "timestamp" => 1763719262, "title" => "\"나만 빼고\" 80억 지구 전체를 감염시킨 외계인", "upload_date" => "20251121"} 09:21:29.882 [debug] QUERY OK source="sources" db=0.1ms idle=888.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 (?)) [3] 09:21:29.882 [debug] QUERY OK source="sources" db=0.1ms idle=888.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] 09:21:29.883 [debug] QUERY OK source="media_items" db=0.7ms idle=888.7ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-21 10:01:02Z], 3] 09:21:29.884 [debug] QUERY OK source="media_items" db=0.4ms idle=242.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["#플루리부스, #애플티비, #어퍼컷tube \n《플루리부스》 1-2화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "\"나만 빼고\" 80억 지구 전체를 감염시킨 외계인", "8d6b73a5-59d4-4bc5-91c4-e3fae7dc691e", false, 1285, false, "V6g2dKwNZPM", "https://www.youtube.com/watch?v=V6g2dKwNZPM", 14, "/downloads/어퍼컷Tube/2025-11-21 "나만 빼고" 80억 지구 전체를 감염시킨 외계인/"나만 빼고" 80억 지구 전체를 감염시킨 외계인 [V6g2dKwNZPM].mkv", false, false, 3, [], 97, ~U[2025-11-21 10:01:02Z], ~U[2025-12-21 09:21:29Z], ~U[2025-12-21 09:21:29Z], "#플루리부스, #애플티비, #어퍼컷tube \n《플루리부스》 1-2화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "\"나만 빼고\" 80억 지구 전체를 감염시킨 외계인", 1285, false, "V6g2dKwNZPM", "https://www.youtube.com/watch?v=V6g2dKwNZPM", "/downloads/어퍼컷Tube/2025-11-21 "나만 빼고" 80억 지구 전체를 감염시킨 외계인/"나만 빼고" 80억 지구 전체를 감염시킨 외계인 [V6g2dKwNZPM].mkv", false, 3, ~U[2025-11-21 10:01:02Z]] 09:21:29.884 [debug] QUERY OK source="sources" db=0.0ms idle=59.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" = ?) [3] 09:21:29.884 [debug] QUERY OK source="media_profiles" db=0.0ms idle=2.0ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:29.884 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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 [8548] 09:21:29.884 [debug] Current batch of media processed. Will check again in 1000ms 09:21:30.885 [debug] Current batch of media processed. Will check again in 1000ms 09:21:31.887 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "* 25년 11월 25일 Lionsgate로 부터 저작권 허락을 받은 작품입니다\n#더롱워크 #아마존프라임 #어퍼컷tube \n《더 롱 워크》는 미국으로 IP 우회 후 \n아마존 프라임에서 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 2856, "filename" => "/downloads/어퍼컷Tube/2025-11-21 미국 정부가 주최하는 ‘데스 게임’/미국 정부가 주최하는 ‘데스 게임’ [QQ8voDt7qBY].mp4", "id" => "QQ8voDt7qBY", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=QQ8voDt7qBY", "playlist_index" => 15, "timestamp" => 1763716232, "title" => "미국 정부가 주최하는 ‘데스 게임’", "upload_date" => "20251121"} 09:21:31.887 [debug] QUERY OK source="sources" db=0.2ms idle=893.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 (?)) [3] 09:21:31.888 [debug] QUERY OK source="sources" db=0.1ms idle=893.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" = ?) [3] 09:21:31.889 [debug] QUERY OK source="media_items" db=0.8ms idle=894.2ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-21 09:10:32Z], 3] 09:21:31.889 [debug] QUERY OK source="media_items" db=0.4ms idle=895.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["* 25년 11월 25일 Lionsgate로 부터 저작권 허락을 받은 작품입니다\n#더롱워크 #아마존프라임 #어퍼컷tube \n《더 롱 워크》는 미국으로 IP 우회 후 \n아마존 프라임에서 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "미국 정부가 주최하는 ‘데스 게임’", "fd7e9a9a-b196-427d-8865-97b75b1f72d6", false, 2856, false, "QQ8voDt7qBY", "https://www.youtube.com/watch?v=QQ8voDt7qBY", 15, "/downloads/어퍼컷Tube/2025-11-21 미국 정부가 주최하는 ‘데스 게임’/미국 정부가 주최하는 ‘데스 게임’ [QQ8voDt7qBY].mp4", false, false, 3, [], 97, ~U[2025-11-21 09:10:32Z], ~U[2025-12-21 09:21:31Z], ~U[2025-12-21 09:21:31Z], "* 25년 11월 25일 Lionsgate로 부터 저작권 허락을 받은 작품입니다\n#더롱워크 #아마존프라임 #어퍼컷tube \n《더 롱 워크》는 미국으로 IP 우회 후 \n아마존 프라임에서 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "미국 정부가 주최하는 ‘데스 게임’", 2856, false, "QQ8voDt7qBY", "https://www.youtube.com/watch?v=QQ8voDt7qBY", "/downloads/어퍼컷Tube/2025-11-21 미국 정부가 주최하는 ‘데스 게임’/미국 정부가 주최하는 ‘데스 게임’ [QQ8voDt7qBY].mp4", false, 3, ~U[2025-11-21 09:10:32Z]] 09:21:31.889 [debug] QUERY OK source="sources" db=0.1ms idle=63.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" = ?) [3] 09:21:31.890 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:31.890 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [8549] 09:21:31.890 [debug] Current batch of media processed. Will check again in 1000ms 09:21:32.890 [debug] Current batch of media processed. Will check again in 1000ms 09:21:33.892 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "* 25년 11월 15일 아마존 프라임으로 부터 저작권 사용을 허락 받았습니다\n\n《더 리그》는 아마존 프라임에서 풀버전으로 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 6635, "filename" => "/downloads/어퍼컷Tube/2025-11-20 심해에서 3억년 전 무엇을 깨워버린 시추 회사/심해에서 3억년 전 무엇을 깨워버린 시추 회사 [GXXrn3PqkRI].mkv", "id" => "GXXrn3PqkRI", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=GXXrn3PqkRI", "playlist_index" => 16, "timestamp" => 1763632827, "title" => "심해에서 3억년 전 무엇을 깨워버린 시추 회사", "upload_date" => "20251120"} 09:21:33.892 [debug] QUERY OK source="sources" db=0.2ms 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" IN (?)) [3] 09:21:33.893 [debug] QUERY OK source="sources" db=0.1ms idle=898.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" = ?) [3] 09:21:33.894 [debug] QUERY OK source="media_items" db=0.8ms idle=899.1ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-20 10:00:27Z], 3] 09:21:33.894 [debug] QUERY OK source="media_items" db=0.4ms idle=900.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["* 25년 11월 15일 아마존 프라임으로 부터 저작권 사용을 허락 받았습니다\n\n《더 리그》는 아마존 프라임에서 풀버전으로 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "심해에서 3억년 전 무엇을 깨워버린 시추 회사", "6b17c17e-931f-4365-a9ca-ab1657afe614", false, 6635, false, "GXXrn3PqkRI", "https://www.youtube.com/watch?v=GXXrn3PqkRI", 16, "/downloads/어퍼컷Tube/2025-11-20 심해에서 3억년 전 무엇을 깨워버린 시추 회사/심해에서 3억년 전 무엇을 깨워버린 시추 회사 [GXXrn3PqkRI].mkv", false, false, 3, [], 98, ~U[2025-11-20 10:00:27Z], ~U[2025-12-21 09:21:33Z], ~U[2025-12-21 09:21:33Z], "* 25년 11월 15일 아마존 프라임으로 부터 저작권 사용을 허락 받았습니다\n\n《더 리그》는 아마존 프라임에서 풀버전으로 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "심해에서 3억년 전 무엇을 깨워버린 시추 회사", 6635, false, "GXXrn3PqkRI", "https://www.youtube.com/watch?v=GXXrn3PqkRI", "/downloads/어퍼컷Tube/2025-11-20 심해에서 3억년 전 무엇을 깨워버린 시추 회사/심해에서 3억년 전 무엇을 깨워버린 시추 회사 [GXXrn3PqkRI].mkv", false, 3, ~U[2025-11-20 10:00:27Z]] 09:21:33.894 [debug] QUERY OK source="sources" db=0.1ms idle=66.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" = ?) [3] 09:21:33.895 [debug] QUERY OK source="media_profiles" db=0.1ms idle=2.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:33.895 [debug] QUERY OK source="media_items" db=0.1ms 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 [8008] 09:21:33.895 [debug] Current batch of media processed. Will check again in 1000ms 09:21:34.895 [debug] Current batch of media processed. Will check again in 1000ms 09:21:35.897 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "*25년 10월 17일 TF1 (TV Content), NBC Universal로 부터\n저작권 허락 및 화이트리스트 완료된 영상입니다\n\n#포커페이스 #왓챠 #어퍼컷tube \n《포커페이스》 시즌1 3화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 2087, "filename" => "/downloads/어퍼컷Tube/2025-11-15 봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ/봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ [6I9QPyNnj2Q].mkv", "id" => "6I9QPyNnj2Q", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=6I9QPyNnj2Q", "playlist_index" => 17, "timestamp" => 1763200809, "title" => "봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ", "upload_date" => "20251115"} 09:21:35.898 [debug] QUERY OK source="sources" db=0.2ms idle=903.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 (?)) [3] 09:21:35.898 [debug] QUERY OK source="sources" db=0.1ms idle=904.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" = ?) [3] 09:21:35.899 [debug] QUERY OK source="media_items" db=0.8ms idle=904.4ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-15 10:00:09Z], 3] 09:21:35.900 [debug] QUERY OK source="media_items" db=0.4ms idle=905.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["*25년 10월 17일 TF1 (TV Content), NBC Universal로 부터\n저작권 허락 및 화이트리스트 완료된 영상입니다\n\n#포커페이스 #왓챠 #어퍼컷tube \n《포커페이스》 시즌1 3화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ", "1d170284-8a5c-41e5-acff-defc39c72f68", false, 2087, false, "6I9QPyNnj2Q", "https://www.youtube.com/watch?v=6I9QPyNnj2Q", 17, "/downloads/어퍼컷Tube/2025-11-15 봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ/봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ [6I9QPyNnj2Q].mkv", false, false, 3, [], 98, ~U[2025-11-15 10:00:09Z], ~U[2025-12-21 09:21:35Z], ~U[2025-12-21 09:21:35Z], "*25년 10월 17일 TF1 (TV Content), NBC Universal로 부터\n저작권 허락 및 화이트리스트 완료된 영상입니다\n\n#포커페이스 #왓챠 #어퍼컷tube \n《포커페이스》 시즌1 3화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ", 2087, false, "6I9QPyNnj2Q", "https://www.youtube.com/watch?v=6I9QPyNnj2Q", "/downloads/어퍼컷Tube/2025-11-15 봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ/봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ [6I9QPyNnj2Q].mkv", false, 3, ~U[2025-11-15 10:00:09Z]] 09:21:35.900 [debug] QUERY OK source="sources" db=0.1ms idle=69.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" = ?) [3] 09:21:35.900 [debug] QUERY OK source="media_profiles" db=0.0ms idle=2.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 09:21:35.900 [debug] QUERY OK source="media_items" db=0.1ms idle=2.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 [6266] 09:21:35.900 [debug] Current batch of media processed. Will check again in 1000ms 09:21:36.902 [debug] Current batch of media processed. Will check again in 1000ms 09:21:37.903 [debug] Current batch of media processed. Will check again in 1000ms 09:21:38.904 [debug] FileFollowerServer Handler: Got media attributes: %{"aspect_ratio" => 2.0, "description" => "https://surfshark.com/upk 클릭하거나 \n결제 시 코드 [UPK] 입력하고 Surfshark VPN 4개월 추가 사용 혜택을 받아가세요!\n\n*저작권 허락을 받은 영상입니다\n*서프샤크 유료광고가 포함된 영상입니다\n\n00:00 더 보이즈 시즌1\n52:13 더 보이즈 시즌2\n01:38:31 더 보이즈 시즌3\n03:21:05 젠:V 시즌1\n04:00:54 더 보이즈 시즌4\n05:31:47 젠:V 시즌2 (신작)\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "duration" => 29206, "filename" => "/downloads/어퍼컷Tube/2025-11-14 《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기/《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기 [Gm41KixL7Ps].mkv", "id" => "Gm41KixL7Ps", "live_status" => "not_live", "original_url" => "https://www.youtube.com/watch?v=Gm41KixL7Ps", "playlist_index" => 18, "timestamp" => 1763114427, "title" => "《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기", "upload_date" => "20251114"} 09:21:38.904 [debug] QUERY OK source="sources" db=0.3ms idle=1910.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 (?)) [3] 09:21:38.905 [debug] QUERY OK source="sources" db=0.1ms idle=1910.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" = ?) [3] 09:21:38.906 [debug] QUERY OK source="media_items" db=0.9ms idle=1911.0ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-14 10:00:27Z], 3] 09:21:38.906 [debug] QUERY OK source="media_items" db=0.5ms idle=1073.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["https://surfshark.com/upk 클릭하거나 \n결제 시 코드 [UPK] 입력하고 Surfshark VPN 4개월 추가 사용 혜택을 받아가세요!\n\n*저작권 허락을 받은 영상입니다\n*서프샤크 유료광고가 포함된 영상입니다\n\n00:00 더 보이즈 시즌1\n52:13 더 보이즈 시즌2\n01:38:31 더 보이즈 시즌3\n03:21:05 젠:V 시즌1\n04:00:54 더 보이즈 시즌4\n05:31:47 젠:V 시즌2 (신작)\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기", "bfde7706-1628-4cd3-8380-e876cdf4b82e", false, 29206, false, "Gm41KixL7Ps", "https://www.youtube.com/watch?v=Gm41KixL7Ps", 18, "/downloads/어퍼컷Tube/2025-11-14 《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기/《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기 [Gm41KixL7Ps].mkv", false, false, 3, [], 98, ~U[2025-11-14 10:00:27Z], ~U[2025-12-21 09:21:38Z], ~U[2025-12-21 09:21:38Z], "https://surfshark.com/upk 클릭하거나 \n결제 시 코드 [UPK] 입력하고 Surfshark VPN 4개월 추가 사용 혜택을 받아가세요!\n\n*저작권 허락을 받은 영상입니다\n*서프샤크 유료광고가 포함된 영상입니다\n\n00:00 더 보이즈 시즌1\n52:13 더 보이즈 시즌2\n01:38:31 더 보이즈 시즌3\n03:21:05 젠:V 시즌1\n04:00:54 더 보이즈 시즌4\n05:31:47 젠:V 시즌2 (신작)\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기", 29206, false, "Gm41KixL7Ps", "https://www.youtube.com/watch?v=Gm41KixL7Ps", "/downloads/어퍼컷Tube/2025-11-14 《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기/《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기 [Gm41KixL7Ps].mkv", false, 3, ~U[2025-11-14 10:00:27Z]] 09:21:38.907 [debug] QUERY OK source="sources" db=0.1ms idle=73.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" = ?) [3] 09:21:38.907 [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:21:38.907 [debug] QUERY OK source="media_items" db=0.1ms 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 [7607] 09:21:38.907 [debug] Current batch of media processed. Will check again in 1000ms 09:21:39.908 [debug] Current batch of media processed. Will check again in 1000ms 09:21:40.532 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/@%EC%96%B4%ED%8D%BC%EC%BB%B7 --simulate --skip-download --ignore-no-formats-error --no-warnings --output /downloads/어퍼컷Tube/%(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/50/f8/50f83c46f61dc018d40ca196c6969ce7610f277e30487fde36155197fb5eeb3e.txt --print-to-file %(.{id,title,live_status,original_url,description,aspect_ratio,duration,upload_date,timestamp,playlist_index,filename})j /tmp/pinchflat/data/44/f4/44f4d3229cb79ed80bfe932a6df143143c0c358dfb24897552ddd5989bb954f5.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 101 with: 09:21:40.532 [debug] Gracefully stopping file follower 09:21:40.533 [debug] QUERY OK source="sources" db=0.2ms idle=698.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 (?)) [3] 09:21:40.533 [debug] QUERY OK source="sources" db=0.1ms idle=539.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" = ?) [3] 09:21:40.534 [debug] QUERY OK source="media_items" db=0.7ms idle=539.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-20 10:01:44Z], 3] 09:21:40.534 [debug] QUERY OK source="media_items" db=0.4ms idle=540.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["*25년 12월 15일 저작권 하락을 받은 영상입니다\n00:00 BMS 시즌2 1-3화\n33:42 BMS 시즌2 4-5화\n52:44 BMS 시즌2 6-13화\n\n블루 마운틴 스테이트 시즌2 몰아보기 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 \"무삭제로 수입할\" 엄두를 못내는 중", "57cd953f-830a-4d9c-af4a-95e213f115c8", false, 6751, false, "yJN1beCWTtY", "https://www.youtube.com/watch?v=yJN1beCWTtY", 1, "/downloads/어퍼컷Tube/2025-12-20 넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 "무삭제로 수입할" 엄두를 못내는 중/넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 "무삭제로 수입할" 엄두를 못내는 중 [yJN1beCWTtY].mp4", false, false, 3, [], 98, ~U[2025-12-20 10:01:44Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "*25년 12월 15일 저작권 하락을 받은 영상입니다\n00:00 BMS 시즌2 1-3화\n33:42 BMS 시즌2 4-5화\n52:44 BMS 시즌2 6-13화\n\n블루 마운틴 스테이트 시즌2 몰아보기 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 \"무삭제로 수입할\" 엄두를 못내는 중", 6751, false, "yJN1beCWTtY", "https://www.youtube.com/watch?v=yJN1beCWTtY", "/downloads/어퍼컷Tube/2025-12-20 넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 "무삭제로 수입할" 엄두를 못내는 중/넷플, 디즈니, 쿠팡 등등 어떤 곳도 감히 "무삭제로 수입할" 엄두를 못내는 중 [yJN1beCWTtY].mp4", false, 3, ~U[2025-12-20 10:01:44Z]] 09:21:40.535 [debug] QUERY OK source="sources" db=0.1ms idle=541.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" = ?) [3] 09:21:40.536 [debug] QUERY OK source="media_items" db=0.9ms idle=2.2ms 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 16:12:08Z], 3] 09:21:40.536 [debug] QUERY OK source="media_items" db=0.3ms idle=2.9ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["《She Rides Shotgun》은 아마존 프라임에서\nIP 우회후 (미국) 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "태런 에저튼의 감동적인 2025년 신작 영화", "dc99cbf9-0d35-41d6-86f7-75dcdf2bb54b", false, 3838, false, "a7io4HCXsew", "https://www.youtube.com/watch?v=a7io4HCXsew", 2, "/downloads/어퍼컷Tube/2025-12-17 태런 에저튼의 감동적인 2025년 신작 영화/태런 에저튼의 감동적인 2025년 신작 영화 [a7io4HCXsew].NA", false, false, 3, [], 97, ~U[2025-12-17 16:12:08Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "《She Rides Shotgun》은 아마존 프라임에서\nIP 우회후 (미국) 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "태런 에저튼의 감동적인 2025년 신작 영화", 3838, false, "a7io4HCXsew", "https://www.youtube.com/watch?v=a7io4HCXsew", "/downloads/어퍼컷Tube/2025-12-17 태런 에저튼의 감동적인 2025년 신작 영화/태런 에저튼의 감동적인 2025년 신작 영화 [a7io4HCXsew].NA", false, 3, ~U[2025-12-17 16:12:08Z]] 09:21:40.537 [debug] QUERY OK source="sources" db=0.1ms idle=2.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.537 [debug] QUERY OK source="media_items" db=0.6ms idle=2.2ms 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 22:43:52Z], 3] 09:21:40.538 [debug] QUERY OK source="media_items" db=0.3ms idle=2.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["《폴아웃》 시즌2 1화 요약입니다\n아마존 프라임에서 풀버전 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "《폴아웃》 시즌2 떳다!!!!!", "01dd8e5c-63a2-4efd-b936-bf8acc002f0a", false, 1500, false, "nfuQQigzNu0", "https://www.youtube.com/watch?v=nfuQQigzNu0", 3, "/downloads/어퍼컷Tube/2025-12-17 《폴아웃》 시즌2 떳다!!!!!/《폴아웃》 시즌2 떳다!!!!! [nfuQQigzNu0].NA", false, false, 3, [], 97, ~U[2025-12-17 22:43:52Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "《폴아웃》 시즌2 1화 요약입니다\n아마존 프라임에서 풀버전 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "《폴아웃》 시즌2 떳다!!!!!", 1500, false, "nfuQQigzNu0", "https://www.youtube.com/watch?v=nfuQQigzNu0", "/downloads/어퍼컷Tube/2025-12-17 《폴아웃》 시즌2 떳다!!!!!/《폴아웃》 시즌2 떳다!!!!! [nfuQQigzNu0].NA", false, 3, ~U[2025-12-17 22:43:52Z]] 09:21:40.538 [debug] QUERY OK source="sources" db=0.2ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.539 [debug] QUERY OK source="media_items" db=0.6ms idle=1.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-19 10:57:14Z], 3] 09:21:40.540 [debug] QUERY OK source="media_items" db=0.3ms idle=2.5ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["*25년 10월 31일 TF1 (TV Content), NBC Universal로 부터\n저작권 허락 및 화이트리스트 완료된 영상입니다\n\n#포커페이스 #왓챠 #어퍼컷tube \n《포커페이스》 시즌1 4화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "이거 완전 미국판 \"명탐정 코난\" 아니냐???", "cbe5bcc2-3f15-4563-92bc-acdcb78b2447", false, 1916, false, "HQSu9OTMLJo", "https://www.youtube.com/watch?v=HQSu9OTMLJo", 4, "/downloads/어퍼컷Tube/2025-12-19 이거 완전 미국판 "명탐정 코난" 아니냐???/이거 완전 미국판 "명탐정 코난" 아니냐??? [HQSu9OTMLJo].mkv", false, false, 3, [], 98, ~U[2025-12-19 10:57:14Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "*25년 10월 31일 TF1 (TV Content), NBC Universal로 부터\n저작권 허락 및 화이트리스트 완료된 영상입니다\n\n#포커페이스 #왓챠 #어퍼컷tube \n《포커페이스》 시즌1 4화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "이거 완전 미국판 \"명탐정 코난\" 아니냐???", 1916, false, "HQSu9OTMLJo", "https://www.youtube.com/watch?v=HQSu9OTMLJo", "/downloads/어퍼컷Tube/2025-12-19 이거 완전 미국판 "명탐정 코난" 아니냐???/이거 완전 미국판 "명탐정 코난" 아니냐??? [HQSu9OTMLJo].mkv", false, 3, ~U[2025-12-19 10:57:14Z]] 09:21:40.540 [debug] QUERY OK source="sources" db=0.1ms idle=2.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.541 [debug] QUERY OK source="media_items" db=0.5ms idle=2.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-16 10:01:11Z], 3] 09:21:40.541 [debug] QUERY OK source="media_items" db=0.3ms idle=2.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["*25년 12월 13일 저작권 허락을 받은 영상입니다\n#비키퍼 #제이슨스타뎀 #어퍼컷Tube \n《비키퍼》는 개별구매를 통해 풀버전 시청 가능합니다\n출처: paramount+\n\n구매 링크\nhttps://www.youtube.com/watch?v=HhNdMrq-Xc0\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "하필이면... 어쩌고...전직 특수부대...", "bf5a2177-d3e7-42e6-81d3-4d9684d8d162", false, 3000, false, "fXRP8h5joq0", "https://www.youtube.com/watch?v=fXRP8h5joq0", 5, "/downloads/어퍼컷Tube/2025-12-16 하필이면... 어쩌고...전직 특수부대..#/하필이면... 어쩌고...전직 특수부대... [fXRP8h5joq0].mkv", false, false, 3, [], 96, ~U[2025-12-16 10:01:11Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "*25년 12월 13일 저작권 허락을 받은 영상입니다\n#비키퍼 #제이슨스타뎀 #어퍼컷Tube \n《비키퍼》는 개별구매를 통해 풀버전 시청 가능합니다\n출처: paramount+\n\n구매 링크\nhttps://www.youtube.com/watch?v=HhNdMrq-Xc0\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "하필이면... 어쩌고...전직 특수부대...", 3000, false, "fXRP8h5joq0", "https://www.youtube.com/watch?v=fXRP8h5joq0", "/downloads/어퍼컷Tube/2025-12-16 하필이면... 어쩌고...전직 특수부대..#/하필이면... 어쩌고...전직 특수부대... [fXRP8h5joq0].mkv", false, 3, ~U[2025-12-16 10:01:11Z]] 09:21:40.541 [debug] QUERY OK source="sources" db=0.1ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.542 [debug] QUERY OK source="media_items" db=0.6ms idle=1.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-13 10:00:14Z], 3] 09:21:40.543 [debug] QUERY OK source="media_items" db=0.3ms idle=2.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["*25년 12월 13일 A24로 부터 저작권 허락을 받았습니다\n영화 《워페어》 몰아보기 영상입니다\n아마존 프라임에서 시청 가능합니다\n출처: A24\n#워페어 #전쟁영화 #어퍼컷tube \n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "진존잼", "70f8e074-c8e0-431d-827c-5e5d79db41ef", false, 2268, false, "B6z-oqn5EA8", "https://www.youtube.com/watch?v=B6z-oqn5EA8", 6, "/downloads/어퍼컷Tube/2025-12-13 진존잼/진존잼 [B6z-oqn5EA8].mkv", false, false, 3, [], 98, ~U[2025-12-13 10:00:14Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "*25년 12월 13일 A24로 부터 저작권 허락을 받았습니다\n영화 《워페어》 몰아보기 영상입니다\n아마존 프라임에서 시청 가능합니다\n출처: A24\n#워페어 #전쟁영화 #어퍼컷tube \n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "진존잼", 2268, false, "B6z-oqn5EA8", "https://www.youtube.com/watch?v=B6z-oqn5EA8", "/downloads/어퍼컷Tube/2025-12-13 진존잼/진존잼 [B6z-oqn5EA8].mkv", false, 3, ~U[2025-12-13 10:00:14Z]] 09:21:40.543 [debug] QUERY OK source="sources" db=0.1ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.544 [debug] QUERY OK source="media_items" db=0.5ms idle=1.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-12 10:00:18Z], 3] 09:21:40.544 [debug] QUERY OK source="media_items" db=0.7ms idle=2.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["* 25년 12월 9일 저작권 허락을 받은 영상입니다\n\n00:00 BMS 시즌2 1-3화\n33:42 BMS 시즌2 4-5화\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "미국 성인 시트콤, 거실에서 클릭하지마세요", "9dd89294-24c9-49b1-8ac8-1af5e880d361", false, 3169, false, "B45ULdgSCuI", "https://www.youtube.com/watch?v=B45ULdgSCuI", 7, "/downloads/어퍼컷Tube/2025-12-12 미국 성인 시트콤, 거실에서 클릭하지마세요/미국 성인 시트콤, 거실에서 클릭하지마세요 [B45ULdgSCuI].mp4", false, false, 3, [], 97, ~U[2025-12-12 10:00:18Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "* 25년 12월 9일 저작권 허락을 받은 영상입니다\n\n00:00 BMS 시즌2 1-3화\n33:42 BMS 시즌2 4-5화\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "미국 성인 시트콤, 거실에서 클릭하지마세요", 3169, false, "B45ULdgSCuI", "https://www.youtube.com/watch?v=B45ULdgSCuI", "/downloads/어퍼컷Tube/2025-12-12 미국 성인 시트콤, 거실에서 클릭하지마세요/미국 성인 시트콤, 거실에서 클릭하지마세요 [B45ULdgSCuI].mp4", false, 3, ~U[2025-12-12 10:00:18Z]] 09:21:40.545 [debug] QUERY OK source="sources" db=0.0ms idle=2.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.545 [debug] QUERY OK source="media_items" db=0.5ms idle=2.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-10 10:00:15Z], 3] 09:21:40.546 [debug] QUERY OK source="media_items" db=0.4ms idle=2.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["00:00 시작\n00:34 10. 탁류\n01:42 9. 터미널리스트: 다크 울프\n02:34 8. 은중과 상연\n03:59 7. 더 스튜디오\n04:49 6. 테스크\n05:34 5. 슬로 호시스\n06:04 4. 루드 비히: 퍼즐로 푸는 진실\n06:48 3. 소년의 시간\n07:36 2. 더 피트\n08:40 1. 덱스터: 레저렉션\n\n*영상속 모든 예고편은 IMDB에서 가져왔습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "벌써 제7회 2025년 \"최고의 드라마 TOP 10\"", "3433cc1f-f240-4adb-9fda-e5bcb1e52436", false, 683, false, "5UzZ9QuhTUo", "https://www.youtube.com/watch?v=5UzZ9QuhTUo", 8, "/downloads/어퍼컷Tube/2025-12-10 벌써 제7회 2025년 "최고의 드라마 TOP 10"/벌써 제7회 2025년 "최고의 드라마 TOP 10" [5UzZ9QuhTUo].mp4", false, false, 3, [], 98, ~U[2025-12-10 10:00:15Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "00:00 시작\n00:34 10. 탁류\n01:42 9. 터미널리스트: 다크 울프\n02:34 8. 은중과 상연\n03:59 7. 더 스튜디오\n04:49 6. 테스크\n05:34 5. 슬로 호시스\n06:04 4. 루드 비히: 퍼즐로 푸는 진실\n06:48 3. 소년의 시간\n07:36 2. 더 피트\n08:40 1. 덱스터: 레저렉션\n\n*영상속 모든 예고편은 IMDB에서 가져왔습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "벌써 제7회 2025년 \"최고의 드라마 TOP 10\"", 683, false, "5UzZ9QuhTUo", "https://www.youtube.com/watch?v=5UzZ9QuhTUo", "/downloads/어퍼컷Tube/2025-12-10 벌써 제7회 2025년 "최고의 드라마 TOP 10"/벌써 제7회 2025년 "최고의 드라마 TOP 10" [5UzZ9QuhTUo].mp4", false, 3, ~U[2025-12-10 10:00:15Z]] 09:21:40.546 [debug] QUERY OK source="sources" db=0.1ms idle=2.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.547 [debug] QUERY OK source="media_items" db=0.8ms idle=1.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-12-06 00:43:10Z], 3] 09:21:40.548 [debug] QUERY OK source="media_items" db=0.4ms idle=2.7ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["00:00 시작\n00:26 1, 언제 합병 되나?\n01:40 2, 합병이 된다면?\n03:03 3, 과연 나쁜 일일까?\n\n출처\n-넷플관련 기사 및 입장문\nabout.netflix.com\n-영화 및 시리즈 트레일러\nIMDB\n-discussingfilm계정 및 넷플릭스 공직 계정\n쓰레드.com\n-가보자G0 화면\nMBN 유튜브\n- 포스터및 로고\nthemoviedb.com\n- 반독점법 관련 기사\n한국일보\n그 외 이미지는 AI로 생성하였습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "영화 산업의 끝일까 새로운 시대의 시작일까?", "b6b16dc8-b8ca-4c8e-a444-1137503327b8", false, 305, false, "APpAwdDTuKg", "https://www.youtube.com/watch?v=APpAwdDTuKg", 9, "/downloads/어퍼컷Tube/2025-12-06 영화 산업의 끝일까 새로운 시대의 시작일까?/영화 산업의 끝일까 새로운 시대의 시작일까? [APpAwdDTuKg].mp4", false, false, 3, [], 98, ~U[2025-12-06 00:43:10Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "00:00 시작\n00:26 1, 언제 합병 되나?\n01:40 2, 합병이 된다면?\n03:03 3, 과연 나쁜 일일까?\n\n출처\n-넷플관련 기사 및 입장문\nabout.netflix.com\n-영화 및 시리즈 트레일러\nIMDB\n-discussingfilm계정 및 넷플릭스 공직 계정\n쓰레드.com\n-가보자G0 화면\nMBN 유튜브\n- 포스터및 로고\nthemoviedb.com\n- 반독점법 관련 기사\n한국일보\n그 외 이미지는 AI로 생성하였습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "영화 산업의 끝일까 새로운 시대의 시작일까?", 305, false, "APpAwdDTuKg", "https://www.youtube.com/watch?v=APpAwdDTuKg", "/downloads/어퍼컷Tube/2025-12-06 영화 산업의 끝일까 새로운 시대의 시작일까?/영화 산업의 끝일까 새로운 시대의 시작일까? [APpAwdDTuKg].mp4", false, 3, ~U[2025-12-06 00:43:10Z]] 09:21:40.548 [debug] QUERY OK source="sources" db=0.1ms idle=2.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.549 [debug] QUERY OK source="media_items" db=0.5ms idle=2.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-05 10:50:17Z], 3] 09:21:40.549 [debug] QUERY OK source="media_items" db=0.3ms idle=2.6ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["#장르영화 #본레이크 #어퍼컷Tube \n《본 레이크》는 개별 구매로 시청 가능합니다\n*25년 12월 5일 저작권 허락을 받은 영상입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "또...또... 이상한 거 가져왔다...또", "bb34e31a-1065-4e77-8aee-0a04fcb7ce58", false, 1519, false, "3Zvxifgt1Lk", "https://www.youtube.com/watch?v=3Zvxifgt1Lk", 10, "/downloads/어퍼컷Tube/2025-12-05 또...또... 이상한 거 가져왔다...또/또...또... 이상한 거 가져왔다...또 [3Zvxifgt1Lk].mkv", false, false, 3, [], 98, ~U[2025-12-05 10:50:17Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "#장르영화 #본레이크 #어퍼컷Tube \n《본 레이크》는 개별 구매로 시청 가능합니다\n*25년 12월 5일 저작권 허락을 받은 영상입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "또...또... 이상한 거 가져왔다...또", 1519, false, "3Zvxifgt1Lk", "https://www.youtube.com/watch?v=3Zvxifgt1Lk", "/downloads/어퍼컷Tube/2025-12-05 또...또... 이상한 거 가져왔다...또/또...또... 이상한 거 가져왔다...또 [3Zvxifgt1Lk].mkv", false, 3, ~U[2025-12-05 10:50:17Z]] 09:21:40.550 [debug] QUERY OK source="sources" db=0.1ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.550 [debug] QUERY OK source="media_items" db=0.6ms idle=1.7ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-28 11:50:13Z], 3] 09:21:40.551 [debug] QUERY OK source="media_items" db=0.3ms idle=2.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "영국을 혼란에 빠뜨린 정체불명의 테러 집단", "68284402-2156-45a4-a68e-5a70d045a15f", false, 4813, false, "Q-t9X91skts", "https://www.youtube.com/watch?v=Q-t9X91skts", 11, "/downloads/어퍼컷Tube/2025-11-28 영국을 혼란에 빠뜨린 정체불명의 테러 집단/영국을 혼란에 빠뜨린 정체불명의 테러 집단 [Q-t9X91skts].NA", false, false, 3, [], 97, ~U[2025-11-28 11:50:13Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "영국을 혼란에 빠뜨린 정체불명의 테러 집단", 4813, false, "Q-t9X91skts", "https://www.youtube.com/watch?v=Q-t9X91skts", "/downloads/어퍼컷Tube/2025-11-28 영국을 혼란에 빠뜨린 정체불명의 테러 집단/영국을 혼란에 빠뜨린 정체불명의 테러 집단 [Q-t9X91skts].NA", false, 3, ~U[2025-11-28 11:50:13Z]] 09:21:40.551 [debug] QUERY OK source="sources" db=0.1ms idle=2.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" = ?) [3] 09:21:40.552 [debug] QUERY OK source="media_items" db=0.6ms idle=1.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-28 09:01:22Z], 3] 09:21:40.552 [debug] QUERY OK source="media_items" db=0.3ms idle=2.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["#슬로호시스 #애플티비 #어퍼컷tube \n《슬로 호시스》 시즌5 4화까지 요약입니다\n생략된 부분 많으니까 꼭 풀버전으로 시청하세요\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!!", "88ee12a6-ad98-4ed8-abdb-17162fa116da", false, 1919, false, "nBumn_zRL2g", "https://www.youtube.com/watch?v=nBumn_zRL2g", 12, "/downloads/어퍼컷Tube/2025-11-28 다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!!/다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!! [nBumn_zRL2g].mkv", false, false, 3, [], 97, ~U[2025-11-28 09:01:22Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "#슬로호시스 #애플티비 #어퍼컷tube \n《슬로 호시스》 시즌5 4화까지 요약입니다\n생략된 부분 많으니까 꼭 풀버전으로 시청하세요\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!!", 1919, false, "nBumn_zRL2g", "https://www.youtube.com/watch?v=nBumn_zRL2g", "/downloads/어퍼컷Tube/2025-11-28 다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!!/다섯 번째 시즌... 완전 물이 올랐고 너무 재밌다!!! [nBumn_zRL2g].mkv", false, 3, ~U[2025-11-28 09:01:22Z]] 09:21:40.553 [debug] QUERY OK source="sources" db=0.1ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.553 [debug] QUERY OK source="media_items" db=0.5ms idle=1.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-24 10:00:44Z], 3] 09:21:40.554 [debug] QUERY OK source="media_items" db=0.3ms idle=2.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["#허들 #개봉예정영화 #어퍼컷tube \n오늘 소개해드린 영화 《허들》은 12월 3일 개봉 예정입니다\n추운 날씨에 모두들 《허들》을 보시고 따뜻한 마음으로 극장을 나오시면 좋을것 같습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것", "c159e2df-396f-480a-bf3d-37a55af58cf3", false, 917, false, "O_aLdxoctKk", "https://www.youtube.com/watch?v=O_aLdxoctKk", 13, "/downloads/어퍼컷Tube/2025-11-24 숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것/숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것 [O_aLdxoctKk].mp4", false, false, 3, [], 98, ~U[2025-11-24 10:00:44Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "#허들 #개봉예정영화 #어퍼컷tube \n오늘 소개해드린 영화 《허들》은 12월 3일 개봉 예정입니다\n추운 날씨에 모두들 《허들》을 보시고 따뜻한 마음으로 극장을 나오시면 좋을것 같습니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것", 917, false, "O_aLdxoctKk", "https://www.youtube.com/watch?v=O_aLdxoctKk", "/downloads/어퍼컷Tube/2025-11-24 숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것/숏폼과 도파민 영상이 넘쳐나는 대한민국에서, 우리가 잃어 버린 것 [O_aLdxoctKk].mp4", false, 3, ~U[2025-11-24 10:00:44Z]] 09:21:40.554 [debug] QUERY OK source="sources" db=0.1ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.555 [debug] QUERY OK source="media_items" db=0.5ms idle=1.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-21 10:01:02Z], 3] 09:21:40.555 [debug] QUERY OK source="media_items" db=0.3ms idle=2.4ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["#플루리부스, #애플티비, #어퍼컷tube \n《플루리부스》 1-2화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "\"나만 빼고\" 80억 지구 전체를 감염시킨 외계인", "d421aa31-49bb-4b7d-860c-212b37fca645", false, 1285, false, "V6g2dKwNZPM", "https://www.youtube.com/watch?v=V6g2dKwNZPM", 14, "/downloads/어퍼컷Tube/2025-11-21 "나만 빼고" 80억 지구 전체를 감염시킨 외계인/"나만 빼고" 80억 지구 전체를 감염시킨 외계인 [V6g2dKwNZPM].mkv", false, false, 3, [], 97, ~U[2025-11-21 10:01:02Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "#플루리부스, #애플티비, #어퍼컷tube \n《플루리부스》 1-2화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "\"나만 빼고\" 80억 지구 전체를 감염시킨 외계인", 1285, false, "V6g2dKwNZPM", "https://www.youtube.com/watch?v=V6g2dKwNZPM", "/downloads/어퍼컷Tube/2025-11-21 "나만 빼고" 80억 지구 전체를 감염시킨 외계인/"나만 빼고" 80억 지구 전체를 감염시킨 외계인 [V6g2dKwNZPM].mkv", false, 3, ~U[2025-11-21 10:01:02Z]] 09:21:40.556 [debug] QUERY OK source="sources" db=0.1ms idle=2.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.556 [debug] QUERY OK source="media_items" db=0.5ms idle=1.9ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-21 09:10:32Z], 3] 09:21:40.557 [debug] QUERY OK source="media_items" db=0.3ms idle=2.3ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["* 25년 11월 25일 Lionsgate로 부터 저작권 허락을 받은 작품입니다\n#더롱워크 #아마존프라임 #어퍼컷tube \n《더 롱 워크》는 미국으로 IP 우회 후 \n아마존 프라임에서 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "미국 정부가 주최하는 ‘데스 게임’", "ac12d6a0-b5e9-4d0a-b579-c25728308930", false, 2856, false, "QQ8voDt7qBY", "https://www.youtube.com/watch?v=QQ8voDt7qBY", 15, "/downloads/어퍼컷Tube/2025-11-21 미국 정부가 주최하는 ‘데스 게임’/미국 정부가 주최하는 ‘데스 게임’ [QQ8voDt7qBY].mp4", false, false, 3, [], 97, ~U[2025-11-21 09:10:32Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "* 25년 11월 25일 Lionsgate로 부터 저작권 허락을 받은 작품입니다\n#더롱워크 #아마존프라임 #어퍼컷tube \n《더 롱 워크》는 미국으로 IP 우회 후 \n아마존 프라임에서 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "미국 정부가 주최하는 ‘데스 게임’", 2856, false, "QQ8voDt7qBY", "https://www.youtube.com/watch?v=QQ8voDt7qBY", "/downloads/어퍼컷Tube/2025-11-21 미국 정부가 주최하는 ‘데스 게임’/미국 정부가 주최하는 ‘데스 게임’ [QQ8voDt7qBY].mp4", false, 3, ~U[2025-11-21 09:10:32Z]] 09:21:40.557 [debug] QUERY OK source="sources" db=0.1ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.558 [debug] QUERY OK source="media_items" db=0.6ms idle=1.8ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-20 10:00:27Z], 3] 09:21:40.558 [debug] QUERY OK source="media_items" db=0.3ms idle=2.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["* 25년 11월 15일 아마존 프라임으로 부터 저작권 사용을 허락 받았습니다\n\n《더 리그》는 아마존 프라임에서 풀버전으로 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "심해에서 3억년 전 무엇을 깨워버린 시추 회사", "f3225379-1205-4e71-b7c3-f09f0fccc1a4", false, 6635, false, "GXXrn3PqkRI", "https://www.youtube.com/watch?v=GXXrn3PqkRI", 16, "/downloads/어퍼컷Tube/2025-11-20 심해에서 3억년 전 무엇을 깨워버린 시추 회사/심해에서 3억년 전 무엇을 깨워버린 시추 회사 [GXXrn3PqkRI].mkv", false, false, 3, [], 98, ~U[2025-11-20 10:00:27Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "* 25년 11월 15일 아마존 프라임으로 부터 저작권 사용을 허락 받았습니다\n\n《더 리그》는 아마존 프라임에서 풀버전으로 시청 가능합니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "심해에서 3억년 전 무엇을 깨워버린 시추 회사", 6635, false, "GXXrn3PqkRI", "https://www.youtube.com/watch?v=GXXrn3PqkRI", "/downloads/어퍼컷Tube/2025-11-20 심해에서 3억년 전 무엇을 깨워버린 시추 회사/심해에서 3억년 전 무엇을 깨워버린 시추 회사 [GXXrn3PqkRI].mkv", false, 3, ~U[2025-11-20 10:00:27Z]] 09:21:40.559 [debug] QUERY OK source="sources" db=0.1ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 09:21:40.559 [debug] QUERY OK source="media_items" db=0.5ms idle=1.7ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-15 10:00:09Z], 3] 09:21:40.560 [debug] QUERY OK source="media_items" db=0.3ms idle=2.2ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["*25년 10월 17일 TF1 (TV Content), NBC Universal로 부터\n저작권 허락 및 화이트리스트 완료된 영상입니다\n\n#포커페이스 #왓챠 #어퍼컷tube \n《포커페이스》 시즌1 3화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ", "01beac37-492a-426e-84e8-9db38724b65a", false, 2087, false, "6I9QPyNnj2Q", "https://www.youtube.com/watch?v=6I9QPyNnj2Q", 17, "/downloads/어퍼컷Tube/2025-11-15 봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ/봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ [6I9QPyNnj2Q].mkv", false, false, 3, [], 98, ~U[2025-11-15 10:00:09Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "*25년 10월 17일 TF1 (TV Content), NBC Universal로 부터\n저작권 허락 및 화이트리스트 완료된 영상입니다\n\n#포커페이스 #왓챠 #어퍼컷tube \n《포커페이스》 시즌1 3화 요약입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ", 2087, false, "6I9QPyNnj2Q", "https://www.youtube.com/watch?v=6I9QPyNnj2Q", "/downloads/어퍼컷Tube/2025-11-15 봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ/봉준호 때문에 망해버린 텍사스 고기 식당 ㅋㅋㅋㅋ [6I9QPyNnj2Q].mkv", false, 3, ~U[2025-11-15 10:00:09Z]] 09:21:40.560 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [3] 09:21:40.561 [debug] QUERY OK source="media_items" db=0.5ms idle=1.6ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-14 10:00:27Z], 3] 09:21:40.561 [debug] QUERY OK source="media_items" db=0.3ms idle=2.0ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["https://surfshark.com/upk 클릭하거나 \n결제 시 코드 [UPK] 입력하고 Surfshark VPN 4개월 추가 사용 혜택을 받아가세요!\n\n*저작권 허락을 받은 영상입니다\n*서프샤크 유료광고가 포함된 영상입니다\n\n00:00 더 보이즈 시즌1\n52:13 더 보이즈 시즌2\n01:38:31 더 보이즈 시즌3\n03:21:05 젠:V 시즌1\n04:00:54 더 보이즈 시즌4\n05:31:47 젠:V 시즌2 (신작)\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기", "98b17423-5bcb-4185-a767-3332741f2f72", false, 29206, false, "Gm41KixL7Ps", "https://www.youtube.com/watch?v=Gm41KixL7Ps", 18, "/downloads/어퍼컷Tube/2025-11-14 《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기/《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기 [Gm41KixL7Ps].mkv", false, false, 3, [], 98, ~U[2025-11-14 10:00:27Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "https://surfshark.com/upk 클릭하거나 \n결제 시 코드 [UPK] 입력하고 Surfshark VPN 4개월 추가 사용 혜택을 받아가세요!\n\n*저작권 허락을 받은 영상입니다\n*서프샤크 유료광고가 포함된 영상입니다\n\n00:00 더 보이즈 시즌1\n52:13 더 보이즈 시즌2\n01:38:31 더 보이즈 시즌3\n03:21:05 젠:V 시즌1\n04:00:54 더 보이즈 시즌4\n05:31:47 젠:V 시즌2 (신작)\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기", 29206, false, "Gm41KixL7Ps", "https://www.youtube.com/watch?v=Gm41KixL7Ps", "/downloads/어퍼컷Tube/2025-11-14 《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기/《더 보이즈》 + 《젠:V》 모든 시즌 한 번에 몰아보기 [Gm41KixL7Ps].mkv", false, 3, ~U[2025-11-14 10:00:27Z]] 09:21:40.561 [debug] QUERY OK source="sources" db=0.1ms idle=2.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" = ?) [3] 09:21:40.562 [debug] QUERY OK source="media_items" db=0.5ms idle=1.7ms SELECT min(m0."upload_date_index") FROM "media_items" AS m0 WHERE (date(m0."uploaded_at") = date(?) AND (m0."source_id" = ?)) [~U[2025-11-08 01:00:04Z], 3] 09:21:40.563 [debug] QUERY OK source="media_items" db=0.3ms idle=2.1ms INSERT INTO "media_items" AS m0 ("description","title","uuid","prevent_download","duration_seconds","livestream","media_id","original_url","playlist_index","predicted_media_filepath","prevent_culling","short_form_content","source_id","subtitle_filepaths","upload_date_index","uploaded_at","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5,?6,?7,?8,?9,?10,?11,?12,?13,?14,?15,?16,?17,?18) 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" ["#사랑의이해 #JTBC #어퍼컷Tube\n《사랑의 이해》 1-6화까지 요약입니다\n\n*11월 4일 JTBC로 부터 저작권 허락 및 화이트리스팅 된 영상입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "《은중과 상연》을 너무 재밌게 봐서 찾아본 조영민 감독의 전작", "4ab5bf41-3cb9-4469-9095-3e2f33a92c40", false, 2787, false, "36ntAKDyK9c", "https://www.youtube.com/watch?v=36ntAKDyK9c", 19, "/downloads/어퍼컷Tube/2025-11-08 《은중과 상연》을 너무 재밌게 봐서 찾아본 조영민 감독의 전작/《은중과 상연》을 너무 재밌게 봐서 찾아본 조영민 감독의 전작 [36ntAKDyK9c].mp4", false, false, 3, [], 98, ~U[2025-11-08 01:00:04Z], ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], "#사랑의이해 #JTBC #어퍼컷Tube\n《사랑의 이해》 1-6화까지 요약입니다\n\n*11월 4일 JTBC로 부터 저작권 허락 및 화이트리스팅 된 영상입니다\n\n어퍼컷Tube 맴버십 가입 링크\nhttps://www.youtube.com/channel/UCuK80YHBZyyKrr2B1oHrgrw/join", "《은중과 상연》을 너무 재밌게 봐서 찾아본 조영민 감독의 전작", 2787, false, "36ntAKDyK9c", "https://www.youtube.com/watch?v=36ntAKDyK9c", "/downloads/어퍼컷Tube/2025-11-08 《은중과 상연》을 너무 재밌게 봐서 찾아본 조영민 감독의 전작/《은중과 상연》을 너무 재밌게 봐서 찾아본 조영민 감독의 전작 [36ntAKDyK9c].mp4", false, 3, ~U[2025-11-08 01:00:04Z]] 09:21:40.563 [debug] QUERY OK source="sources" db=0.0ms idle=2.0ms UPDATE "sources" SET "last_indexed_at" = ?, "updated_at" = ? WHERE "id" = ? [~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z], 3] 09:21:40.564 [debug] QUERY OK source="media_items" db=0.7ms idle=1.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [3] 09:21:40.565 [debug] QUERY OK source="tasks" db=0.0ms idle=1.9ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2347, 4850, ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z]] 09:21:40.565 [debug] QUERY OK source="tasks" db=0.1ms idle=0.8ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2348, 5378, ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z]] 09:21:40.566 [debug] QUERY OK source="tasks" db=0.0ms idle=1.0ms INSERT INTO "tasks" ("job_id","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2349, 7021, ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z]] 09:21:40.569 [debug] QUERY OK source="media_items" db=0.7ms idle=1.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")))) [3] 09:21:40.569 [debug] QUERY OK source="media_items" db=0.3ms idle=1.8ms SELECT count(*) FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [3] 09:21:40.570 [debug] QUERY OK source="tasks" db=0.0ms idle=2.0ms INSERT INTO "tasks" ("job_id","source_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4) RETURNING "id" [2350, 3, ~U[2025-12-21 09:21:40Z], ~U[2025-12-21 09:21:40Z]] 09:21:40.570 [info] {"args":{"id":3},"id":2336,"meta":{},"state":"success","max_attempts":20,"queue":"media_collection_indexing","worker":"Pinchflat.SlowIndexing.MediaCollectionIndexingWorker","source":"oban","duration":48779166,"event":"job:stop","queue_time":140661,"attempt":1,"tags":["media_source","media_collection_indexing","show_in_dashboard"]} 09:21:40.571 [info] {"args":{"id":4850},"id":2347,"meta":{},"system_time":1766308900571403039,"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"]} 09:21:40.571 [info] {"args":{"id":5378},"id":2348,"meta":{},"system_time":1766308900571431452,"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"]} 09:21:40.571 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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" = ?) [4850] 09:21:40.571 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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" = ?) [5378] 09:21:40.571 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:21:40.571 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:21:40.572 [debug] QUERY OK source="sources" db=0.2ms idle=1.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" = ?) [3] 09:21:40.572 [debug] QUERY OK source="sources" db=0.1ms idle=1.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" = ?) [3] 09:21:40.572 [debug] QUERY OK source="media_profiles" db=0.0ms idle=0.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:21:40.572 [debug] QUERY OK source="media_profiles" db=0.0ms idle=0.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:21:40.572 [debug] QUERY OK source="media_items" db=0.1ms idle=0.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 [4850] 09:21:40.572 [debug] QUERY OK source="media_items" db=0.3ms idle=0.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 [5378] 09:21:40.573 [debug] QUERY OK source="media_metadata" db=0.0ms idle=0.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" = ?) [4850] 09:21:40.573 [debug] QUERY OK source="media_profiles" db=0.0ms idle=0.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:21:40.573 [debug] QUERY OK source="media_metadata" db=0.1ms idle=0.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" = ?) [5378] 09:21:40.573 [debug] QUERY OK source="settings" db=0.0ms 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:21:40.573 [debug] QUERY OK source="media_profiles" db=0.1ms idle=0.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:21:40.573 [debug] QUERY OK source="settings" db=0.0ms idle=0.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:21:40.573 [debug] Running yt-dlp command for action: get_downloadable_status 09:21:40.573 [debug] QUERY OK source="settings" db=0.1ms 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:21:40.574 [debug] QUERY OK source="settings" db=0.1ms 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:21:40.574 [debug] QUERY OK source="settings" db=0.0ms idle=0.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:21:40.574 [debug] Running yt-dlp command for action: get_downloadable_status 09:21:40.574 [debug] QUERY OK source="settings" db=0.1ms 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:21:40.574 [debug] QUERY OK source="settings" db=0.0ms 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:21:40.574 [debug] QUERY OK source="settings" db=0.0ms 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:21:40.574 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5zCPVPjdFYE --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/21/fd/21fdfda1fea6492aee5beb0ab827ae266891e481e55471372d330f85c5cb9d10.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:21:40.575 [debug] QUERY OK source="settings" db=0.1ms idle=0.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:21:40.575 [debug] QUERY OK source="settings" db=0.1ms 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:21:40.575 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=m4X0DSoPzRg --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/18/ba/18ba0b1180e7f0c5d419da8a5e19d1edca6999903bde9683d34e2d931801ca2b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:21:42.144 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=m4X0DSoPzRg --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/18/ba/18ba0b1180e7f0c5d419da8a5e19d1edca6999903bde9683d34e2d931801ca2b.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] m4X0DSoPzRg: Video unavailable 09:21:42.144 [error] yt-dlp download error for media item #5378: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] m4X0DSoPzRg: Video unavailable\n" 09:21:42.144 [error] yt-dlp download will not be retried: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] m4X0DSoPzRg: Video unavailable\n" 09:21:42.144 [info] {"args":{"id":5378},"id":2348,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":1573068,"event":"job:stop","queue_time":570888,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:21:42.151 [info] {"args":{"id":7021},"id":2349,"meta":{},"system_time":1766308902151361238,"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"]} 09:21:42.151 [debug] QUERY OK source="media_items" db=0.1ms idle=157.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" = ?) [7021] 09:21:42.151 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:21:42.152 [debug] QUERY OK source="sources" db=0.1ms idle=157.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" = ?) [3] 09:21:42.152 [debug] QUERY OK source="media_profiles" db=0.0ms idle=158.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:21:42.152 [debug] QUERY OK source="media_items" db=0.1ms 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 [7021] 09:21:42.189 [debug] QUERY OK source="media_metadata" db=0.0ms idle=38.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" = ?) [7021] 09:21:42.190 [debug] QUERY OK source="media_profiles" db=0.0ms idle=38.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:21:42.190 [debug] QUERY OK source="settings" db=0.1ms idle=38.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:21:42.190 [debug] QUERY OK source="settings" db=0.0ms idle=38.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:21:42.190 [debug] Running yt-dlp command for action: get_downloadable_status 09:21:42.190 [debug] QUERY OK source="settings" db=0.0ms idle=38.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:21:42.191 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:21:42.191 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:21:42.191 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=jUl-hFvigtE --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/64/9f/649fb5f68920714e480b7e344b5c763a47f305a2cc78653adbb4ad19c38ad3e9.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:21:42.347 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5zCPVPjdFYE --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/21/fd/21fdfda1fea6492aee5beb0ab827ae266891e481e55471372d330f85c5cb9d10.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5zCPVPjdFYE: Video unavailable 09:21:42.347 [error] yt-dlp download error for media item #4850: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5zCPVPjdFYE: Video unavailable\n" 09:21:42.347 [error] yt-dlp download will not be retried: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5zCPVPjdFYE: Video unavailable\n" 09:21:42.348 [info] {"args":{"id":4850},"id":2347,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":1776239,"event":"job:stop","queue_time":570888,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:21:43.776 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=jUl-hFvigtE --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/64/9f/649fb5f68920714e480b7e344b5c763a47f305a2cc78653adbb4ad19c38ad3e9.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] jUl-hFvigtE: Video unavailable 09:21:43.776 [error] yt-dlp download error for media item #7021: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] jUl-hFvigtE: Video unavailable\n" 09:21:43.776 [error] yt-dlp download will not be retried: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] jUl-hFvigtE: Video unavailable\n" 09:21:43.776 [info] {"args":{"id":7021},"id":2349,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":1625198,"event":"job:stop","queue_time":2150837,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:21:59.642 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:22:00.020 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:22:29.643 [info] {"source":"oban","duration":728,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:22:59.645 [info] {"source":"oban","duration":732,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:23:00.021 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:23:29.647 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:23:59.648 [info] {"source":"oban","duration":761,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:24:00.022 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:24:29.649 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:24:59.650 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:25:00.023 [info] {"source":"oban","duration":226,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:25:29.651 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:25:59.652 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:26:00.024 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:26:29.654 [info] {"source":"oban","duration":1424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:26:59.655 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:27:00.025 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:27:29.657 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:27:59.658 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:28:00.026 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:28:23.245 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766309303245499501,"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"]} 09:28:23.245 [debug] QUERY OK source="media_items" db=0.1ms idle=251.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" = ?) [2241] 09:28:23.246 [info] User scripts lifecyle file either not present or is empty. Skipping. 09:28:23.246 [debug] QUERY OK source="sources" db=0.1ms idle=252.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" = ?) [4] 09:28:23.246 [debug] QUERY OK source="media_profiles" db=0.0ms idle=252.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:28:23.247 [debug] QUERY OK source="media_items" db=0.2ms 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 [2241] 09:28:23.247 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [2241] 09:28:23.247 [debug] QUERY OK source="media_profiles" db=0.0ms 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:28:23.247 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:28:23.247 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:28:23.248 [debug] Running yt-dlp command for action: get_downloadable_status 09:28:23.248 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:28:23.248 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:28:23.248 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:28:23.249 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/7e/5e/7e5e1be537e6b788a0d571a3d40c11dc8fdba89407aa2586be291c383d4a7116.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 09:28:25.369 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/7e/5e/7e5e1be537e6b788a0d571a3d40c11dc8fdba89407aa2586be291c383d4a7116.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 09:28:25.369 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 09:28:25.370 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2124448,"event":"job:exception","queue_time":887274,"attempt":11,"tags":["media_item","media_fetching","show_in_dashboard"]} 09:28:29.659 [info] {"source":"oban","duration":777,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:28:59.660 [info] {"source":"oban","duration":652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:29:00.027 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:29:29.661 [info] {"source":"oban","duration":754,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:29:59.663 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:30:00.028 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:30:29.664 [info] {"source":"oban","duration":691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:30:59.665 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:31:00.029 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:31:29.666 [info] {"source":"oban","duration":667,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:31:59.667 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:32:00.030 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:32:29.668 [info] {"source":"oban","duration":798,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:32:59.669 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:33:00.031 [info] {"source":"oban","duration":216,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:33:29.670 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:33:59.671 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:34:00.032 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:34:29.672 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:34:59.673 [info] {"source":"oban","duration":411,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:35:00.033 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:35:29.674 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:35:59.675 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:36:00.034 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:36:29.676 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:36:59.677 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:37:00.035 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:37:29.678 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:37:59.679 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:38:00.036 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:38:29.680 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:38:59.681 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:39:00.037 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:39:29.682 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:39:59.683 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:40:00.038 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:40:29.684 [info] {"source":"oban","duration":733,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:40:59.685 [info] {"source":"oban","duration":677,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:41:00.039 [info] {"source":"oban","duration":233,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:41:29.686 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:41:59.687 [info] {"source":"oban","duration":710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:42:00.040 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:42:29.688 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:42:59.689 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:43:00.041 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:43:29.690 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:43:59.691 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:44:00.042 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:44:29.692 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:44:59.693 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:45:00.043 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:45:29.694 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:45:59.695 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:46:00.044 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:46:29.696 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:46:59.697 [info] {"source":"oban","duration":775,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:47:00.045 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:47:29.699 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:47:59.701 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:48:00.046 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:48:29.702 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:48:59.703 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:49:00.047 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:49:16.974 [info] GET / 09:49:16.974 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 09:49:16.975 [debug] QUERY OK source="settings" db=0.1ms idle=1980.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:49:16.975 [debug] QUERY OK source="media_profiles" db=0.0ms queue=0.1ms idle=1981.2ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 09:49:16.975 [debug] QUERY OK source="sources" db=0.0ms idle=1473.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 09:49:16.976 [debug] QUERY OK source="media_items" db=0.9ms idle=981.6ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 09:49:16.976 [debug] QUERY OK source="media_items" db=0.1ms idle=473.2ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 09:49:16.977 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:16.977 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:16.977 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:16.978 [debug] QUERY OK source="tasks" db=0.1ms idle=1.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"] 09:49:16.978 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 09:49:16.978 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 09:49:16.978 [debug] QUERY OK source="sources" db=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" IN (?,?)) [4, 3] 09:49:16.980 [debug] QUERY OK source="media_items" db=0.8ms idle=1.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"))) [] 09:49:16.980 [debug] QUERY OK source="media_items" db=0.2ms idle=2.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_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] 09:49:16.980 [debug] QUERY OK source="sources" db=0.0ms 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" = ?) [3] 09:49:16.981 [info] Sent 200 in 6ms 09:49:22.664 [info] GET /sources/3/media/10622 09:49:22.665 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10622", "source_id" => "3"} Pipelines: [:browser] 09:49:22.665 [debug] QUERY OK source="media_items" db=0.1ms idle=671.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" = ?) [10622] 09:49:22.665 [debug] QUERY OK source="sources" db=0.1ms idle=671.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" = ?) [3] 09:49:22.665 [debug] QUERY OK source="tasks" db=0.2ms idle=671.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" [10622] 09:49:22.666 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=671.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" = ?) [2331] 09:49:22.666 [debug] QUERY OK source="settings" db=0.0ms idle=156.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:49:22.666 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:22.666 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:22.667 [debug] QUERY OK source="media_profiles" db=0.0ms 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:49:22.667 [info] Sent 200 in 3ms 09:49:28.079 [info] GET /sources/3/media/10623 09:49:28.079 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10623", "source_id" => "3"} Pipelines: [:browser] 09:49:28.080 [debug] QUERY OK source="media_items" db=0.2ms idle=565.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" = ?) [10623] 09:49:28.080 [debug] QUERY OK source="tasks" db=0.1ms idle=86.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" [10623] 09:49:28.080 [debug] QUERY OK source="sources" db=0.1ms idle=86.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" = ?) [3] 09:49:28.081 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=86.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" = ?) [2332] 09:49:28.081 [debug] QUERY OK source="settings" db=0.0ms idle=87.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:49:28.081 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:28.081 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:28.082 [debug] QUERY OK source="media_profiles" db=0.0ms 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:49:28.082 [info] Sent 200 in 3ms 09:49:29.704 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:49:30.751 [info] GET /sources/3/media/10622/edit 09:49:30.751 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "10622", "source_id" => "3"} Pipelines: [:browser] 09:49:30.751 [debug] QUERY OK source="media_items" db=0.1ms idle=1047.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" = ?) [10622] 09:49:30.752 [debug] QUERY OK source="settings" db=0.1ms idle=757.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:49:30.752 [debug] QUERY OK source="settings" db=0.1ms idle=758.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:49:30.752 [debug] QUERY OK source="settings" db=0.1ms idle=758.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:49:30.753 [info] Sent 200 in 2ms 09:49:33.044 [info] GET /sources/3/media/10622/force_download 09:49:33.045 [debug] QUERY OK source="settings" db=0.2ms idle=1050.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:49:33.045 [debug] QUERY OK source="settings" db=0.0ms idle=1051.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:49:33.045 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 09:49:33.045 [error] #PID<0.398627.0> running PinchflatWeb.Endpoint (connection #PID<0.398626.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /sources/3/media/10622/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/3/media/10622/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.398626.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/media/10622/force_download", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46136}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0", "from" => "gptbot(at)openai.com", "host" => "pinchflat.moozuk.net", "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.20", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-openai-host-hash" => "946389744", "x-real-ip" => "74.7.227.20" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0" }, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.398627.0>, params: %{}, path_info: ["sources", "3", "media", "10622", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0"}, {"from", "gptbot(at)openai.com"}, {"host", "pinchflat.moozuk.net"}, {"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.20"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-openai-host-hash", "946389744"}, {"x-real-ip", "74.7.227.20"} ], request_path: "/sources/3/media/10622/force_download", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIMyG51YUkNRw7AAFMLC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.398626.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/media/10622/force_download", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46136}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0", "from" => "gptbot(at)openai.com", "host" => "pinchflat.moozuk.net", "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.20", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-openai-host-hash" => "946389744", "x-real-ip" => "74.7.227.20" }, 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/media/10622/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.398626.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/media/10622/force_download", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46136}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0", "from" => "gptbot(at)openai.com", "host" => "pinchflat.moozuk.net", "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.20", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-openai-host-hash" => "946389744", "x-real-ip" => "74.7.227.20" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUE (truncated) 09:49:35.079 [info] GET /sources/3/media/10622 09:49:35.079 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10622", "prevent_download" => "true", "source_id" => "3"} Pipelines: [:browser] 09:49:35.080 [debug] QUERY OK source="media_items" db=0.2ms idle=1085.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" = ?) [10622] 09:49:35.080 [debug] QUERY OK source="sources" db=0.1ms idle=558.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" = ?) [3] 09:49:35.080 [debug] QUERY OK source="tasks" db=0.3ms idle=1086.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" [10622] 09:49:35.080 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=86.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" = ?) [2331] 09:49:35.081 [debug] QUERY OK source="settings" db=0.0ms idle=87.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:49:35.081 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:35.081 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:35.081 [debug] QUERY OK source="media_profiles" db=0.0ms 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:49:35.082 [info] Sent 200 in 3ms 09:49:41.325 [info] GET /sources/3/media/10623 09:49:41.325 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10623", "prevent_download" => "true", "source_id" => "3"} Pipelines: [:browser] 09:49:41.325 [debug] QUERY OK source="media_items" db=0.1ms idle=798.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" = ?) [10623] 09:49:41.326 [debug] QUERY OK source="tasks" db=0.0ms idle=332.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" [10623] 09:49:41.326 [debug] QUERY OK source="sources" db=0.1ms idle=332.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" = ?) [3] 09:49:41.326 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=332.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" = ?) [2332] 09:49:41.326 [debug] QUERY OK source="settings" db=0.0ms idle=332.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:49:41.326 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:41.327 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 09:49:41.327 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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:49:41.328 [info] Sent 200 in 2ms 09:49:46.684 [info] GET /sources/3/media/10623/force_download 09:49:46.684 [debug] QUERY OK source="settings" db=0.1ms idle=1690.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:49:46.685 [debug] QUERY OK source="settings" db=0.1ms idle=1690.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:49:46.685 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 09:49:46.685 [error] #PID<0.398639.0> running PinchflatWeb.Endpoint (connection #PID<0.398638.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /sources/3/media/10623/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/3/media/10623/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.398638.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/media/10623/force_download", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 45966}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0", "from" => "gptbot(at)openai.com", "host" => "pinchflat.moozuk.net", "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.20", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-openai-host-hash" => "946389744", "x-real-ip" => "74.7.227.20" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0" }, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.398639.0>, params: %{}, path_info: ["sources", "3", "media", "10623", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, deflate"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0"}, {"from", "gptbot(at)openai.com"}, {"host", "pinchflat.moozuk.net"}, {"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.20"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-openai-host-hash", "946389744"}, {"x-real-ip", "74.7.227.20"} ], request_path: "/sources/3/media/10623/force_download", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIMyHspVlFp4JgkAEfKj"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.398638.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/media/10623/force_download", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 45966}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0", "from" => "gptbot(at)openai.com", "host" => "pinchflat.moozuk.net", "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.20", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-openai-host-hash" => "946389744", "x-real-ip" => "74.7.227.20" }, 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/media/10623/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.398638.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/media/10623/force_download", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 45966}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUEFS.BwQRCVgqCj-P9fVz-S0fxAht33GLp6wZNe_Z7Emi5E0", "from" => "gptbot(at)openai.com", "host" => "pinchflat.moozuk.net", "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.20", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-openai-host-hash" => "946389744", "x-real-ip" => "74.7.227.20" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYRmlkUGcyVXBweXFoMk1hcFI4emxXUE (truncated) 09:49:51.499 [info] GET /sources/3/media/10623/edit 09:49:51.499 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "10623", "source_id" => "3"} Pipelines: [:browser] 09:49:51.499 [debug] QUERY OK source="media_items" db=0.3ms idle=1505.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" = ?) [10623] 09:49:51.500 [debug] QUERY OK source="settings" db=0.1ms idle=1506.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:49:51.500 [debug] QUERY OK source="settings" db=0.0ms idle=962.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:49:51.500 [debug] QUERY OK source="settings" db=0.0ms idle=506.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:49:51.501 [info] Sent 200 in 2ms 09:49:59.705 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:50:00.048 [info] {"source":"oban","duration":243,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:50:29.706 [info] {"source":"oban","duration":732,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:50:59.707 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:51:00.049 [info] {"source":"oban","duration":218,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:51:29.708 [info] {"source":"oban","duration":689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:51:59.709 [info] {"source":"oban","duration":421,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:52:00.050 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:52:29.710 [info] {"source":"oban","duration":329,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:52:59.711 [info] {"source":"oban","duration":696,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:53:00.051 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:53:29.712 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:53:59.713 [info] {"source":"oban","duration":645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:54:00.052 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:54:29.714 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:54:59.715 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:55:00.053 [info] {"source":"oban","duration":227,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:55:29.716 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:55:59.717 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:56:00.054 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:56:29.718 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:56:59.719 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:57:00.055 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:57:29.720 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:57:59.721 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:58:00.056 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:58:29.722 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:58:59.723 [info] {"source":"oban","duration":829,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:59:00.057 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 09:59:29.725 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 09:59:59.726 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:00:00.058 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:00:29.727 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:00:59.728 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:00.059 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:01:29.729 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:01:59.730 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:02:00.060 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:02:29.731 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:02:59.732 [info] {"source":"oban","duration":680,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:03:00.061 [info] {"source":"oban","duration":233,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:03:29.733 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:03:59.734 [info] {"source":"oban","duration":752,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:04:00.062 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:04:20.426 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766311460426685834,"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"]} 10:04:20.427 [debug] QUERY OK source="media_items" db=0.3ms idle=1432.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" = ?) [2241] 10:04:20.427 [info] User scripts lifecyle file either not present or is empty. Skipping. 10:04:20.427 [debug] QUERY OK source="sources" db=0.3ms idle=1008.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" = ?) [4] 10:04:20.428 [debug] QUERY OK source="media_profiles" db=0.1ms idle=433.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:04:20.428 [debug] QUERY OK source="media_items" db=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 [2241] 10:04:20.428 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [2241] 10:04:20.428 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 10:04:20.429 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 10:04:20.429 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 10:04:20.429 [debug] Running yt-dlp command for action: get_downloadable_status 10:04:20.429 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 10:04:20.429 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 10:04:20.429 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 10:04:20.430 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/dd/5b/dd5bcaba3e8b0217e89150f1636cb210ce8c9c5148005c0736d0b9502bcffdcc.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 10:04:22.596 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/dd/5b/dd5bcaba3e8b0217e89150f1636cb210ce8c9c5148005c0736d0b9502bcffdcc.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 10:04:22.596 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 10:04:22.596 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2169678,"event":"job:exception","queue_time":55985,"attempt":12,"tags":["media_item","media_fetching","show_in_dashboard"]} 10:04:29.735 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:04:59.736 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:00.063 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:05:29.737 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:05:59.738 [info] {"source":"oban","duration":674,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:06:00.064 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:06:29.739 [info] {"source":"oban","duration":684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:06:59.740 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:00.065 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:07:29.741 [info] {"source":"oban","duration":786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:07:59.742 [info] {"source":"oban","duration":872,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:08:00.066 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:08:29.744 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:08:59.745 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:09:00.067 [info] {"source":"oban","duration":257,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:09:29.746 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:09:59.747 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:10:00.068 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:10:29.748 [info] {"source":"oban","duration":671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:10:59.749 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:11:00.069 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:11:29.750 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:11:59.751 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:12:00.070 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:12:29.752 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:12:59.753 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:13:00.071 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:13:29.754 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:13:59.755 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:14:00.072 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:14:29.756 [info] {"source":"oban","duration":781,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:14:59.757 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:00.073 [info] {"source":"oban","duration":127,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:15:29.758 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:15:59.759 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:16:00.074 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:16:29.760 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:16:59.761 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:17:00.075 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:17:29.762 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:17:59.763 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:18:00.076 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:18:29.764 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:18:59.765 [info] {"source":"oban","duration":873,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:19:00.077 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:19:29.767 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:19:59.768 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:20:00.078 [info] {"source":"oban","duration":146,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:20:29.769 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:20:59.770 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:21:00.079 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:21:29.771 [info] {"source":"oban","duration":811,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:21:59.773 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:22:00.080 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:22:29.774 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:22:59.775 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:23:00.081 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:23:29.776 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:23:59.777 [info] {"source":"oban","duration":744,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:24:00.082 [info] {"source":"oban","duration":233,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:24:29.778 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:24:59.779 [info] {"source":"oban","duration":492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:25:00.083 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:25:29.780 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:25:59.781 [info] {"source":"oban","duration":663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:26:00.084 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:26:29.782 [info] {"source":"oban","duration":393,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:26:59.783 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:27:00.085 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:27:29.784 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:27:59.785 [info] {"source":"oban","duration":499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:28:00.086 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:28:29.786 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:28:59.787 [info] {"source":"oban","duration":468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:29:00.087 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:29:29.788 [info] {"source":"oban","duration":759,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:29:59.789 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:30:00.088 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:30:29.790 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:30:59.791 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:31:00.089 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:31:29.792 [info] {"source":"oban","duration":446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:31:59.793 [info] {"source":"oban","duration":478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:32:00.090 [info] {"source":"oban","duration":219,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:32:29.794 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:32:59.795 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:33:00.091 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:33:29.796 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:33:59.797 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:34:00.092 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:34:29.798 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:34:59.799 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:35:00.093 [info] {"source":"oban","duration":137,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:35:29.800 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:35:59.801 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:36:00.094 [info] {"source":"oban","duration":136,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:36:29.802 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:36:59.803 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:37:00.095 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:37:29.804 [info] {"source":"oban","duration":683,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:37:59.805 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:38:00.096 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:38:29.806 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:38:59.807 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:39:00.097 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:39:29.808 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:39:59.809 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:40:00.098 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:40:29.810 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:40:59.811 [info] {"source":"oban","duration":731,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:41:00.099 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:41:29.812 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:41:59.813 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:42:00.100 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:42:29.814 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:42:59.815 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:43:00.101 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:43:29.816 [info] {"source":"oban","duration":410,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:43:59.817 [info] {"source":"oban","duration":379,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:44:00.102 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:44:29.818 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:44:59.819 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:45:00.103 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:45:29.820 [info] {"source":"oban","duration":768,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:45:59.821 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:46:00.104 [info] {"source":"oban","duration":132,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:46:29.822 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:46:59.823 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:47:00.105 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:47:29.824 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:47:59.825 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:48:00.106 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:48:29.826 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:48:59.827 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:49:00.107 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:49:29.828 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:49:59.829 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:50:00.108 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:50:29.830 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:50:59.831 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:51:00.109 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:51:29.832 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:51:59.833 [info] {"source":"oban","duration":764,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:52:00.110 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:52:29.835 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:52:59.836 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:53:00.111 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:53:29.837 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:53:59.838 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:54:00.112 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:54:29.839 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:54:59.840 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:55:00.113 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:55:29.841 [info] {"source":"oban","duration":451,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:55:59.842 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:56:00.114 [info] {"source":"oban","duration":120,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:56:29.843 [info] {"source":"oban","duration":752,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:56:59.844 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:57:00.115 [info] {"source":"oban","duration":141,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:57:29.845 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:57:59.846 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:58:00.116 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:58:29.847 [info] {"source":"oban","duration":619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:58:59.848 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:59:00.117 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 10:59:29.849 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 10:59:59.850 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:00:00.118 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:00:29.851 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:00:59.852 [info] {"source":"oban","duration":492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:01:00.119 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:01:29.853 [info] {"source":"oban","duration":816,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:01:59.855 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:02:00.120 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:02:29.856 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:02:59.857 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:03:00.121 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:03:29.858 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:03:59.859 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:04:00.122 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:04:29.860 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:04:59.861 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:05:00.123 [info] {"source":"oban","duration":331,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:05:29.862 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:05:59.863 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:06:00.124 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:06:29.864 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:06:59.865 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:00.125 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:07:29.866 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:07:59.867 [info] {"source":"oban","duration":653,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:08:00.126 [info] {"source":"oban","duration":243,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:08:29.869 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:08:59.870 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:09:00.127 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:09:29.871 [info] {"source":"oban","duration":734,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:09:59.872 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:10:00.128 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:10:29.874 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:10:59.875 [info] {"source":"oban","duration":441,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:00.129 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:11:29.876 [info] {"source":"oban","duration":674,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:11:59.877 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:12:00.130 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:12:29.878 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:12:59.879 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:13:00.131 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:13:29.880 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:13:59.881 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:14:00.132 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:14:29.882 [info] {"source":"oban","duration":870,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:14:59.884 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:15:00.133 [info] {"source":"oban","duration":258,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:15:29.886 [info] {"source":"oban","duration":1093,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:15:59.887 [info] {"source":"oban","duration":635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:16:00.134 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:16:29.888 [info] {"source":"oban","duration":613,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:16:59.889 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:17:00.135 [info] {"source":"oban","duration":222,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:17:29.890 [info] {"source":"oban","duration":947,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:17:44.889 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766315864889645153,"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"]} 11:17:44.890 [debug] QUERY OK source="media_items" db=0.2ms idle=1895.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" = ?) [2241] 11:17:44.890 [info] User scripts lifecyle file either not present or is empty. Skipping. 11:17:44.890 [debug] QUERY OK source="sources" db=0.0ms idle=1896.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" = ?) [4] 11:17:44.890 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1008.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:17:44.890 [debug] QUERY OK source="media_items" db=0.1ms 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 [2241] 11:17:44.891 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [2241] 11:17:44.891 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 11:17:44.891 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:17:44.892 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:17:44.892 [debug] Running yt-dlp command for action: get_downloadable_status 11:17:44.892 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:17:44.892 [debug] QUERY OK source="settings" db=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:17:44.893 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:17:44.893 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/b4/2e/b42eff6dc27c651cdf52341da5fca6f6239ea86f31624deaefaa638f43335f92.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 11:17:47.268 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/b4/2e/b42eff6dc27c651cdf52341da5fca6f6239ea86f31624deaefaa638f43335f92.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 11:17:47.268 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 11:17:47.269 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2379117,"event":"job:exception","queue_time":292490,"attempt":13,"tags":["media_item","media_fetching","show_in_dashboard"]} 11:17:59.892 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:18:00.136 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:18:29.893 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:18:59.894 [info] {"source":"oban","duration":917,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:19:00.137 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:19:29.896 [info] {"source":"oban","duration":772,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:19:59.898 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:20:00.138 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:20:29.899 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:20:59.900 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:21:00.139 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:21:29.901 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:21:59.902 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:22:00.140 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:22:29.903 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:22:59.904 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:23:00.141 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:23:29.905 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:23:59.906 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:24:00.142 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:24:29.907 [info] {"source":"oban","duration":724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:24:59.908 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:25:00.143 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:25:29.909 [info] {"source":"oban","duration":736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:25:59.911 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:26:00.144 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:26:29.912 [info] {"source":"oban","duration":613,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:26:59.913 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:27:00.145 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:27:29.914 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:27:59.916 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:28:00.146 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:28:29.917 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:28:59.918 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:00.147 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:29:29.919 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:29:59.920 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:30:00.148 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:30:29.921 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:30:59.922 [info] {"source":"oban","duration":811,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:31:00.149 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:31:29.924 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:31:59.925 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:32:00.150 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:32:29.926 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:32:59.927 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:33:00.151 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:33:29.928 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:33:59.929 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:34:00.152 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:34:29.930 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:34:59.931 [info] {"source":"oban","duration":462,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:35:00.153 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:35:29.932 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:35:59.933 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:36:00.154 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:36:29.934 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:36:59.935 [info] {"source":"oban","duration":686,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:37:00.155 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:37:29.936 [info] {"source":"oban","duration":757,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:37:59.937 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:38:00.156 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:38:29.938 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:38:59.939 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:39:00.157 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:39:29.940 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:39:59.941 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:40:00.158 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:40:29.942 [info] {"source":"oban","duration":495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:40:59.943 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:41:00.159 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:41:29.944 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:41:47.107 [info] GET / 11:41:47.108 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 11:41:47.108 [debug] QUERY OK source="settings" db=0.1ms 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 [] 11:41:47.108 [debug] QUERY OK source="media_profiles" db=0.0ms idle=114.5ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 11:41:47.108 [debug] QUERY OK source="sources" db=0.0ms idle=114.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 11:41:47.109 [debug] QUERY OK source="media_items" db=1.0ms idle=114.7ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 11:41:47.110 [debug] QUERY OK source="media_items" db=0.2ms idle=115.9ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 11:41:47.110 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:41:47.110 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:41:47.110 [debug] QUERY OK source="settings" db=0.1ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:41:47.111 [debug] QUERY OK source="tasks" db=0.2ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 11:41:47.112 [debug] QUERY OK source="media_items" db=0.3ms idle=1.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)) [] 11:41:47.112 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 11:41:47.112 [debug] QUERY OK source="sources" db=0.1ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" IN (?,?)) [4, 3] 11:41:47.114 [debug] QUERY OK source="media_items" db=0.9ms idle=2.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 11:41:47.114 [debug] QUERY OK source="media_items" db=0.3ms idle=2.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 11:41:47.114 [debug] QUERY OK source="sources" db=0.0ms idle=2.6ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 11:41:47.115 [info] Sent 200 in 7ms 11:41:49.205 [info] GET / 11:41:49.205 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 11:41:49.206 [debug] QUERY OK source="settings" db=0.3ms idle=831.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:41:49.206 [debug] QUERY OK source="media_profiles" db=0.0ms idle=212.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 11:41:49.206 [debug] QUERY OK source="sources" db=0.1ms idle=212.3ms SELECT count(s0."id") FROM "sources" AS s0 [] 11:41:49.207 [debug] QUERY OK source="media_items" db=0.8ms idle=212.6ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 11:41:49.207 [debug] QUERY OK source="media_items" db=0.3ms idle=213.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 11:41:49.208 [debug] QUERY OK source="settings" db=0.0ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:41:49.208 [debug] QUERY OK source="settings" db=0.0ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:41:49.208 [debug] QUERY OK source="settings" db=0.0ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 11:41:49.209 [debug] QUERY OK source="tasks" db=0.1ms idle=1.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"] 11:41:49.209 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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)) [] 11:41:49.210 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 11:41:49.210 [debug] QUERY OK source="sources" db=0.0ms idle=1.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, 3] 11:41:49.211 [debug] QUERY OK source="media_items" db=0.5ms idle=2.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"))) [] 11:41:49.211 [debug] QUERY OK source="media_items" db=0.3ms idle=2.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_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] 11:41:49.211 [debug] QUERY OK source="sources" db=0.0ms idle=2.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 11:41:49.212 [info] Sent 200 in 7ms 11:41:59.945 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:42:00.160 [info] {"source":"oban","duration":251,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:42:29.946 [info] {"source":"oban","duration":668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:42:59.947 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:43:00.161 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:43:29.948 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:43:59.949 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:44:00.162 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:44:29.950 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:44:59.951 [info] {"source":"oban","duration":666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:45:00.163 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:45:29.952 [info] {"source":"oban","duration":733,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:45:59.953 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:46:00.164 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:46:29.954 [info] {"source":"oban","duration":813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:46:59.956 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:47:00.165 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:47:29.958 [info] {"source":"oban","duration":743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:47:59.959 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:48:00.166 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:48:29.960 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:48:59.961 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:49:00.167 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:49:29.962 [info] {"source":"oban","duration":653,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:49:59.963 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:50:00.168 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:50:29.964 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:50:59.965 [info] {"source":"oban","duration":645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:51:00.169 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:51:29.966 [info] {"source":"oban","duration":463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:51:59.967 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:52:00.170 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:52:29.968 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:52:59.969 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:53:00.171 [info] {"source":"oban","duration":209,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:53:29.970 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:53:59.971 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:54:00.172 [info] {"source":"oban","duration":114,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:54:29.972 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:54:59.973 [info] {"source":"oban","duration":727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:55:00.173 [info] {"source":"oban","duration":132,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:55:29.974 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:55:59.975 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:56:00.174 [info] {"source":"oban","duration":224,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:56:29.976 [info] {"source":"oban","duration":784,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:56:59.978 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:57:00.175 [info] {"source":"oban","duration":227,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:57:29.979 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:57:59.980 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:58:00.176 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:58:29.981 [info] {"source":"oban","duration":721,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:58:59.983 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:59:00.177 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 11:59:29.984 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 11:59:59.985 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:00:00.178 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:00:29.986 [info] {"source":"oban","duration":730,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:00:59.988 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:01:00.179 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:01:29.989 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:01:59.990 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:02:00.180 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:02:29.991 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:02:59.992 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:03:00.182 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:03:29.993 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:03:59.994 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:04:00.183 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:04:29.995 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:04:59.996 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:05:00.184 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:05:29.997 [info] {"source":"oban","duration":680,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:05:59.998 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:06:00.185 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:06:29.999 [info] {"source":"oban","duration":653,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:07:00.001 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:07:00.186 [info] {"source":"oban","duration":224,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:07:30.002 [info] {"source":"oban","duration":492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:08:00.003 [info] {"source":"oban","duration":483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:08:00.187 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:08:30.004 [info] {"source":"oban","duration":489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:09:00.005 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:09:00.188 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:09:30.006 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:10:00.007 [info] {"source":"oban","duration":478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:10:00.189 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:10:30.008 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:11:00.009 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:11:00.190 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:11:30.011 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:12:00.012 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:12:00.191 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:12:30.013 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:13:00.014 [info] {"source":"oban","duration":735,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:13:00.192 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:13:30.015 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:14:00.016 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:14:00.193 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:14:30.017 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:15:00.019 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:15:00.194 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:15:30.020 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:16:00.021 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:16:00.195 [info] {"source":"oban","duration":261,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:16:30.022 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:17:00.023 [info] {"source":"oban","duration":480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:17:00.196 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:17:30.024 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:18:00.025 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:18:00.197 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:18:30.026 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:19:00.027 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:19:00.199 [info] {"source":"oban","duration":205,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:19:30.028 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:20:00.029 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:20:00.200 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:20:30.030 [info] {"source":"oban","duration":489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:21:00.031 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:21:00.201 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:21:30.032 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:22:00.033 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:22:00.202 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:22:30.034 [info] {"source":"oban","duration":658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:23:00.035 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:23:00.203 [info] {"source":"oban","duration":233,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:23:30.036 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:24:00.037 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:24:00.204 [info] {"source":"oban","duration":205,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:24:30.038 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:00.039 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:25:00.205 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:25:30.040 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:26:00.041 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:26:00.206 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:26:30.042 [info] {"source":"oban","duration":713,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:27:00.043 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:27:00.207 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:27:30.044 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:28:00.045 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:28:00.208 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:28:30.046 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:29:00.047 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:29:00.209 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:29:30.048 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:30:00.049 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:30:00.210 [info] {"source":"oban","duration":221,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:30:30.050 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:31:00.051 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:31:00.211 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:31:30.052 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:32:00.053 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:32:00.212 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:32:30.054 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:33:00.055 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:33:00.213 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:33:30.056 [info] {"source":"oban","duration":809,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:34:00.057 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:34:00.214 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:34:30.059 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:35:00.060 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:35:00.215 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:35:30.061 [info] {"source":"oban","duration":748,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:36:00.063 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:36:00.216 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:36:30.064 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:37:00.065 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:37:00.217 [info] {"source":"oban","duration":222,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:37:30.066 [info] {"source":"oban","duration":785,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:38:00.067 [info] {"source":"oban","duration":458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:38:00.218 [info] {"source":"oban","duration":214,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:38:30.068 [info] {"source":"oban","duration":311,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:39:00.069 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:39:00.219 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:39:30.070 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:40:00.071 [info] {"source":"oban","duration":782,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:40:00.220 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:40:30.073 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:41:00.074 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:41:00.222 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:41:30.075 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:42:00.076 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:42:00.223 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:42:30.078 [info] {"source":"oban","duration":785,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:43:00.080 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:43:00.225 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:43:30.081 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:44:00.082 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:44:00.226 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:44:30.083 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:45:00.084 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:45:00.227 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:45:30.087 [info] {"source":"oban","duration":889,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:46:00.088 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:46:00.228 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:46:30.089 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:47:00.090 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:47:00.229 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:47:30.091 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:48:00.092 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:48:00.230 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:48:30.093 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:49:00.095 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:49:00.231 [info] {"source":"oban","duration":209,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:49:30.096 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:50:00.097 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:50:00.232 [info] {"source":"oban","duration":138,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:50:30.098 [info] {"source":"oban","duration":660,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:51:00.099 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:51:00.233 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:51:30.100 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:52:00.101 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:52:00.234 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:52:30.102 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:53:00.103 [info] {"source":"oban","duration":486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:53:00.235 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:53:30.104 [info] {"source":"oban","duration":445,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:54:00.105 [info] {"source":"oban","duration":448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:54:00.236 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:54:30.107 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:55:00.108 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:55:00.237 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:55:30.109 [info] {"source":"oban","duration":708,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:56:00.111 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:56:00.238 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:56:30.112 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:57:00.113 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:57:00.239 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:57:30.115 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:58:00.116 [info] {"source":"oban","duration":722,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:58:00.240 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:58:30.118 [info] {"source":"oban","duration":647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:59:00.119 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 12:59:00.241 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 12:59:30.120 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:00:00.121 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:00:00.242 [info] {"source":"oban","duration":240,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:00:30.122 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:01:00.123 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:01:00.243 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:01:30.125 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:02:00.127 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:02:00.244 [info] {"source":"oban","duration":229,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:02:30.128 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:03:00.129 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:03:00.245 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:03:30.130 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:04:00.131 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:04:00.246 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:04:30.132 [info] {"source":"oban","duration":658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:05:00.133 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:05:00.247 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:05:30.134 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:06:00.135 [info] {"source":"oban","duration":723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:06:00.248 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:06:30.137 [info] {"source":"oban","duration":666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:07:00.138 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:07:00.249 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:07:30.139 [info] {"source":"oban","duration":766,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:08:00.141 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:08:00.250 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:08:30.142 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:09:00.143 [info] {"source":"oban","duration":467,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:09:00.251 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:09:30.144 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:10:00.145 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:10:00.252 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:10:30.146 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:11:00.148 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:11:00.253 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:11:30.149 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:12:00.150 [info] {"source":"oban","duration":692,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:12:00.255 [info] {"source":"oban","duration":146,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:12:30.152 [info] {"source":"oban","duration":859,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:13:00.153 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:13:00.256 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:13:30.154 [info] {"source":"oban","duration":728,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:14:00.155 [info] {"source":"oban","duration":487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:14:00.257 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:14:30.156 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:15:00.157 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:15:00.258 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:15:30.158 [info] {"source":"oban","duration":674,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:16:00.159 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:16:00.259 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:16:30.160 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:17:00.161 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:17:00.260 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:17:30.162 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:18:00.163 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:18:00.261 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:18:30.164 [info] {"source":"oban","duration":684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:19:00.165 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:19:00.262 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:19:30.166 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:20:00.167 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:20:00.263 [info] {"source":"oban","duration":222,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:20:30.168 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:21:00.169 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:21:00.264 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:21:30.170 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:22:00.172 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:22:00.265 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:22:30.173 [info] {"source":"oban","duration":499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:23:00.174 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:23:00.266 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:23:30.175 [info] {"source":"oban","duration":778,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:24:00.177 [info] {"source":"oban","duration":670,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:24:00.267 [info] {"source":"oban","duration":221,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:24:30.178 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:25:00.179 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:25:00.268 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:25:30.180 [info] {"source":"oban","duration":358,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:26:00.181 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:26:00.269 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:26:30.183 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:27:00.184 [info] {"source":"oban","duration":748,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:27:00.270 [info] {"source":"oban","duration":137,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:27:30.186 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:28:00.187 [info] {"source":"oban","duration":460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:28:00.271 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:28:30.188 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:29:00.190 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:29:00.272 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:29:30.191 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:30:00.192 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:30:00.273 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:30:30.193 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:31:00.194 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:31:00.274 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:31:30.195 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:32:00.196 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:32:00.275 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:32:30.197 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:33:00.198 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:33:00.276 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:33:30.199 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:34:00.200 [info] {"source":"oban","duration":733,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:34:00.277 [info] {"source":"oban","duration":135,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:34:30.201 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:35:00.202 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:35:00.278 [info] {"source":"oban","duration":319,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:35:30.203 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:36:00.204 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:36:00.279 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:36:30.206 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:37:00.207 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:37:00.280 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:37:30.209 [info] {"source":"oban","duration":700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:38:00.210 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:38:00.281 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:38:30.211 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:39:00.213 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:39:00.282 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:39:30.214 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:40:00.215 [info] {"source":"oban","duration":731,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:40:00.283 [info] {"source":"oban","duration":142,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:40:30.217 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:41:00.218 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:41:00.284 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:41:25.193 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766324485193518523,"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"]} 13:41:25.193 [debug] QUERY OK source="media_items" db=0.2ms idle=1186.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" = ?) [2241] 13:41:25.194 [info] User scripts lifecyle file either not present or is empty. Skipping. 13:41:25.194 [debug] QUERY OK source="sources" db=0.1ms idle=1186.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" = ?) [4] 13:41:25.194 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1007.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:41:25.194 [debug] QUERY OK source="media_items" db=0.2ms idle=6.8ms SELECT 1 FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) LIMIT 1 [2241] 13:41:25.195 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [2241] 13:41:25.195 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 13:41:25.195 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 13:41:25.195 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 13:41:25.196 [debug] Running yt-dlp command for action: get_downloadable_status 13:41:25.196 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 13:41:25.196 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 13:41:25.196 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 13:41:25.196 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/e2/11/e211fb22800b8438f2f221c45463533c120fcf51aa73d0aa7af7ee4478ecacdc.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 13:41:27.718 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/e2/11/e211fb22800b8438f2f221c45463533c120fcf51aa73d0aa7af7ee4478ecacdc.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 13:41:27.718 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 13:41:27.718 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2524845,"event":"job:exception","queue_time":924090,"attempt":14,"tags":["media_item","media_fetching","show_in_dashboard"]} 13:41:30.219 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:42:00.220 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:42:00.285 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:42:30.221 [info] {"source":"oban","duration":744,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:43:00.222 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:43:00.286 [info] {"source":"oban","duration":259,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:43:30.223 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:44:00.224 [info] {"source":"oban","duration":433,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:44:00.287 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:44:30.225 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:45:00.227 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:45:00.288 [info] {"source":"oban","duration":145,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:45:30.228 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:46:00.230 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:46:00.289 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:46:30.231 [info] {"source":"oban","duration":763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:47:00.233 [info] {"source":"oban","duration":915,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:47:00.290 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:47:30.235 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:48:00.237 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:48:00.291 [info] {"source":"oban","duration":128,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:48:30.239 [info] {"source":"oban","duration":807,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:49:00.240 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:49:00.292 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:49:30.241 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:50:00.242 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:50:00.293 [info] {"source":"oban","duration":215,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:50:30.244 [info] {"source":"oban","duration":733,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:51:00.245 [info] {"source":"oban","duration":634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:51:00.295 [info] {"source":"oban","duration":137,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:51:30.246 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:52:00.247 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:52:00.296 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:52:30.248 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:53:00.249 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:53:00.297 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:53:30.250 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:54:00.252 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:54:00.298 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:54:30.254 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:55:00.255 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:55:00.299 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:55:30.256 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:56:00.257 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:56:00.300 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:56:30.258 [info] {"source":"oban","duration":757,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:57:00.259 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:57:00.301 [info] {"source":"oban","duration":126,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:57:30.260 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:58:00.262 [info] {"source":"oban","duration":387,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:58:00.302 [info] {"source":"oban","duration":145,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:58:30.263 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:59:00.264 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 13:59:00.303 [info] {"source":"oban","duration":134,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 13:59:30.265 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:00:00.266 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:00:00.304 [info] {"source":"oban","duration":142,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:00:30.267 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:01:00.268 [info] {"source":"oban","duration":730,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:01:00.305 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:01:30.269 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:02:00.270 [info] {"source":"oban","duration":781,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:02:00.306 [info] {"source":"oban","duration":229,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:02:30.272 [info] {"source":"oban","duration":676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:03:00.273 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:03:00.307 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:03:30.274 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:04:00.275 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:04:00.308 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:04:30.277 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:05:00.278 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:05:00.309 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:05:30.281 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:06:00.282 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:06:00.310 [info] {"source":"oban","duration":141,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:06:30.283 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:07:00.284 [info] {"source":"oban","duration":821,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:07:00.311 [info] {"source":"oban","duration":120,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:07:30.285 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:08:00.287 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:08:00.312 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:08:30.288 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:09:00.290 [info] {"source":"oban","duration":721,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:09:00.313 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:09:30.291 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:10:00.293 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:10:00.314 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:10:30.296 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:11:00.297 [info] {"source":"oban","duration":423,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:11:00.315 [info] {"source":"oban","duration":80,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:11:30.299 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:12:00.300 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:12:00.316 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:12:30.302 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:13:00.303 [info] {"source":"oban","duration":659,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:13:00.317 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:13:30.306 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:14:00.308 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:14:00.318 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:14:30.309 [info] {"source":"oban","duration":635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:15:00.311 [info] {"source":"oban","duration":767,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:15:00.319 [info] {"source":"oban","duration":99,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:15:30.313 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:16:00.315 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:16:00.319 [info] {"source":"oban","duration":71,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:16:30.316 [info] {"source":"oban","duration":885,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:17:00.318 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:17:00.321 [info] {"source":"oban","duration":109,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:17:30.319 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:18:00.320 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:18:00.322 [info] {"source":"oban","duration":91,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:18:30.322 [info] {"source":"oban","duration":778,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:19:00.323 [info] {"source":"oban","duration":218,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:19:00.324 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:19:30.325 [info] {"source":"oban","duration":760,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:20:00.324 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:20:00.327 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:20:30.328 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:21:00.326 [info] {"source":"oban","duration":205,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:21:00.330 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:21:30.331 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:22:00.327 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:22:00.332 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:22:30.333 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:23:00.328 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:23:00.335 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:23:30.337 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:24:00.329 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:24:00.339 [info] {"source":"oban","duration":400,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:24:30.340 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:25:00.330 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:25:00.342 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:25:30.343 [info] {"source":"oban","duration":475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:26:00.331 [info] {"source":"oban","duration":113,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:26:00.344 [info] {"source":"oban","duration":392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:26:30.345 [info] {"source":"oban","duration":444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:27:00.332 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:27:00.346 [info] {"source":"oban","duration":262,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:27:30.347 [info] {"source":"oban","duration":485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:28:00.333 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:28:00.349 [info] {"source":"oban","duration":857,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:28:30.351 [info] {"source":"oban","duration":495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:29:00.334 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:29:00.352 [info] {"source":"oban","duration":474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:29:30.353 [info] {"source":"oban","duration":821,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:30:00.335 [info] {"source":"oban","duration":238,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:30:00.355 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:30:30.356 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:31:00.336 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:31:00.358 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:31:30.359 [info] {"source":"oban","duration":768,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:32:00.337 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:32:00.360 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:32:30.361 [info] {"source":"oban","duration":666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:33:00.338 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:33:00.362 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:33:30.363 [info] {"source":"oban","duration":488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:34:00.339 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:34:00.364 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:34:30.365 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:35:00.340 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:35:00.366 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:35:30.367 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:36:00.341 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:36:00.368 [info] {"source":"oban","duration":705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:36:30.370 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:37:00.342 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:37:00.371 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:37:30.372 [info] {"source":"oban","duration":707,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:38:00.343 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:38:00.373 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:38:30.374 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:39:00.344 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:39:00.375 [info] {"source":"oban","duration":469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:39:30.376 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:40:00.345 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:40:00.377 [info] {"source":"oban","duration":457,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:40:30.378 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:41:00.346 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:41:00.379 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:41:30.380 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:42:00.347 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:42:00.381 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:42:30.382 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:43:00.348 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:43:00.383 [info] {"source":"oban","duration":834,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:43:30.385 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:44:00.349 [info] {"source":"oban","duration":240,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:44:00.386 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:44:30.387 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:45:00.350 [info] {"source":"oban","duration":246,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:45:00.388 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:45:30.390 [info] {"source":"oban","duration":468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:46:00.351 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:46:00.391 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:46:30.392 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:47:00.352 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:47:00.393 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:47:30.395 [info] {"source":"oban","duration":771,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:48:00.353 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:48:00.396 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:48:30.397 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:49:00.354 [info] {"source":"oban","duration":210,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:49:00.398 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:49:30.399 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:50:00.355 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:50:00.400 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:50:30.402 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:51:00.356 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:51:00.403 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:51:30.404 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:52:00.357 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:52:00.405 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:52:30.407 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:53:00.358 [info] {"source":"oban","duration":313,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:53:00.408 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:53:30.409 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:54:00.359 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:54:00.410 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:54:30.411 [info] {"source":"oban","duration":714,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:00.360 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:55:00.413 [info] {"source":"oban","duration":679,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:55:30.415 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:56:00.361 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:56:00.416 [info] {"source":"oban","duration":438,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:56:30.418 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:57:00.362 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:57:00.420 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:57:30.421 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:58:00.363 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:58:00.422 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:58:30.423 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:59:00.364 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 14:59:00.424 [info] {"source":"oban","duration":699,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 14:59:30.425 [info] {"source":"oban","duration":768,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:00:00.365 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:00:00.427 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:00:30.428 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:01:00.366 [info] {"source":"oban","duration":146,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:01:00.429 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:01:30.431 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:02:00.368 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:02:00.433 [info] {"source":"oban","duration":762,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:02:30.435 [info] {"source":"oban","duration":819,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:03:00.369 [info] {"source":"oban","duration":140,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:03:00.438 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:03:30.439 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:04:00.370 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:04:00.440 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:04:30.441 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:05:00.371 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:05:00.443 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:05:30.444 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:06:00.372 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:06:00.445 [info] {"source":"oban","duration":495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:06:30.446 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:07:00.373 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:07:00.447 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:07:30.448 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:08:00.374 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:08:00.449 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:08:30.450 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:09:00.375 [info] {"source":"oban","duration":88,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:09:00.451 [info] {"source":"oban","duration":426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:09:30.452 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:10:00.376 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:10:00.453 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:10:08.462 [info] GET / 15:10:08.462 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 15:10:08.462 [debug] QUERY OK source="settings" db=0.1ms idle=431.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:10:08.462 [debug] QUERY OK source="media_profiles" db=0.0ms idle=431.8ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 15:10:08.463 [debug] QUERY OK source="sources" db=0.0ms idle=432.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 15:10:08.463 [debug] QUERY OK source="media_items" db=0.7ms idle=432.0ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 15:10:08.464 [debug] QUERY OK source="media_items" db=0.3ms idle=24.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 15:10:08.464 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 15:10:08.464 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 15:10:08.465 [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 [] 15:10:08.465 [debug] QUERY OK source="tasks" db=0.0ms idle=1.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"] 15:10:08.465 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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)) [] 15:10:08.466 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 15:10:08.466 [debug] QUERY OK source="sources" db=0.1ms idle=1.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 (?,?)) [4, 3] 15:10:08.467 [debug] QUERY OK source="media_items" db=0.9ms idle=1.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 15:10:08.468 [debug] QUERY OK source="media_items" db=0.2ms idle=2.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_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:10:08.468 [debug] QUERY OK source="sources" db=0.0ms idle=2.5ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 15:10:08.469 [info] Sent 200 in 6ms 15:10:30.454 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:11:00.377 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:11:00.455 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:11:30.456 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:12:00.379 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:12:00.457 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:12:30.459 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:13:00.380 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:13:00.460 [info] {"source":"oban","duration":461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:13:30.461 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:14:00.381 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:14:00.462 [info] {"source":"oban","duration":692,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:14:30.463 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:15:00.382 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:15:00.464 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:15:30.466 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:16:00.383 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:16:00.467 [info] {"source":"oban","duration":671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:16:30.468 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:17:00.384 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:17:00.469 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:17:30.470 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:18:00.385 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:18:00.471 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:18:30.472 [info] {"source":"oban","duration":769,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:19:00.386 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:19:00.473 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:19:30.474 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:20:00.387 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:20:00.475 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:20:30.476 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:21:00.388 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:21:00.477 [info] {"source":"oban","duration":495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:21:30.479 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:22:00.389 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:22:00.480 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:22:30.482 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:23:00.390 [info] {"source":"oban","duration":246,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:23:00.483 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:23:30.484 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:24:00.391 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:24:00.485 [info] {"source":"oban","duration":661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:24:30.486 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:25:00.392 [info] {"source":"oban","duration":232,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:25:00.487 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:25:30.488 [info] {"source":"oban","duration":463,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:26:00.393 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:26:00.489 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:26:30.490 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:27:00.394 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:27:00.491 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:27:30.492 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:28:00.395 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:28:00.493 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:28:30.494 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:29:00.396 [info] {"source":"oban","duration":210,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:29:00.495 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:29:30.496 [info] {"source":"oban","duration":777,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:30:00.397 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:30:00.498 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:30:30.499 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:31:00.398 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:31:00.500 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:31:30.501 [info] {"source":"oban","duration":699,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:32:00.399 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:32:00.502 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:32:30.503 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:33:00.400 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:33:00.505 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:33:30.507 [info] {"source":"oban","duration":1048,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:34:00.401 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:34:00.509 [info] {"source":"oban","duration":711,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:34:30.511 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:00.402 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:35:00.513 [info] {"source":"oban","duration":786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:30.514 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:35:34.226 [info] {"args":{"id":10433,"quality_upgrade?":true},"id":2322,"meta":{},"system_time":1766331334226743123,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 15:35:34.227 [debug] QUERY OK source="media_items" db=0.1ms idle=185.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" = ?) [10433] 15:35:34.227 [info] User scripts lifecyle file either not present or is empty. Skipping. 15:35:34.227 [debug] QUERY OK source="sources" db=0.2ms idle=185.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] 15:35:34.228 [debug] QUERY OK source="media_metadata" db=0.0ms idle=186.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" = ?) [10433] 15:35:34.228 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 15:35:34.228 [debug] QUERY OK source="settings" db=0.0ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 15:35:34.228 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 15:35:34.228 [debug] Running yt-dlp command for action: get_downloadable_status 15:35:34.229 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 15:35:34.229 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 15:35:34.229 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 15:35:34.229 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=kNxzXvBDQk8 --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/14/82/1482cff908de9431f8a84d3c84627574f97844483404e5f2442b0b24532f1a3f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 15:35:35.805 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=kNxzXvBDQk8 --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/14/82/1482cff908de9431f8a84d3c84627574f97844483404e5f2442b0b24532f1a3f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] kNxzXvBDQk8: 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 15:35:35.805 [error] yt-dlp download error for media item #10433: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] kNxzXvBDQk8: 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" 15:35:35.805 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":10433,"quality_upgrade?":true},"id":2322,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":1578697,"event":"job:exception","queue_time":179236,"attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 15:36:00.403 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:36:00.515 [info] {"source":"oban","duration":661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:36:30.516 [info] {"source":"oban","duration":672,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:37:00.404 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:37:00.517 [info] {"source":"oban","duration":646,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:37:30.518 [info] {"source":"oban","duration":763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:38:00.405 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:38:00.520 [info] {"source":"oban","duration":722,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:38:30.522 [info] {"source":"oban","duration":468,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:00.406 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:39:00.523 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:39:30.524 [info] {"source":"oban","duration":742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:40:00.407 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:40:00.525 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:40:30.526 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:41:00.408 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:41:00.527 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:41:30.528 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:42:00.409 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:42:00.529 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:42:30.530 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:00.410 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:43:00.532 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:43:30.533 [info] {"source":"oban","duration":852,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:44:00.411 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:44:00.535 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:44:30.536 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:45:00.412 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:45:00.537 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:45:30.538 [info] {"source":"oban","duration":654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:46:00.413 [info] {"source":"oban","duration":253,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:46:00.539 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:46:30.540 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:47:00.414 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:47:00.541 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:47:30.542 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:48:00.415 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:48:00.544 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:48:30.545 [info] {"source":"oban","duration":864,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:49:00.416 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:49:00.547 [info] {"source":"oban","duration":663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:49:30.548 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:50:00.417 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:50:00.551 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:50:30.553 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:51:00.418 [info] {"source":"oban","duration":133,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:51:00.554 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:51:30.555 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:52:00.419 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:52:00.557 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:52:30.559 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:53:00.420 [info] {"source":"oban","duration":144,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:53:00.560 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:53:30.562 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:54:00.421 [info] {"source":"oban","duration":216,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:54:00.563 [info] {"source":"oban","duration":347,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:54:30.564 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:55:00.422 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:55:00.565 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:55:30.566 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:56:00.423 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:56:00.567 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:56:30.568 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:57:00.424 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:57:00.569 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:57:30.570 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:58:00.425 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:58:00.572 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:58:30.574 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:59:00.426 [info] {"source":"oban","duration":226,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 15:59:00.575 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 15:59:30.576 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:00:00.427 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:00:00.577 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:00:30.579 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:01:00.428 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:01:00.580 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:01:30.581 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:02:00.429 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:02:00.582 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:02:30.584 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:03:00.430 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:03:00.585 [info] {"source":"oban","duration":741,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:03:30.586 [info] {"source":"oban","duration":942,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:04:00.431 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:04:00.588 [info] {"source":"oban","duration":767,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:04:30.590 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:05:00.432 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:05:00.592 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:05:30.593 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:06:00.433 [info] {"source":"oban","duration":334,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:06:00.595 [info] {"source":"oban","duration":803,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:06:30.597 [info] {"source":"oban","duration":704,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:07:00.434 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:07:00.599 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:07:30.600 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:08:00.435 [info] {"source":"oban","duration":232,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:08:00.601 [info] {"source":"oban","duration":711,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:08:30.603 [info] {"source":"oban","duration":811,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:09:00.437 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:09:00.604 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:09:30.605 [info] {"source":"oban","duration":755,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:10:00.438 [info] {"source":"oban","duration":235,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:10:00.608 [info] {"source":"oban","duration":842,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:10:30.610 [info] {"source":"oban","duration":678,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:11:00.439 [info] {"source":"oban","duration":258,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:11:00.611 [info] {"source":"oban","duration":845,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:11:30.613 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:12:00.441 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:12:00.615 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:12:30.616 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:13:00.442 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:13:00.617 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:13:30.618 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:14:00.443 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:14:00.619 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:14:30.620 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:15:00.444 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:15:00.621 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:15:30.622 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:16:00.445 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:16:00.623 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:16:30.624 [info] {"source":"oban","duration":459,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:17:00.446 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:17:00.625 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:17:30.626 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:18:00.447 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:18:00.627 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:18:30.628 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:19:00.448 [info] {"source":"oban","duration":130,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:19:00.629 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:19:30.630 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:20:00.449 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:20:00.631 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:20:30.632 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:21:00.450 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:21:00.633 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:21:30.634 [info] {"source":"oban","duration":353,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:22:00.451 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:22:00.635 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:22:30.636 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:23:00.452 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:23:00.637 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:23:30.638 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:24:00.453 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:24:00.639 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:24:30.640 [info] {"source":"oban","duration":619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:25:00.456 [info] {"source":"oban","duration":272,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:25:00.641 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:25:30.642 [info] {"source":"oban","duration":848,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:26:00.457 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:26:00.644 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:26:30.645 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:27:00.458 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:27:00.646 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:27:30.647 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:28:00.459 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:28:00.648 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:28:30.649 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:29:00.460 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:29:00.650 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:29:30.651 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:30:00.461 [info] {"source":"oban","duration":235,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:30:00.652 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:30:30.653 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:31:00.462 [info] {"source":"oban","duration":225,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:31:00.654 [info] {"source":"oban","duration":757,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:31:30.656 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:32:00.463 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:32:00.657 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:32:30.658 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:33:00.465 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:33:00.660 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:33:30.661 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:34:00.466 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:34:00.662 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:34:30.663 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:35:00.467 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:35:00.664 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:35:30.665 [info] {"source":"oban","duration":722,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:36:00.468 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:36:00.666 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:36:30.667 [info] {"source":"oban","duration":679,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:37:00.469 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:37:00.668 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:37:30.669 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:38:00.470 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:38:00.670 [info] {"source":"oban","duration":485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:38:30.671 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:39:00.471 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:39:00.672 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:39:30.673 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:40:00.472 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:40:00.674 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:40:30.675 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:41:00.473 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:41:00.676 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:41:30.677 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:42:00.474 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:42:00.678 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:42:30.679 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:43:00.475 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:43:00.680 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:43:30.681 [info] {"source":"oban","duration":799,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:44:00.476 [info] {"source":"oban","duration":137,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:44:00.683 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:44:30.684 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:45:00.477 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:45:00.685 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:45:30.686 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:46:00.478 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:46:00.687 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:46:30.688 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:47:00.479 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:47:00.689 [info] {"source":"oban","duration":792,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:47:30.691 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:48:00.480 [info] {"source":"oban","duration":278,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:48:00.692 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:48:30.693 [info] {"source":"oban","duration":773,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:49:00.481 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:49:00.695 [info] {"source":"oban","duration":800,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:49:30.697 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:50:00.482 [info] {"source":"oban","duration":230,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:50:00.698 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:50:30.700 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:51:00.483 [info] {"source":"oban","duration":229,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:51:00.701 [info] {"source":"oban","duration":833,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:51:30.703 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:52:00.484 [info] {"source":"oban","duration":240,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:52:00.704 [info] {"source":"oban","duration":761,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:52:30.705 [info] {"source":"oban","duration":446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:53:00.485 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:53:00.706 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:53:30.707 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:54:00.486 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:54:00.708 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:54:30.710 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:55:00.487 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:55:00.711 [info] {"source":"oban","duration":495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:55:30.712 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:56:00.488 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:56:00.713 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:56:30.714 [info] {"source":"oban","duration":723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:57:00.489 [info] {"source":"oban","duration":213,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:57:00.716 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:57:30.718 [info] {"source":"oban","duration":648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:58:00.490 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:58:00.719 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:58:30.720 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:59:00.491 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 16:59:00.721 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 16:59:30.723 [info] {"source":"oban","duration":926,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:00:00.492 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:00:00.724 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:00:30.725 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:01:00.493 [info] {"source":"oban","duration":321,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:01:00.726 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:01:30.727 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:02:00.495 [info] {"source":"oban","duration":214,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:02:00.729 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:02:30.730 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:03:00.496 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:03:00.731 [info] {"source":"oban","duration":768,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:03:30.733 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:04:00.497 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:04:00.735 [info] {"source":"oban","duration":497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:04:30.737 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:05:00.498 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:05:00.738 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:05:30.739 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:06:00.499 [info] {"source":"oban","duration":247,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:06:00.740 [info] {"source":"oban","duration":437,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:06:30.741 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:07:00.500 [info] {"source":"oban","duration":253,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:07:00.743 [info] {"source":"oban","duration":705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:07:30.744 [info] {"source":"oban","duration":654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:08:00.501 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:08:00.746 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:08:30.747 [info] {"source":"oban","duration":668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:09:00.502 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:09:00.748 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:09:30.749 [info] {"source":"oban","duration":641,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:10:00.503 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:10:00.751 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:10:30.752 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:11:00.504 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:11:00.754 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:11:30.757 [info] {"source":"oban","duration":959,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:00.505 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:12:00.758 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:12:30.759 [info] {"source":"oban","duration":749,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:13:00.506 [info] {"source":"oban","duration":372,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:13:00.761 [info] {"source":"oban","duration":779,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:13:30.762 [info] {"source":"oban","duration":651,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:14:00.507 [info] {"source":"oban","duration":222,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:14:00.763 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:14:30.764 [info] {"source":"oban","duration":816,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:15:00.508 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:15:00.766 [info] {"source":"oban","duration":679,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:15:30.767 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:16:00.509 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:16:00.768 [info] {"source":"oban","duration":731,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:16:30.770 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:17:00.510 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:17:00.771 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:17:30.772 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:00.511 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:18:00.774 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:18:30.775 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:19:00.512 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:19:00.777 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:19:30.778 [info] {"source":"oban","duration":749,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:20:00.513 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:20:00.779 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:20:30.780 [info] {"source":"oban","duration":380,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:21:00.514 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:21:00.781 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:21:30.782 [info] {"source":"oban","duration":334,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:22:00.515 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:22:00.783 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:22:30.785 [info] {"source":"oban","duration":742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:23:00.516 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:23:00.787 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:23:30.788 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:24:00.517 [info] {"source":"oban","duration":209,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:24:00.789 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:24:30.790 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:25:00.518 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:25:00.791 [info] {"source":"oban","duration":742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:25:30.792 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:26:00.519 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:26:00.794 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:26:30.795 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:27:00.520 [info] {"source":"oban","duration":214,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:27:00.796 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:27:30.797 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:28:00.521 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:28:00.798 [info] {"source":"oban","duration":815,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:28:30.800 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:29:00.522 [info] {"source":"oban","duration":240,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:29:00.801 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:29:30.802 [info] {"source":"oban","duration":857,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:30:00.523 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:30:00.803 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:30:30.805 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:31:00.524 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:31:00.806 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:31:30.807 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:32:00.525 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:32:00.809 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:32:30.810 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:33:00.526 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:33:00.812 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:33:30.813 [info] {"source":"oban","duration":927,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:34:00.527 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:34:00.816 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:34:30.817 [info] {"source":"oban","duration":791,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:35:00.528 [info] {"source":"oban","duration":258,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:35:00.819 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:35:30.820 [info] {"source":"oban","duration":409,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:36:00.529 [info] {"source":"oban","duration":229,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:36:00.821 [info] {"source":"oban","duration":613,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:36:30.822 [info] {"source":"oban","duration":406,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:37:00.530 [info] {"source":"oban","duration":219,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:37:00.823 [info] {"source":"oban","duration":773,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:37:30.825 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:38:00.531 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:38:00.826 [info] {"source":"oban","duration":745,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:38:30.828 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:39:00.532 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:39:00.829 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:39:30.830 [info] {"source":"oban","duration":763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:40:00.533 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:40:00.831 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:40:30.832 [info] {"source":"oban","duration":734,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:41:00.534 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:41:00.835 [info] {"source":"oban","duration":699,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:41:30.836 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:42:00.535 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:42:00.838 [info] {"source":"oban","duration":820,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:42:30.839 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:43:00.536 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:43:00.840 [info] {"source":"oban","duration":789,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:43:30.842 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:44:00.537 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:44:00.843 [info] {"source":"oban","duration":443,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:44:30.844 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:45:00.538 [info] {"source":"oban","duration":225,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:45:00.846 [info] {"source":"oban","duration":635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:45:30.847 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:46:00.539 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:46:00.848 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:46:30.849 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:47:00.540 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:47:00.852 [info] {"source":"oban","duration":774,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:47:30.853 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:48:00.541 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:48:00.854 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:48:30.855 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:49:00.542 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:49:00.856 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:49:30.857 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:50:00.543 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:50:00.858 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:50:30.859 [info] {"source":"oban","duration":477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:51:00.544 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:51:00.862 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:51:30.864 [info] {"source":"oban","duration":834,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:52:00.545 [info] {"source":"oban","duration":327,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:52:00.865 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:52:30.867 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:53:00.547 [info] {"source":"oban","duration":225,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:53:00.868 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:53:30.869 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:54:00.548 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:54:00.870 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:54:30.871 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:55:00.549 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:55:00.873 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:55:30.875 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:56:00.550 [info] {"source":"oban","duration":220,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:56:00.876 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:56:30.877 [info] {"source":"oban","duration":713,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:57:00.552 [info] {"source":"oban","duration":224,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:57:00.879 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:57:30.880 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:58:00.553 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:58:00.881 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:58:30.882 [info] {"source":"oban","duration":765,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:59:00.554 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 17:59:00.883 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 17:59:30.884 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:00:00.555 [info] {"source":"oban","duration":286,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:00:00.885 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:00:30.886 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:01:00.556 [info] {"source":"oban","duration":99,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:01:00.887 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:01:30.888 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:02:00.557 [info] {"source":"oban","duration":232,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:02:00.889 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:02:30.891 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:03:00.558 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:03:00.892 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:03:30.894 [info] {"source":"oban","duration":843,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:04:00.559 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:04:00.897 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:04:30.899 [info] {"source":"oban","duration":478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:05:00.561 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:05:00.900 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:05:30.902 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:06:00.562 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:06:00.904 [info] {"source":"oban","duration":332,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:06:30.905 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:07:00.563 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:07:00.907 [info] {"source":"oban","duration":681,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:07:30.908 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:08:00.565 [info] {"source":"oban","duration":240,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:08:00.909 [info] {"source":"oban","duration":844,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:08:30.911 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:09:00.566 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:09:00.912 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:09:30.914 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:10:00.567 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:10:00.916 [info] {"source":"oban","duration":878,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:10:30.917 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:11:00.568 [info] {"source":"oban","duration":220,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:11:00.919 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:11:30.920 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:12:00.569 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:12:00.921 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:12:30.922 [info] {"source":"oban","duration":714,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:13:00.570 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:13:00.923 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:13:30.926 [info] {"source":"oban","duration":648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:14:00.571 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:14:00.927 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:14:30.929 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:15:00.572 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:15:00.931 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:15:30.933 [info] {"source":"oban","duration":734,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:16:00.574 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:16:00.934 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:16:30.936 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:17:00.575 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:17:00.937 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:17:30.938 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:18:00.576 [info] {"source":"oban","duration":240,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:18:00.939 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:18:30.940 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:19:00.577 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:19:00.941 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:19:30.942 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:20:00.578 [info] {"source":"oban","duration":246,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:20:00.943 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:20:30.944 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:21:00.579 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:21:00.945 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:21:30.947 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:22:00.580 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:22:00.949 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:22:30.950 [info] {"source":"oban","duration":755,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:23:00.581 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:23:00.952 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:23:30.954 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:24:00.582 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:24:00.955 [info] {"source":"oban","duration":492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:24:30.956 [info] {"source":"oban","duration":780,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:25:00.583 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:25:00.958 [info] {"source":"oban","duration":753,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:25:30.959 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:26:00.584 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:26:00.961 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:26:30.962 [info] {"source":"oban","duration":763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:27:00.586 [info] {"source":"oban","duration":330,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:27:00.965 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:27:30.966 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:28:00.587 [info] {"source":"oban","duration":264,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:28:00.967 [info] {"source":"oban","duration":776,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:28:30.969 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:29:00.588 [info] {"source":"oban","duration":205,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:29:00.970 [info] {"source":"oban","duration":750,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:29:30.972 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:30:00.590 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:30:00.974 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:30:30.976 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:31:00.591 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:31:00.978 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:31:30.979 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:32:00.592 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:32:00.980 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:32:30.981 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:33:00.593 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:33:00.982 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:33:30.983 [info] {"source":"oban","duration":666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:34:00.594 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:34:00.984 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:34:30.986 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:35:00.595 [info] {"source":"oban","duration":214,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:35:00.987 [info] {"source":"oban","duration":493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:35:30.988 [info] {"source":"oban","duration":753,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:36:00.597 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:36:00.989 [info] {"source":"oban","duration":704,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:36:30.991 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:37:00.599 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:37:00.992 [info] {"source":"oban","duration":722,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:37:30.994 [info] {"source":"oban","duration":756,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:38:00.600 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:38:00.996 [info] {"source":"oban","duration":799,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:38:30.997 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:39:00.601 [info] {"source":"oban","duration":221,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:39:00.998 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:39:30.999 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:40:00.602 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:40:01.000 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:40:20.409 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766342420409467113,"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"]} 18:40:20.409 [debug] QUERY OK source="media_items" db=0.2ms idle=306.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" = ?) [2241] 18:40:20.410 [info] User scripts lifecyle file either not present or is empty. Skipping. 18:40:20.410 [debug] QUERY OK source="sources" db=0.1ms idle=306.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" = ?) [4] 18:40:20.410 [debug] QUERY OK source="media_profiles" db=0.1ms idle=306.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] 18:40:20.410 [debug] QUERY OK source="media_items" db=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 [2241] 18:40:20.411 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [2241] 18:40:20.411 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 18:40:20.411 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 18:40:20.411 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 18:40:20.411 [debug] Running yt-dlp command for action: get_downloadable_status 18:40:20.485 [debug] QUERY OK source="settings" db=0.1ms 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 [] 18:40:20.486 [debug] QUERY OK source="settings" db=0.1ms 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 [] 18:40:20.486 [debug] QUERY OK source="settings" db=0.0ms 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 [] 18:40:20.486 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/6a/95/6a953c9a051683d2387b2c03c2f0ed230a0618c15244c468a7d1ce09203ea3b7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 18:40:22.424 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/6a/95/6a953c9a051683d2387b2c03c2f0ed230a0618c15244c468a7d1ce09203ea3b7.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 18:40:22.424 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 18:40:22.425 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2015444,"event":"job:exception","queue_time":690471,"attempt":15,"tags":["media_item","media_fetching","show_in_dashboard"]} 18:40:31.001 [info] {"source":"oban","duration":732,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:41:00.603 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:41:01.003 [info] {"source":"oban","duration":665,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:41:31.005 [info] {"source":"oban","duration":711,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:42:00.604 [info] {"source":"oban","duration":247,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:42:01.006 [info] {"source":"oban","duration":718,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:42:31.009 [info] {"source":"oban","duration":879,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:43:00.605 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:43:01.010 [info] {"source":"oban","duration":859,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:43:31.012 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:44:00.606 [info] {"source":"oban","duration":205,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:44:01.013 [info] {"source":"oban","duration":605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:44:31.014 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:45:00.607 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:45:01.015 [info] {"source":"oban","duration":672,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:45:31.016 [info] {"source":"oban","duration":619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:46:00.608 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:46:01.017 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:46:31.018 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:47:00.609 [info] {"source":"oban","duration":229,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:47:01.019 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:47:31.020 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:48:00.610 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:48:01.021 [info] {"source":"oban","duration":667,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:48:31.022 [info] {"source":"oban","duration":365,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:49:00.612 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:49:01.024 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:49:31.025 [info] {"source":"oban","duration":619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:50:00.613 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:50:01.026 [info] {"source":"oban","duration":619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:50:31.028 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:51:00.614 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:51:01.029 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:51:31.030 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:52:00.615 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:52:01.031 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:52:31.032 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:53:00.616 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:53:01.033 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:53:31.034 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:54:00.617 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:54:01.035 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:54:31.036 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:55:00.618 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:55:01.037 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:55:31.038 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:56:00.619 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:56:01.039 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:56:31.040 [info] {"source":"oban","duration":458,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:57:00.620 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:57:01.042 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:57:31.043 [info] {"source":"oban","duration":702,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:58:00.621 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:58:01.044 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:58:31.045 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:59:00.622 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 18:59:01.046 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 18:59:31.047 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:00:00.623 [info] {"source":"oban","duration":137,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:00:01.048 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:00:31.049 [info] {"source":"oban","duration":465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:01:00.624 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:01:01.050 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:01:31.051 [info] {"source":"oban","duration":477,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:02:00.625 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:02:01.052 [info] {"source":"oban","duration":422,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:02:31.053 [info] {"source":"oban","duration":480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:03:00.626 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:03:01.054 [info] {"source":"oban","duration":343,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:03:31.055 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:04:00.627 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:04:01.056 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:04:31.057 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:05:00.628 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:05:01.058 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:05:31.059 [info] {"source":"oban","duration":771,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:06:00.629 [info] {"source":"oban","duration":142,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:06:01.060 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:06:31.061 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:07:00.630 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:07:01.062 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:07:31.063 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:08:00.631 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:08:01.064 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:08:31.065 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:09:00.632 [info] {"source":"oban","duration":218,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:09:01.067 [info] {"source":"oban","duration":923,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:09:31.068 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:10:00.633 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:10:01.069 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:10:31.070 [info] {"source":"oban","duration":658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:11:00.634 [info] {"source":"oban","duration":215,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:11:01.071 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:11:31.072 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:12:00.635 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:12:01.074 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:12:31.075 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:13:00.636 [info] {"source":"oban","duration":257,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:13:01.076 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:13:31.077 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:14:00.637 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:14:01.078 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:14:31.080 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:15:00.638 [info] {"source":"oban","duration":144,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:15:01.081 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:15:31.082 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:16:00.639 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:16:01.083 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:16:31.086 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:17:00.640 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:17:01.087 [info] {"source":"oban","duration":360,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:17:31.088 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:18:00.641 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:18:01.089 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:18:31.090 [info] {"source":"oban","duration":748,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:19:00.642 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:19:01.092 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:19:31.093 [info] {"source":"oban","duration":666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:20:00.643 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:20:01.094 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:20:31.095 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:21:00.644 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:21:01.096 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:21:31.097 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:22:00.645 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:22:01.098 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:22:31.099 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:23:00.646 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:23:01.100 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:23:31.101 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:24:00.647 [info] {"source":"oban","duration":217,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:24:01.103 [info] {"source":"oban","duration":831,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:24:31.104 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:25:00.648 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:25:01.106 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:25:31.107 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:26:00.649 [info] {"source":"oban","duration":145,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:26:01.108 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:26:31.109 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:27:00.650 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:27:01.110 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:27:31.111 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:28:00.651 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:28:01.112 [info] {"source":"oban","duration":740,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:28:31.114 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:29:00.652 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:29:01.115 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:29:31.116 [info] {"source":"oban","duration":723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:30:00.653 [info] {"source":"oban","duration":285,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:30:01.118 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:30:31.119 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:31:00.654 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:31:01.120 [info] {"source":"oban","duration":313,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:31:31.121 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:32:00.655 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:32:01.122 [info] {"source":"oban","duration":723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:32:31.123 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:33:00.656 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:33:01.124 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:33:31.125 [info] {"source":"oban","duration":482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:34:00.657 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:34:01.126 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:34:31.127 [info] {"source":"oban","duration":469,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:35:00.658 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:35:01.128 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:35:31.130 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:36:00.659 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:36:01.131 [info] {"source":"oban","duration":491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:36:31.132 [info] {"source":"oban","duration":482,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:37:00.660 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:37:01.133 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:37:31.134 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:38:00.661 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:38:01.136 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:38:31.138 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:39:00.662 [info] {"source":"oban","duration":227,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:39:01.139 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:39:31.140 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:40:00.663 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:40:01.141 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:40:31.142 [info] {"source":"oban","duration":634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:41:00.664 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:41:01.144 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:41:31.145 [info] {"source":"oban","duration":805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:42:00.665 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:42:01.147 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:42:31.148 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:43:00.666 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:43:01.150 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:43:31.151 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:44:00.667 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:44:01.152 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:44:31.154 [info] {"source":"oban","duration":957,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:45:00.668 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:45:01.156 [info] {"source":"oban","duration":654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:45:31.158 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:46:00.669 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:46:01.159 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:46:31.160 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:47:00.670 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:47:01.161 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:47:31.162 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:48:00.671 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:48:01.163 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:48:31.164 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:49:00.672 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:49:01.165 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:49:31.166 [info] {"source":"oban","duration":460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:50:00.674 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:50:01.168 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:50:31.169 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:51:00.675 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:51:01.170 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:51:31.171 [info] {"source":"oban","duration":753,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:52:00.676 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:52:01.172 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:52:31.173 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:53:00.677 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:53:01.174 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:53:31.175 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:54:00.678 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:54:01.176 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:54:31.177 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:55:00.679 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:55:01.178 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:55:31.179 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:56:00.680 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:56:01.180 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:56:31.182 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:57:00.681 [info] {"source":"oban","duration":261,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:57:01.183 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:57:31.184 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:58:00.682 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:58:01.185 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:58:31.186 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:59:00.683 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 19:59:01.188 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 19:59:31.189 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:00:00.684 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:00:01.190 [info] {"source":"oban","duration":790,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:00:31.192 [info] {"source":"oban","duration":345,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:01:00.685 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:01:01.193 [info] {"source":"oban","duration":375,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:01:31.194 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:02:00.686 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:02:01.195 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:02:31.196 [info] {"source":"oban","duration":812,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:03:00.687 [info] {"source":"oban","duration":345,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:03:01.199 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:03:31.200 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:04:00.688 [info] {"source":"oban","duration":251,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:04:01.201 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:04:31.202 [info] {"source":"oban","duration":620,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:05:00.689 [info] {"source":"oban","duration":215,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:05:01.203 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:05:31.204 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:06:00.691 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:06:01.205 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:06:31.206 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:07:00.692 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:07:01.207 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:07:31.208 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:08:00.693 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:08:01.210 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:08:31.212 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:09:00.694 [info] {"source":"oban","duration":259,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:09:01.213 [info] {"source":"oban","duration":660,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:09:31.214 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:10:00.695 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:10:01.215 [info] {"source":"oban","duration":715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:10:31.216 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:11:00.696 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:11:01.217 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:11:31.218 [info] {"source":"oban","duration":470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:12:00.697 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:12:01.219 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:12:31.220 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:13:00.698 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:13:01.221 [info] {"source":"oban","duration":711,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:13:31.222 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:14:00.699 [info] {"source":"oban","duration":221,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:14:01.223 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:14:31.225 [info] {"source":"oban","duration":673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:15:00.700 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:15:01.227 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:15:31.229 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:16:00.701 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:16:01.230 [info] {"source":"oban","duration":424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:16:31.231 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:17:00.702 [info] {"source":"oban","duration":238,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:17:01.233 [info] {"source":"oban","duration":711,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:17:31.234 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:18:00.703 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:18:01.235 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:18:31.236 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:19:00.704 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:19:01.238 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:19:31.239 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:20:00.705 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:20:01.240 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:20:31.241 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:21:00.706 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:21:01.242 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:21:31.244 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:22:00.707 [info] {"source":"oban","duration":134,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:22:01.246 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:22:31.247 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:23:00.708 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:23:01.248 [info] {"source":"oban","duration":659,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:23:31.250 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:24:00.709 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:24:01.251 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:24:31.252 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:25:00.710 [info] {"source":"oban","duration":262,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:25:01.254 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:25:31.255 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:26:00.711 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:26:01.256 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:26:31.257 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:27:00.712 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:27:01.258 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:27:31.259 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:28:00.713 [info] {"source":"oban","duration":428,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:28:01.260 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:28:31.262 [info] {"source":"oban","duration":730,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:29:00.715 [info] {"source":"oban","duration":214,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:29:01.263 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:29:31.264 [info] {"source":"oban","duration":676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:30:00.716 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:30:01.266 [info] {"source":"oban","duration":746,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:30:31.268 [info] {"source":"oban","duration":291,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:31:00.717 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:31:01.269 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:31:31.270 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:32:00.718 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:32:01.271 [info] {"source":"oban","duration":848,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:32:31.273 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:33:00.719 [info] {"source":"oban","duration":261,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:33:01.274 [info] {"source":"oban","duration":776,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:33:31.276 [info] {"source":"oban","duration":749,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:34:00.720 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:34:01.278 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:34:31.279 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:35:00.721 [info] {"source":"oban","duration":261,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:35:01.280 [info] {"source":"oban","duration":880,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:35:31.283 [info] {"source":"oban","duration":716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:36:00.722 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:36:01.284 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:36:31.285 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:37:00.723 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:37:01.286 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:37:31.287 [info] {"source":"oban","duration":818,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:38:00.724 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:38:01.289 [info] {"source":"oban","duration":651,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:38:31.291 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:39:00.725 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:39:01.292 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:39:31.293 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:40:00.726 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:40:01.294 [info] {"source":"oban","duration":739,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:40:31.295 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:41:00.727 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:41:01.296 [info] {"source":"oban","duration":699,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:41:31.298 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:42:00.728 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:42:01.299 [info] {"source":"oban","duration":673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:42:31.301 [info] {"source":"oban","duration":672,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:43:00.729 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:43:01.302 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:43:31.303 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:44:00.730 [info] {"source":"oban","duration":258,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:44:01.304 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:44:31.306 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:45:00.731 [info] {"source":"oban","duration":217,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:45:01.307 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:45:31.308 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:46:00.732 [info] {"source":"oban","duration":232,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:46:01.309 [info] {"source":"oban","duration":684,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:46:31.311 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:47:00.733 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:47:01.312 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:47:31.314 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:48:00.734 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:48:01.315 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:48:31.316 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:49:00.735 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:49:01.318 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:49:31.319 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:00.736 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:50:01.321 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:50:31.322 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:51:00.737 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:51:01.323 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:51:31.325 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:52:00.738 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:52:01.328 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:52:31.329 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:53:00.739 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:53:01.331 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:53:31.332 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:54:00.740 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:54:01.333 [info] {"source":"oban","duration":976,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:54:31.335 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:55:00.741 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:55:01.336 [info] {"source":"oban","duration":647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:55:31.337 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:56:00.742 [info] {"source":"oban","duration":213,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:56:01.338 [info] {"source":"oban","duration":755,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:56:31.340 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:57:00.743 [info] {"source":"oban","duration":229,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:57:01.341 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:57:31.342 [info] {"source":"oban","duration":853,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:00.744 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:58:01.344 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:58:31.345 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:59:00.745 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 20:59:01.346 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 20:59:31.347 [info] {"source":"oban","duration":813,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:00:00.746 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:00:01.349 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:00:31.350 [info] {"source":"oban","duration":349,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:01:00.747 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:01:01.352 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:01:31.353 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:02:00.748 [info] {"source":"oban","duration":296,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:02:01.354 [info] {"source":"oban","duration":722,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:02:31.355 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:03:00.749 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:03:01.356 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:03:31.357 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:04:00.750 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:04:01.358 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:04:31.359 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:05:00.751 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:05:01.360 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:05:31.361 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:06:00.752 [info] {"source":"oban","duration":116,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:06:01.362 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:06:31.363 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:07:00.753 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:07:01.364 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:07:31.365 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:08:00.754 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:08:01.366 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:08:31.367 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:09:00.755 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:09:01.368 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:09:31.369 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:10:00.756 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:10:01.371 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:10:31.372 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:11:00.757 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:11:01.373 [info] {"source":"oban","duration":839,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:11:31.375 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:12:00.758 [info] {"source":"oban","duration":238,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:12:01.376 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:12:31.378 [info] {"source":"oban","duration":792,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:13:00.759 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:13:01.379 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:13:31.380 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:14:00.760 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:14:01.382 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:14:31.383 [info] {"source":"oban","duration":605,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:15:00.761 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:15:01.384 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:15:31.386 [info] {"source":"oban","duration":490,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:16:00.762 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:16:01.387 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:16:31.390 [info] {"source":"oban","duration":775,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:17:00.763 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:17:01.391 [info] {"source":"oban","duration":617,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:17:31.393 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:18:00.764 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:18:01.394 [info] {"source":"oban","duration":759,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:18:31.396 [info] {"source":"oban","duration":651,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:19:00.765 [info] {"source":"oban","duration":246,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:19:01.397 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:19:31.398 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:20:00.766 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:20:01.400 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:20:31.401 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:21:00.767 [info] {"source":"oban","duration":248,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:21:01.402 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:21:31.404 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:22:00.768 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:22:01.405 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:22:31.406 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:23:00.769 [info] {"source":"oban","duration":234,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:23:01.408 [info] {"source":"oban","duration":704,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:23:31.409 [info] {"source":"oban","duration":485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:24:00.770 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:24:01.410 [info] {"source":"oban","duration":749,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:24:31.411 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:25:00.771 [info] {"source":"oban","duration":259,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:25:01.412 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:25:31.413 [info] {"source":"oban","duration":474,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:26:00.772 [info] {"source":"oban","duration":290,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:26:01.414 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:26:31.416 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:27:00.773 [info] {"source":"oban","duration":214,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:27:01.417 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:27:31.418 [info] {"source":"oban","duration":464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:28:00.774 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:28:01.419 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:28:31.420 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:29:00.775 [info] {"source":"oban","duration":251,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:29:01.421 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:29:31.422 [info] {"source":"oban","duration":661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:30:00.776 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:30:01.424 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:30:31.425 [info] {"source":"oban","duration":700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:31:00.777 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:31:01.426 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:31:31.427 [info] {"source":"oban","duration":821,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:32:00.778 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:32:01.430 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:32:31.431 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:33:00.779 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:33:01.433 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:33:31.434 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:34:00.780 [info] {"source":"oban","duration":224,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:34:01.435 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:34:31.436 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:35:00.781 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:35:01.437 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:35:31.439 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:36:00.782 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:36:01.440 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:36:31.441 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:37:00.783 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:37:01.442 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:37:31.443 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:38:00.784 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:38:01.444 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:38:31.445 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:39:00.785 [info] {"source":"oban","duration":209,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:39:01.446 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:39:31.447 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:40:00.786 [info] {"source":"oban","duration":144,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:40:01.448 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:40:31.450 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:41:00.787 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:41:01.451 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:41:31.452 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:42:00.788 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:42:01.454 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:42:31.455 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:43:00.789 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:43:01.456 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:43:31.457 [info] {"source":"oban","duration":808,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:44:00.790 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:44:01.459 [info] {"source":"oban","duration":798,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:44:31.461 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:45:00.791 [info] {"source":"oban","duration":127,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:45:01.462 [info] {"source":"oban","duration":713,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:45:31.463 [info] {"source":"oban","duration":780,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:46:00.792 [info] {"source":"oban","duration":299,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:46:01.465 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:46:31.467 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:47:00.793 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:47:01.468 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:47:31.469 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:48:00.794 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:48:01.470 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:48:31.471 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:49:00.795 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:49:01.472 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:49:31.473 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:50:00.796 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:50:01.475 [info] {"source":"oban","duration":483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:50:31.476 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:51:00.797 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:51:01.477 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:51:31.478 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:52:00.798 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:52:01.479 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:52:31.480 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:53:00.799 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:53:01.481 [info] {"source":"oban","duration":617,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:53:31.482 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:54:00.800 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:54:01.484 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:54:31.486 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:55:00.801 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:55:01.487 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:55:31.488 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:56:00.802 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:56:01.489 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:56:31.490 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:57:00.803 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:57:01.491 [info] {"source":"oban","duration":676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:57:31.492 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:58:00.804 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:58:01.493 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:58:31.495 [info] {"source":"oban","duration":1063,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:59:00.805 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 21:59:01.496 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 21:59:31.497 [info] {"source":"oban","duration":363,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:00:00.806 [info] {"source":"oban","duration":275,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:00:01.498 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:00:31.499 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:01:00.807 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:01:01.500 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:01:31.502 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:02:00.808 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:02:01.503 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:02:31.504 [info] {"source":"oban","duration":481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:03:00.809 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:03:01.505 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:03:31.506 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:04:00.811 [info] {"source":"oban","duration":213,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:04:01.507 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:04:31.508 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:05:00.812 [info] {"source":"oban","duration":241,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:05:01.509 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:05:31.510 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:06:00.813 [info] {"source":"oban","duration":339,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:06:01.511 [info] {"source":"oban","duration":475,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:06:31.512 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:07:00.814 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:07:01.513 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:07:31.514 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:08:00.815 [info] {"source":"oban","duration":305,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:08:01.515 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:08:31.516 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:09:00.817 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:09:01.517 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:09:31.518 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:10:00.818 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:10:01.519 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:10:31.520 [info] {"source":"oban","duration":493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:11:00.819 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:11:01.521 [info] {"source":"oban","duration":735,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:11:31.523 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:12:00.820 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:12:01.524 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:12:31.525 [info] {"source":"oban","duration":757,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:13:00.821 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:13:01.527 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:13:31.528 [info] {"source":"oban","duration":378,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:14:00.822 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:14:01.529 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:14:31.531 [info] {"source":"oban","duration":671,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:15:00.823 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:15:01.532 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:15:31.534 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:16:00.824 [info] {"source":"oban","duration":144,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:16:01.536 [info] {"source":"oban","duration":812,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:16:31.537 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:17:00.825 [info] {"source":"oban","duration":141,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:17:01.539 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:17:31.540 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:18:00.826 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:18:01.541 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:18:31.542 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:19:00.827 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:19:01.544 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:19:31.545 [info] {"source":"oban","duration":612,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:20:00.828 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:20:01.546 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:20:31.548 [info] {"source":"oban","duration":970,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:21:00.829 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:21:01.549 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:21:31.550 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:22:00.830 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:22:01.551 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:22:31.552 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:23:00.831 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:23:01.553 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:23:31.554 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:24:00.832 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:24:01.555 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:24:31.556 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:25:00.833 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:25:01.557 [info] {"source":"oban","duration":938,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:25:31.559 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:26:00.834 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:26:01.561 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:26:31.562 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:27:00.835 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:27:01.563 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:27:31.564 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:00.836 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:28:01.566 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:31.567 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:28:38.561 [info] {"args":{"id":10623},"id":2332,"meta":{},"system_time":1766356118561554634,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:28:38.562 [debug] QUERY OK source="media_items" db=0.2ms idle=1406.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" = ?) [10623] 22:28:38.562 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:28:38.578 [debug] QUERY OK source="sources" db=0.1ms queue=15.9ms idle=1407.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" = ?) [3] 22:28:38.578 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1025.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:28:38.579 [debug] QUERY OK source="media_items" db=0.1ms 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 [10623] 22:28:38.579 [debug] QUERY OK source="media_metadata" db=0.0ms idle=17.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" = ?) [10623] 22:28:38.579 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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:28:38.580 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 22:28:38.580 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 22:28:38.580 [debug] Running yt-dlp command for action: get_downloadable_status 22:28:38.580 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 22:28:38.580 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 22:28:38.580 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 22:28:38.580 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nfuQQigzNu0 --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/05/1a/051a51720e35c25af4a9fac32eb67e714c2f75f133431ba855be3be27070ac98.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:28:40.520 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=nfuQQigzNu0 --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/05/1a/051a51720e35c25af4a9fac32eb67e714c2f75f133431ba855be3be27070ac98.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] nfuQQigzNu0: Join this channel to get access to members-only content like this video, and other exclusive perks. 22:28:40.520 [error] yt-dlp download error for media item #10623: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] nfuQQigzNu0: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 22:28:40.673 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":10623},"id":2332,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":1958893,"event":"job:exception","queue_time":184889,"attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:29:00.837 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:29:01.568 [info] {"source":"oban","duration":647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:29:31.570 [info] {"source":"oban","duration":900,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:30:00.838 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:30:01.571 [info] {"source":"oban","duration":653,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:30:31.573 [info] {"source":"oban","duration":749,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:31:00.839 [info] {"source":"oban","duration":217,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:31:01.575 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:31:31.577 [info] {"source":"oban","duration":1012,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:32:00.840 [info] {"source":"oban","duration":221,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:32:01.578 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:32:31.579 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:33:00.841 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:33:01.580 [info] {"source":"oban","duration":859,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:33:31.582 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:34:00.842 [info] {"source":"oban","duration":291,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:34:01.583 [info] {"source":"oban","duration":712,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:34:31.584 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:35:00.843 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:35:01.585 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:35:31.586 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:36:00.844 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:36:01.587 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:36:31.588 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:00.845 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:37:01.589 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:37:31.590 [info] {"source":"oban","duration":710,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:00.846 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:38:01.592 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:38:31.593 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:00.847 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:39:01.594 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:39:31.595 [info] {"source":"oban","duration":838,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:00.848 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:40:01.597 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:40:31.598 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:00.849 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:41:01.599 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:41:31.600 [info] {"source":"oban","duration":392,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:00.850 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:42:01.601 [info] {"source":"oban","duration":292,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:42:31.602 [info] {"source":"oban","duration":750,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:00.851 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:43:01.603 [info] {"source":"oban","duration":632,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:43:31.605 [info] {"source":"oban","duration":866,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:00.852 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:44:01.606 [info] {"source":"oban","duration":797,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:44:31.607 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:00.853 [info] {"source":"oban","duration":138,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:45:01.608 [info] {"source":"oban","duration":771,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:45:31.609 [info] {"source":"oban","duration":480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:00.854 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:46:01.610 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:46:31.611 [info] {"source":"oban","duration":763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:00.855 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:47:01.612 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:47:31.613 [info] {"source":"oban","duration":762,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:00.856 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:48:01.614 [info] {"source":"oban","duration":703,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:48:31.615 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:00.857 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:49:01.616 [info] {"source":"oban","duration":464,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:49:31.617 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:00.858 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:50:01.618 [info] {"source":"oban","duration":853,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:50:31.620 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:00.859 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:51:01.229 [info] {"args":{"id":10622},"id":2331,"meta":{},"system_time":1766357461229198786,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:51:01.229 [debug] QUERY OK source="media_items" db=0.1ms idle=68.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" = ?) [10622] 22:51:01.229 [info] User scripts lifecyle file either not present or is empty. Skipping. 22:51:01.230 [debug] QUERY OK source="sources" db=0.0ms idle=68.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" = ?) [3] 22:51:01.230 [debug] QUERY OK source="media_profiles" db=0.1ms idle=69.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:51:01.230 [debug] QUERY OK source="media_items" db=0.1ms 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 [10622] 22:51:01.231 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [10622] 22:51:01.231 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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:51:01.231 [debug] QUERY OK source="settings" db=0.1ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 22:51:01.231 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 22:51:01.231 [debug] Running yt-dlp command for action: get_downloadable_status 22:51:01.232 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 22:51:01.232 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 22:51:01.232 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 22:51:01.232 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=a7io4HCXsew --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/1e/3b/1e3b56e33241abf6c5881fa2d387072b3f85abc34a12ab1b69e2a36341cadf14.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 22:51:01.621 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:51:07.162 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=a7io4HCXsew --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/1e/3b/1e3b56e33241abf6c5881fa2d387072b3f85abc34a12ab1b69e2a36341cadf14.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] a7io4HCXsew: Join this channel to get access to members-only content like this video, and other exclusive perks. 22:51:07.162 [error] yt-dlp download error for media item #10622: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] a7io4HCXsew: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 22:51:07.163 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":10622},"id":2331,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":5933753,"event":"job:exception","queue_time":448947,"attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 22:51:31.622 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:00.860 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:52:01.623 [info] {"source":"oban","duration":876,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:52:31.625 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:00.861 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:53:01.626 [info] {"source":"oban","duration":635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:53:31.627 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:00.862 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:54:01.628 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:54:31.629 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:00.863 [info] {"source":"oban","duration":230,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:55:01.630 [info] {"source":"oban","duration":491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:55:31.631 [info] {"source":"oban","duration":479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:00.864 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:56:01.632 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:56:31.633 [info] {"source":"oban","duration":448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:00.865 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:57:01.634 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:57:31.635 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:00.866 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:58:01.636 [info] {"source":"oban","duration":750,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:58:31.637 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:00.867 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 22:59:01.638 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 22:59:31.639 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:00.868 [info] {"source":"oban","duration":120,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:00:01.640 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:00:31.641 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:00.869 [info] {"source":"oban","duration":219,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:01:01.642 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:01:31.643 [info] {"source":"oban","duration":880,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:00.870 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:02:01.645 [info] {"source":"oban","duration":476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:02:31.646 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:00.871 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:03:01.647 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:03:31.648 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:00.872 [info] {"source":"oban","duration":210,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:04:01.649 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:04:31.650 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:00.873 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:05:01.651 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:05:31.653 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:00.875 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:06:01.654 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:06:31.655 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:00.876 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:07:01.657 [info] {"source":"oban","duration":858,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:07:31.658 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:00.877 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:08:01.659 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:08:31.660 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:00.878 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:09:01.661 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:09:31.662 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:00.879 [info] {"source":"oban","duration":254,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:10:01.663 [info] {"source":"oban","duration":700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:10:31.664 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:00.880 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:11:01.665 [info] {"source":"oban","duration":778,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:11:31.666 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:00.881 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:12:01.667 [info] {"source":"oban","duration":333,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:12:31.668 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:00.882 [info] {"source":"oban","duration":133,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:13:01.669 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:13:31.670 [info] {"source":"oban","duration":752,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:00.883 [info] {"source":"oban","duration":259,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:14:01.671 [info] {"source":"oban","duration":763,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:14:31.672 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:00.884 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:15:01.673 [info] {"source":"oban","duration":839,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:15:31.675 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:00.885 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:16:01.676 [info] {"source":"oban","duration":744,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:16:31.677 [info] {"source":"oban","duration":885,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:00.886 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:17:01.679 [info] {"source":"oban","duration":820,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:17:31.681 [info] {"source":"oban","duration":905,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:00.887 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:18:01.683 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:18:31.684 [info] {"source":"oban","duration":732,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:00.888 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:19:01.685 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:19:31.687 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:00.889 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:20:01.688 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:20:31.690 [info] {"source":"oban","duration":658,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:00.890 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:21:01.691 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:21:31.692 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:00.891 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:22:01.693 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:22:31.694 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:00.892 [info] {"source":"oban","duration":230,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:23:01.695 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:23:31.696 [info] {"source":"oban","duration":643,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:00.893 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:24:01.697 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:24:31.699 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:00.894 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:25:01.700 [info] {"source":"oban","duration":801,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:25:31.702 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:00.895 [info] {"source":"oban","duration":210,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:26:01.703 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:26:31.704 [info] {"source":"oban","duration":305,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:00.896 [info] {"source":"oban","duration":312,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:27:01.705 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:27:31.706 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:00.898 [info] {"source":"oban","duration":224,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:28:01.707 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:28:31.709 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:00.899 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:29:01.710 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:29:31.711 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:00.901 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:30:01.712 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:30:31.713 [info] {"source":"oban","duration":733,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:00.902 [info] {"source":"oban","duration":284,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:31:01.714 [info] {"source":"oban","duration":861,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:31:31.716 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:00.903 [info] {"source":"oban","duration":380,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:32:01.717 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:32:31.718 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:00.905 [info] {"source":"oban","duration":251,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:33:01.719 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:33:31.721 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:00.906 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:34:01.722 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:34:31.723 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:00.907 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:35:01.724 [info] {"source":"oban","duration":784,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:35:31.726 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:00.908 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:36:01.727 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:36:31.728 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:00.909 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:37:01.729 [info] {"source":"oban","duration":716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:37:31.730 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:00.910 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:38:01.731 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:38:31.732 [info] {"source":"oban","duration":583,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:00.911 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:39:01.733 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:39:31.734 [info] {"source":"oban","duration":677,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:00.912 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:40:01.735 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:31.736 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:40:42.693 [info] {"args":{"id":2240},"id":2324,"meta":{},"system_time":1766360442693875041,"max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","event":"job:start","attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:40:42.694 [debug] QUERY OK source="media_items" db=0.1ms idle=1523.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" = ?) [2240] 23:40:42.694 [info] User scripts lifecyle file either not present or is empty. Skipping. 23:40:42.694 [debug] QUERY OK source="sources" db=0.1ms idle=1523.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] 23:40:42.694 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1008.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:40:42.695 [debug] QUERY OK source="media_items" db=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 [2240] 23:40:42.695 [debug] QUERY OK source="media_metadata" db=0.0ms idle=1.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" = ?) [2240] 23:40:42.695 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 23:40:42.696 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 23:40:42.696 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 23:40:42.696 [debug] Running yt-dlp command for action: get_downloadable_status 23:40:42.696 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 23:40:42.696 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 23:40:42.696 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 23:40:42.697 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=KCUq25Quh-A --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/b6/cc/b6ccc9a8f85d7923adc0fa3d246126b58bf152cafc89d8bc7ec2c8038a1ef914.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 23:40:44.767 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=KCUq25Quh-A --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/b6/cc/b6ccc9a8f85d7923adc0fa3d246126b58bf152cafc89d8bc7ec2c8038a1ef914.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] KCUq25Quh-A: Join this channel to get access to members-only content like this video, and other exclusive perks. 23:40:44.767 [error] yt-dlp download error for media item #2240: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] KCUq25Quh-A: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 23:40:44.768 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2240},"id":2324,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2073878,"event":"job:exception","queue_time":119309,"attempt":17,"tags":["media_item","media_fetching","show_in_dashboard"]} 23:41:00.913 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:41:01.737 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:41:31.738 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:00.914 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:42:01.739 [info] {"source":"oban","duration":874,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:42:31.741 [info] {"source":"oban","duration":723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:00.915 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:43:01.742 [info] {"source":"oban","duration":734,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:43:31.744 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:00.916 [info] {"source":"oban","duration":289,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:44:01.745 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:44:31.746 [info] {"source":"oban","duration":818,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:00.917 [info] {"source":"oban","duration":215,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:45:01.749 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:45:31.750 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:00.918 [info] {"source":"oban","duration":205,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:46:01.751 [info] {"source":"oban","duration":666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:46:31.753 [info] {"source":"oban","duration":773,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:00.919 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:47:01.754 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:47:31.755 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:00.920 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:48:01.756 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:48:31.757 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:00.921 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:49:01.758 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:49:31.760 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:00.922 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:50:01.761 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:50:31.762 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:00.923 [info] {"source":"oban","duration":347,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:51:01.763 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:51:31.764 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:00.924 [info] {"source":"oban","duration":243,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:52:01.766 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:52:31.767 [info] {"source":"oban","duration":801,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:00.925 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:53:01.769 [info] {"source":"oban","duration":759,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:53:31.770 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:00.926 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:54:01.771 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:54:31.772 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:00.927 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:55:01.773 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:55:31.775 [info] {"source":"oban","duration":768,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:00.928 [info] {"source":"oban","duration":213,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:56:01.777 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:56:31.778 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:00.929 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:57:01.779 [info] {"source":"oban","duration":487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:57:31.780 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:00.930 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:58:01.781 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:58:31.782 [info] {"source":"oban","duration":846,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:00.931 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 23:59:01.784 [info] {"source":"oban","duration":704,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 23:59:31.786 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:00:00.932 [info] {"source":"oban","duration":141,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:00:01.788 [info] {"source":"oban","duration":1064,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":13} 00:00:31.790 [info] {"source":"oban","duration":993,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:00.933 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:01:01.792 [info] {"source":"oban","duration":716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:01:31.793 [info] {"source":"oban","duration":803,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:00.934 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:02:01.795 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:02:31.796 [info] {"source":"oban","duration":807,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:00.935 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:03:01.798 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:03:31.799 [info] {"source":"oban","duration":761,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:00.936 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:04:01.801 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:04:31.802 [info] {"source":"oban","duration":833,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:00.937 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:05:01.804 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:05:31.806 [info] {"source":"oban","duration":672,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:00.938 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:06:01.807 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:06:31.809 [info] {"source":"oban","duration":822,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:00.939 [info] {"source":"oban","duration":244,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:07:01.810 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:07:31.811 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:00.940 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:08:01.812 [info] {"source":"oban","duration":798,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:08:31.814 [info] {"source":"oban","duration":780,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:00.941 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:09:01.816 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:09:31.817 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:00.942 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:10:01.818 [info] {"source":"oban","duration":442,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:10:31.819 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:00.943 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:11:01.820 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:11:31.821 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:00.944 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:12:01.822 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:12:31.823 [info] {"source":"oban","duration":785,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:00.945 [info] {"source":"oban","duration":405,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:13:01.825 [info] {"source":"oban","duration":645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:13:31.827 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:00.947 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:14:01.828 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:14:31.829 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:00.948 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:15:01.830 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:15:31.832 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:00.949 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:16:01.833 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:16:31.834 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:00.950 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:17:01.835 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:17:31.838 [info] {"source":"oban","duration":897,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:00.952 [info] {"source":"oban","duration":316,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:18:01.840 [info] {"source":"oban","duration":791,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:18:31.842 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:00.953 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:19:01.843 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:19:31.845 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:00.954 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:20:01.846 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:20:31.847 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:00.955 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:21:01.848 [info] {"source":"oban","duration":428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:21:31.850 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:00.956 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:22:01.851 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:22:31.852 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:00.957 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:23:01.854 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:23:31.855 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:00.958 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:24:01.856 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:24:31.857 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:00.959 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:25:01.860 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:25:31.861 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:00.960 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:26:01.862 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:26:31.864 [info] {"source":"oban","duration":723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:00.961 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:27:01.865 [info] {"source":"oban","duration":645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:27:31.867 [info] {"source":"oban","duration":794,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:00.962 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:28:01.869 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:28:31.870 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:00.963 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:29:01.872 [info] {"source":"oban","duration":743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:29:31.875 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:00.965 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:30:01.876 [info] {"source":"oban","duration":786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:30:31.878 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:00.966 [info] {"source":"oban","duration":265,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:31:01.879 [info] {"source":"oban","duration":805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:31:31.880 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:00.967 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:32:01.881 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:32:31.882 [info] {"source":"oban","duration":642,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:00.968 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:33:01.883 [info] {"source":"oban","duration":748,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:33:31.885 [info] {"source":"oban","duration":654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:00.969 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:34:01.886 [info] {"source":"oban","duration":708,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:34:31.888 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:00.970 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:35:01.890 [info] {"source":"oban","duration":765,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:35:31.892 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:00.971 [info] {"source":"oban","duration":217,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:36:01.893 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:36:31.894 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:00.973 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:37:01.895 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:37:31.896 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:00.974 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:38:01.897 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:38:31.898 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:00.975 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:39:01.899 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:39:31.900 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:00.976 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:40:01.902 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:40:31.903 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:00.978 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:41:01.905 [info] {"source":"oban","duration":757,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:41:31.906 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:00.979 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:42:01.907 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:42:31.909 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:43:00.980 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:43:01.910 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:43:31.912 [info] {"source":"oban","duration":1089,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:44:00.981 [info] {"source":"oban","duration":230,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:44:01.913 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:44:31.914 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:00.982 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:45:01.915 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:45:31.916 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:46:00.983 [info] {"source":"oban","duration":279,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:46:01.917 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:46:31.919 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:47:00.984 [info] {"source":"oban","duration":281,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:47:01.920 [info] {"source":"oban","duration":460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:47:31.921 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:48:00.985 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:48:01.922 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:48:31.923 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:49:00.986 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:49:01.924 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:49:31.925 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:50:00.987 [info] {"source":"oban","duration":341,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:50:01.926 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:50:31.927 [info] {"source":"oban","duration":446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:51:00.989 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:51:01.928 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:51:31.929 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:52:00.990 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:52:01.930 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:52:31.932 [info] {"source":"oban","duration":827,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:53:00.991 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:53:01.934 [info] {"source":"oban","duration":461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:53:31.935 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:54:00.992 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:54:01.937 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:54:31.938 [info] {"source":"oban","duration":344,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:55:00.993 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:55:01.939 [info] {"source":"oban","duration":760,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:55:31.941 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:56:00.994 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:56:01.943 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:56:31.944 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:57:00.995 [info] {"source":"oban","duration":225,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:57:01.945 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:57:19.901 [debug] Tzdata polling for update. 00:57:20.494 [debug] Tzdata polling shows the loaded tz database is up to date. 00:57:31.947 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:58:00.996 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:58:01.949 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:58:31.950 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:59:00.997 [info] {"source":"oban","duration":304,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 00:59:01.951 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 00:59:31.953 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:00:01.000 [info] {"source":"oban","duration":1348,"event":"plugin:stop","jobs":[2351],"plugin":"Oban.Plugins.Cron"} 01:00:01.006 [info] {"args":{},"id":2351,"meta":{"cron":true,"cron_expr":"0 1 * * *","cron_tz":"Etc/UTC"},"system_time":1766365201006483834,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.Downloading.MediaRetentionWorker","source":"oban","event":"job:start","attempt":1,"tags":["media_item","local_data"]} 01:00:01.007 [debug] QUERY OK source="media_items" db=0.9ms idle=1827.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 IFNULL(retention_period_days, 0) > 0 AND DATETIME(media_downloaded_at, '+' || retention_period_days || ' day') < DATETIME('now') ) AND NOT (m0."prevent_culling" = 1)) [] 01:00:01.007 [info] Culling 0 media items past their retention date 01:00:01.008 [debug] QUERY OK source="media_items" db=0.6ms idle=1674.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 NOT ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND NOT (m0."prevent_culling" = 1)) [] 01:00:01.008 [info] Deleting 0 media items that are from before the source cutoff 01:00:01.008 [info] {"args":{},"id":2351,"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":2124,"event":"job:stop","queue_time":5871,"attempt":1,"tags":["media_item","local_data"]} 01:00:01.955 [info] {"source":"oban","duration":1184,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:00:31.956 [info] {"source":"oban","duration":788,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:01:00.001 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:01:01.957 [info] {"source":"oban","duration":651,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:01:31.959 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:02:00.002 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:02:01.961 [info] {"source":"oban","duration":720,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:02:31.962 [info] {"source":"oban","duration":861,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:03:00.003 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:03:01.964 [info] {"source":"oban","duration":715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:03:31.966 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:04:00.004 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:04:01.967 [info] {"source":"oban","duration":752,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:04:31.969 [info] {"source":"oban","duration":689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:05:00.005 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:05:01.971 [info] {"source":"oban","duration":761,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:05:31.972 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:06:00.006 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:06:01.973 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:06:31.974 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:07:00.007 [info] {"source":"oban","duration":417,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:07:01.975 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:07:31.976 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:08:00.009 [info] {"source":"oban","duration":223,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:08:01.977 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:08:31.978 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:09:00.010 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:09:01.980 [info] {"source":"oban","duration":431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:09:31.982 [info] {"source":"oban","duration":714,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:10:00.011 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:10:01.983 [info] {"source":"oban","duration":460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:10:31.984 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:11:00.012 [info] {"source":"oban","duration":259,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:11:01.986 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:11:31.987 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:12:00.013 [info] {"source":"oban","duration":235,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:12:01.988 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:12:31.989 [info] {"source":"oban","duration":766,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:13:00.014 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:13:01.990 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:13:31.991 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:14:00.015 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:14:01.992 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:14:31.993 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:15:00.016 [info] {"source":"oban","duration":230,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:15:01.994 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:15:31.995 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:16:00.017 [info] {"source":"oban","duration":235,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:16:01.996 [info] {"source":"oban","duration":789,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:16:31.997 [info] {"source":"oban","duration":489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:00.018 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:17:01.998 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:17:31.999 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:18:00.019 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:18:02.002 [info] {"source":"oban","duration":2357,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:18:32.003 [info] {"source":"oban","duration":742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:19:00.020 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:19:02.005 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:19:32.006 [info] {"source":"oban","duration":649,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:20:00.021 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:20:02.008 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:20:32.009 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:21:00.022 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:21:02.010 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:21:32.011 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:22:00.023 [info] {"source":"oban","duration":224,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:22:02.013 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:22:32.014 [info] {"source":"oban","duration":485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:23:00.024 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:23:02.015 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:23:32.016 [info] {"source":"oban","duration":644,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:00.025 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:24:02.018 [info] {"source":"oban","duration":591,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:24:32.019 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:25:00.026 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:25:02.020 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:25:32.021 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:00.027 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:26:02.022 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:26:32.023 [info] {"source":"oban","duration":499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:27:00.029 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:27:02.024 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:27:32.025 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:28:00.030 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:28:02.026 [info] {"source":"oban","duration":499,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:28:32.027 [info] {"source":"oban","duration":489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:29:00.031 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:29:02.028 [info] {"source":"oban","duration":495,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:29:32.029 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:30:00.032 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:30:02.030 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:30:32.031 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:31:00.033 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:31:02.033 [info] {"source":"oban","duration":793,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:31:32.034 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:32:00.034 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:32:02.035 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:32:32.036 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:33:00.035 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:33:02.038 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:33:32.040 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:34:00.036 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:34:02.041 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:34:32.043 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:35:00.037 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:35:02.044 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:35:32.045 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:36:00.038 [info] {"source":"oban","duration":227,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:36:02.046 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:36:32.047 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:00.039 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:37:02.049 [info] {"source":"oban","duration":426,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:37:32.050 [info] {"source":"oban","duration":672,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:38:00.040 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:38:02.051 [info] {"source":"oban","duration":435,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:38:32.052 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:39:00.041 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:39:02.053 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:39:32.055 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:40:00.042 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:40:02.056 [info] {"source":"oban","duration":444,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:40:32.057 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:41:00.043 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:41:02.058 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:41:32.059 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:42:00.044 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:42:02.060 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:42:32.061 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:43:00.046 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:43:02.062 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:43:32.064 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:44:00.047 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:44:02.066 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:44:32.068 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:45:00.048 [info] {"source":"oban","duration":223,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:45:02.069 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:45:32.070 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:46:00.049 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:46:02.071 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:46:32.073 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:47:00.050 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:47:02.074 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:47:32.076 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:48:00.051 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:48:02.077 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:48:32.078 [info] {"source":"oban","duration":716,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:49:00.052 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:49:02.079 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:49:32.080 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:50:00.053 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:50:02.081 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:50:32.082 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:51:00.054 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:51:02.083 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:51:32.084 [info] {"source":"oban","duration":491,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:52:00.055 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:52:02.085 [info] {"source":"oban","duration":361,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:52:32.086 [info] {"source":"oban","duration":628,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:53:00.056 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:53:02.088 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:53:32.089 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:54:00.058 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:54:02.090 [info] {"source":"oban","duration":650,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:54:32.091 [info] {"source":"oban","duration":700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:55:00.059 [info] {"source":"oban","duration":243,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:55:02.093 [info] {"source":"oban","duration":669,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:55:32.094 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:56:00.060 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:56:02.095 [info] {"source":"oban","duration":727,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:56:32.096 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:00.061 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:57:02.097 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:57:32.099 [info] {"source":"oban","duration":1008,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:58:00.062 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:58:02.100 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:58:32.101 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:59:00.063 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 01:59:02.102 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 01:59:32.103 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:00:00.065 [info] {"source":"oban","duration":1265,"event":"plugin:stop","jobs":[2352],"plugin":"Oban.Plugins.Cron"} 02:00:00.071 [info] {"args":{},"id":2352,"meta":{"cron":true,"cron_expr":"0 2 * * *","cron_tz":"Etc/UTC"},"system_time":1766368800071427129,"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"]} 02:00:00.072 [debug] QUERY OK source="media_items" db=1.1ms idle=882.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) 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) ) [] 02:00:00.072 [info] Redownloading 1 media items 02:00:00.073 [info] {"args":{},"id":2352,"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":2050,"event":"job:stop","queue_time":70852,"attempt":1,"tags":["media_item","media_fetching","show_in_dashboard"]} 02:00:02.104 [info] {"source":"oban","duration":731,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:00:32.105 [info] {"source":"oban","duration":748,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:01:00.066 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:01:02.106 [info] {"source":"oban","duration":737,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:01:32.107 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:02:00.067 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:02:02.108 [info] {"source":"oban","duration":481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:02:32.109 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:00.068 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:03:02.110 [info] {"source":"oban","duration":461,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:03:32.111 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:04:00.069 [info] {"source":"oban","duration":276,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:04:02.112 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:04:32.113 [info] {"source":"oban","duration":601,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:05:00.070 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:05:02.115 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:05:32.116 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:00.071 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:06:02.117 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:06:32.118 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:07:00.072 [info] {"source":"oban","duration":288,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:07:02.119 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:07:32.120 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:08:00.073 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:08:02.121 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:08:32.122 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:09:00.074 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:09:02.123 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:09:32.124 [info] {"source":"oban","duration":742,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:10:00.075 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:10:02.125 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:10:32.127 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:11:00.076 [info] {"source":"oban","duration":251,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:11:02.128 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:11:32.129 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:12:00.077 [info] {"source":"oban","duration":272,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:12:02.130 [info] {"source":"oban","duration":719,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:12:32.132 [info] {"source":"oban","duration":936,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:13:00.078 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:13:02.133 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:13:32.134 [info] {"source":"oban","duration":504,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:00.079 [info] {"source":"oban","duration":213,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:14:02.135 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:14:32.136 [info] {"source":"oban","duration":492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:15:00.080 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:15:02.137 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:15:32.139 [info] {"source":"oban","duration":798,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:16:00.081 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:16:02.140 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:16:32.141 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:17:00.082 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:17:02.142 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:17:32.143 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:18:00.083 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:18:02.144 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:18:32.145 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:19:00.084 [info] {"source":"oban","duration":257,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:19:02.146 [info] {"source":"oban","duration":485,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:19:32.147 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:20:00.085 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:20:02.148 [info] {"source":"oban","duration":647,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:20:32.149 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:21:00.086 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:21:02.150 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:21:32.151 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:22:00.087 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:22:02.152 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:22:32.154 [info] {"source":"oban","duration":654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:23:00.088 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:23:02.155 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:23:32.156 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:24:00.089 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:24:02.158 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:24:32.159 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:25:00.090 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:25:02.160 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:25:32.161 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:26:00.091 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:26:02.162 [info] {"source":"oban","duration":493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:26:32.163 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:00.092 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:27:02.164 [info] {"source":"oban","duration":779,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:27:32.165 [info] {"source":"oban","duration":424,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:28:00.093 [info] {"source":"oban","duration":246,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:28:02.166 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:28:32.167 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:29:00.094 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:29:02.168 [info] {"source":"oban","duration":431,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:29:32.169 [info] {"source":"oban","duration":452,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:30:00.095 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:30:02.170 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:30:32.171 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:31:00.096 [info] {"source":"oban","duration":207,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:31:02.172 [info] {"source":"oban","duration":478,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:31:32.173 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:32:00.097 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:32:02.174 [info] {"source":"oban","duration":453,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:32:32.175 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:33:00.098 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:33:02.176 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:33:32.177 [info] {"source":"oban","duration":483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:34:00.099 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:34:02.178 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:34:32.179 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:35:00.100 [info] {"source":"oban","duration":138,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:35:02.180 [info] {"source":"oban","duration":497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:35:32.181 [info] {"source":"oban","duration":449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:36:00.101 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:36:02.182 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:36:32.183 [info] {"source":"oban","duration":460,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:37:00.102 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:37:02.184 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:37:32.185 [info] {"source":"oban","duration":454,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:38:00.103 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:38:02.186 [info] {"source":"oban","duration":455,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:38:32.187 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:39:00.104 [info] {"source":"oban","duration":217,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:39:02.188 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:39:32.189 [info] {"source":"oban","duration":446,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:40:00.105 [info] {"source":"oban","duration":157,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:40:02.190 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:40:32.191 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:41:00.106 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:41:02.192 [info] {"source":"oban","duration":645,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:41:32.193 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:42:00.107 [info] {"source":"oban","duration":295,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:42:02.194 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:42:32.195 [info] {"source":"oban","duration":480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:43:00.108 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:43:02.196 [info] {"source":"oban","duration":707,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:43:32.198 [info] {"source":"oban","duration":489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:44:00.109 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:44:02.199 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:44:32.200 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:45:00.110 [info] {"source":"oban","duration":219,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:45:02.201 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:45:32.202 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:46:00.111 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:46:02.203 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:46:32.204 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:47:00.112 [info] {"source":"oban","duration":311,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:47:02.205 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:47:32.207 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:48:00.114 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:48:02.208 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:48:32.209 [info] {"source":"oban","duration":582,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:49:00.116 [info] {"source":"oban","duration":280,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:49:02.211 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:49:32.212 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:50:00.117 [info] {"source":"oban","duration":338,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:50:02.213 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:50:32.214 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:51:00.118 [info] {"source":"oban","duration":249,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:51:02.215 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:51:32.216 [info] {"source":"oban","duration":419,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:52:00.119 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:52:02.217 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:52:32.218 [info] {"source":"oban","duration":585,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:53:00.120 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:53:02.219 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:53:32.220 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:54:00.121 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:54:02.221 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:54:32.222 [info] {"source":"oban","duration":480,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:00.122 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:55:02.223 [info] {"source":"oban","duration":890,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:55:32.225 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:56:00.123 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:56:02.226 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:56:32.227 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:57:00.124 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:57:02.229 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:57:32.230 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:58:00.125 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:58:02.231 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:58:32.232 [info] {"source":"oban","duration":486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:59:00.126 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 02:59:02.233 [info] {"source":"oban","duration":725,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 02:59:32.234 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:00:00.127 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:00:02.235 [info] {"source":"oban","duration":430,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:00:32.236 [info] {"source":"oban","duration":488,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:01:00.128 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:01:02.237 [info] {"source":"oban","duration":432,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:01:32.238 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:00.129 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:02:02.239 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:02:32.240 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:03:00.130 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:03:02.241 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:03:32.242 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:04:00.131 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:04:02.243 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:04:32.244 [info] {"source":"oban","duration":800,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:05:00.133 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:05:02.246 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:05:32.247 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:06:00.134 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:06:02.249 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:06:32.250 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:07:00.135 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:07:02.252 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:07:32.254 [info] {"source":"oban","duration":603,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:08:00.136 [info] {"source":"oban","duration":218,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:08:02.255 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:08:32.256 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:09:00.137 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:09:02.257 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:09:32.258 [info] {"source":"oban","duration":706,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:10:00.138 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:10:02.260 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:10:32.261 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:11:00.139 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:11:02.262 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:11:32.263 [info] {"source":"oban","duration":564,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:12:00.140 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:12:02.264 [info] {"source":"oban","duration":736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:12:32.265 [info] {"source":"oban","duration":752,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:13:00.141 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:13:02.267 [info] {"source":"oban","duration":670,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:13:32.269 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:14:00.142 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:14:02.270 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:14:32.271 [info] {"source":"oban","duration":698,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:15:00.143 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:15:02.273 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:15:32.274 [info] {"source":"oban","duration":894,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:00.145 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:16:02.276 [info] {"source":"oban","duration":699,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:25.718 [info] HEAD / 03:16:25.718 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:16:25.719 [debug] QUERY OK source="settings" db=0.2ms idle=1518.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:25.719 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1518.5ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:16:25.719 [debug] QUERY OK source="sources" db=0.0ms idle=1518.7ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:16:25.720 [debug] QUERY OK source="media_items" db=0.8ms idle=1518.9ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:25.721 [debug] QUERY OK source="media_items" db=0.1ms idle=722.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:25.721 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:25.721 [debug] QUERY OK source="settings" db=0.0ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:25.721 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:25.722 [debug] QUERY OK source="tasks" db=0.0ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:16:25.722 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:16:25.722 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:16:25.723 [debug] QUERY OK source="sources" db=0.0ms 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" IN (?,?)) [4, 3] 03:16:25.724 [debug] QUERY OK source="media_items" db=0.8ms idle=1.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"))) [] 03:16:25.724 [debug] QUERY OK source="media_items" db=0.2ms idle=2.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:16:25.724 [debug] QUERY OK source="sources" db=0.0ms idle=2.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 03:16:25.725 [info] Sent 200 in 6ms 03:16:25.858 [info] GET / 03:16:25.858 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:16:25.858 [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 [] 03:16:25.859 [debug] QUERY OK source="media_profiles" db=0.2ms idle=135.8ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:16:25.859 [debug] QUERY OK source="sources" db=0.1ms idle=135.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:16:25.860 [debug] QUERY OK source="media_items" db=0.4ms idle=134.8ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:25.860 [debug] QUERY OK source="media_items" db=0.1ms idle=135.1ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:25.860 [debug] QUERY OK source="settings" db=0.1ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:25.860 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:25.860 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:25.861 [debug] QUERY OK source="tasks" db=0.0ms idle=1.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"] 03:16:25.861 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:16:25.861 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:16:25.862 [debug] QUERY OK source="sources" db=0.0ms idle=1.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, 3] 03:16:25.863 [debug] QUERY OK source="media_items" db=0.4ms idle=1.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"))) [] 03:16:25.863 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:16:25.863 [debug] QUERY OK source="sources" db=0.0ms idle=2.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" = ?) [3] 03:16:25.864 [info] Sent 200 in 5ms 03:16:28.327 [info] HEAD /__rsc 03:16:28.328 [debug] QUERY OK source="settings" db=0.1ms idle=1126.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:28.328 [debug] QUERY OK source="settings" db=0.1ms idle=1127.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:28.328 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:28.328 [error] #PID<0.404444.0> running PinchflatWeb.Endpoint (connection #PID<0.404443.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /__rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404443.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 37208}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404444.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrPO_3wOgtRowAIF8h"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404443.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 37208}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404443.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 37208}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404444.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrPO_3wOgtRowAIF8h"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 03:16:28.462 [info] HEAD /rsc 03:16:28.462 [debug] QUERY OK source="settings" db=0.2ms idle=1261.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 [] 03:16:28.463 [debug] QUERY OK source="settings" db=0.1ms idle=1261.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:28.463 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:28.463 [error] #PID<0.404446.0> running PinchflatWeb.Endpoint (connection #PID<0.404445.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404445.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 37224}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404446.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrPPf-YDqRwXkAIF9B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404445.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 37224}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404445.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 37224}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404446.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrPPf-YDqRwXkAIF9B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.Endpoin (truncated) 03:16:32.278 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:16:32.348 [info] GET / 03:16:32.348 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:16:32.348 [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 [] 03:16:32.349 [debug] QUERY OK source="media_profiles" db=0.3ms idle=147.7ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:16:32.349 [debug] QUERY OK source="sources" db=0.1ms idle=148.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:16:32.349 [debug] QUERY OK source="media_items" db=0.3ms idle=148.3ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:32.350 [debug] QUERY OK source="media_items" db=0.2ms idle=71.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:32.350 [debug] QUERY OK source="settings" db=0.0ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:32.350 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:32.350 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:32.351 [debug] QUERY OK source="tasks" db=0.0ms idle=1.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"] 03:16:32.351 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:16:32.351 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:16:32.352 [debug] QUERY OK source="sources" db=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" IN (?,?)) [4, 3] 03:16:32.353 [debug] QUERY OK source="media_items" db=0.8ms idle=1.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"))) [] 03:16:32.353 [debug] QUERY OK source="media_items" db=0.2ms idle=2.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:16:32.353 [debug] QUERY OK source="sources" db=0.0ms 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" = ?) [3] 03:16:32.354 [info] Sent 200 in 6ms 03:16:32.650 [info] GET / 03:16:32.650 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:16:32.651 [debug] QUERY OK source="settings" db=0.2ms idle=299.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:32.651 [debug] QUERY OK source="media_profiles" db=0.0ms idle=299.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:16:32.651 [debug] QUERY OK source="sources" db=0.0ms idle=297.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:16:32.651 [debug] QUERY OK source="media_items" db=0.4ms idle=297.6ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:32.652 [debug] QUERY OK source="media_items" db=0.1ms idle=298.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:32.652 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:32.652 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:32.652 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:32.653 [debug] QUERY OK source="tasks" db=0.1ms idle=1.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"] 03:16:32.653 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:16:32.654 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:16:32.654 [debug] QUERY OK source="sources" db=0.0ms idle=1.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 (?,?)) [4, 3] 03:16:32.655 [debug] QUERY OK source="media_items" db=0.5ms idle=1.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"))) [] 03:16:32.655 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:16:32.655 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [3] 03:16:32.656 [info] Sent 200 in 5ms 03:16:33.078 [info] GET / 03:16:33.079 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:16:33.079 [debug] QUERY OK source="settings" db=0.1ms idle=424.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:33.079 [debug] QUERY OK source="media_profiles" db=0.0ms idle=424.4ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:16:33.079 [debug] QUERY OK source="sources" db=0.0ms idle=424.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:16:33.080 [debug] QUERY OK source="media_items" db=0.2ms idle=424.0ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:33.080 [debug] QUERY OK source="media_items" db=0.1ms idle=72.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:33.080 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:33.080 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:33.080 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:33.081 [debug] QUERY OK source="tasks" db=0.0ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:16:33.081 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:16:33.082 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:16:33.082 [debug] QUERY OK source="sources" db=0.1ms idle=1.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 (?,?)) [4, 3] 03:16:33.083 [debug] QUERY OK source="media_items" db=0.4ms idle=1.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"))) [] 03:16:33.083 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:16:33.083 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [3] 03:16:33.084 [info] Sent 200 in 5ms 03:16:33.132 [info] GET / 03:16:33.132 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:16:33.132 [debug] QUERY OK source="settings" db=0.1ms idle=50.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:33.133 [debug] QUERY OK source="media_profiles" db=0.0ms idle=50.5ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:16:33.133 [debug] QUERY OK source="sources" db=0.0ms idle=49.7ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:16:33.133 [debug] QUERY OK source="media_items" db=0.5ms idle=49.6ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:33.134 [debug] QUERY OK source="media_items" db=0.1ms idle=50.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:16:33.134 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:33.134 [debug] QUERY OK source="settings" db=0.1ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:33.134 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:33.135 [debug] QUERY OK source="tasks" db=0.1ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:16:33.135 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:16:33.135 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:16:33.136 [debug] QUERY OK source="sources" db=0.0ms idle=1.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 (?,?)) [4, 3] 03:16:33.137 [debug] QUERY OK source="media_items" db=0.5ms idle=1.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 03:16:33.137 [debug] QUERY OK source="media_items" db=0.2ms idle=2.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:16:33.138 [debug] QUERY OK source="sources" db=0.1ms idle=2.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 03:16:33.138 [info] Sent 200 in 6ms 03:16:34.071 [info] POST /graphql 03:16:34.072 [info] Sent 404 in 244µs 03:16:34.072 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:34.132 [info] POST /graphql 03:16:34.132 [info] Sent 404 in 213µs 03:16:34.132 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:34.591 [info] POST /api 03:16:34.591 [info] Sent 404 in 242µs 03:16:34.591 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:34.607 [info] POST /api 03:16:34.607 [info] Sent 404 in 257µs 03:16:34.607 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:35.082 [info] POST /api/graphql 03:16:35.082 [info] Sent 404 in 278µs 03:16:35.082 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:35.176 [info] POST /api/graphql 03:16:35.176 [info] Sent 404 in 240µs 03:16:35.176 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:35.554 [info] POST /graphql/api 03:16:35.554 [info] Sent 404 in 235µs 03:16:35.554 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:35.700 [info] POST /graphql/api 03:16:35.700 [info] Sent 404 in 230µs 03:16:35.700 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:36.024 [info] POST /api/gql 03:16:36.025 [info] Sent 404 in 218µs 03:16:36.025 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:36.245 [info] POST /api/gql 03:16:36.245 [info] Sent 404 in 253µs 03:16:36.245 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:37.545 [info] GET /swagger-ui.html 03:16:37.545 [debug] QUERY OK source="settings" db=0.3ms idle=1344.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:37.546 [debug] QUERY OK source="settings" db=0.1ms idle=1345.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:37.546 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:37.546 [error] #PID<0.404476.0> running PinchflatWeb.Endpoint (connection #PID<0.404475.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /swagger-ui.html ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /swagger-ui (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404475.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 39450}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404476.0>, params: %{}, path_info: ["swagger-ui"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/swagger-ui.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrPxVic0nwfZgAIGIB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404475.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 39450}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /swagger-ui (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404475.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 39450}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404476.0>, params: %{}, path_info: ["swagger-ui"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/swagger-ui.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate" (truncated) 03:16:37.778 [info] GET /swagger-ui.html 03:16:37.779 [debug] QUERY OK source="settings" db=0.2ms idle=1578.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:37.779 [debug] QUERY OK source="settings" db=0.2ms idle=1578.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:37.779 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:37.780 [error] #PID<0.404478.0> running PinchflatWeb.Endpoint (connection #PID<0.404477.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /swagger-ui.html ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /swagger-ui (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404477.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 39466}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404478.0>, params: %{}, path_info: ["swagger-ui"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/swagger-ui.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrPyNP1Wt_q90AIGIh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404477.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 39466}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /swagger-ui (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404477.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 39466}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404478.0>, params: %{}, path_info: ["swagger-ui"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/swagger-ui.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must (truncated) 03:16:38.509 [info] GET /swagger/index.html 03:16:38.510 [debug] QUERY OK source="settings" db=0.1ms idle=963.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:38.510 [debug] QUERY OK source="settings" db=0.2ms idle=964.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:38.510 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:38.510 [error] #PID<0.404480.0> running PinchflatWeb.Endpoint (connection #PID<0.404479.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /swagger/index.html ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /swagger/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404479.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53472}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404480.0>, params: %{}, path_info: ["swagger", "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 => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/swagger/index.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrP07cFSwINKwAIGJB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404479.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53472}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /swagger/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404479.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53472}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404480.0>, params: %{}, path_info: ["swagger", "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 => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/swagger/index.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", " (truncated) 03:16:38.780 [info] GET /swagger/index.html 03:16:38.781 [debug] QUERY OK source="settings" db=0.1ms idle=1001.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:38.781 [debug] QUERY OK source="settings" db=0.0ms idle=1001.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:38.781 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:38.781 [error] #PID<0.404482.0> running PinchflatWeb.Endpoint (connection #PID<0.404481.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /swagger/index.html ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /swagger/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404481.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53486}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404482.0>, params: %{}, path_info: ["swagger", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/swagger/index.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrP18IucXv8S4AIGJh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404481.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53486}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /swagger/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404481.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53486}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404482.0>, params: %{}, path_info: ["swagger", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/swagger/index.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache (truncated) 03:16:39.511 [info] GET /swagger/swagger-ui.html 03:16:39.511 [debug] QUERY OK source="settings" db=0.1ms idle=1001.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:39.511 [debug] QUERY OK source="settings" db=0.0ms idle=1001.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:39.511 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:39.512 [error] #PID<0.404484.0> running PinchflatWeb.Endpoint (connection #PID<0.404483.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /swagger/swagger-ui.html ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /swagger/swagger-ui (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404483.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53490}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404484.0>, params: %{}, path_info: ["swagger", "swagger-ui"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/swagger/swagger-ui.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrP4qNo4gxSKoAIGKB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404483.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53490}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /swagger/swagger-ui (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404483.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53490}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404484.0>, params: %{}, path_info: ["swagger", "swagger-ui"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/swagger/swagger-ui.html", resp_body: nil, resp_cookies: %{}, (truncated) 03:16:39.788 [info] GET /swagger/swagger-ui.html 03:16:39.789 [debug] QUERY OK source="settings" db=0.2ms idle=1007.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:39.789 [debug] QUERY OK source="settings" db=0.0ms idle=1007.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:39.789 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:39.789 [error] #PID<0.404486.0> running PinchflatWeb.Endpoint (connection #PID<0.404485.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /swagger/swagger-ui.html ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /swagger/swagger-ui (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53498}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404486.0>, params: %{}, path_info: ["swagger", "swagger-ui"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/swagger/swagger-ui.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrP5sXatbVMeoAIGKh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53498}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /swagger/swagger-ui (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404485.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/swagger-ui.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53498}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404486.0>, params: %{}, path_info: ["swagger", "swagger-ui"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/swagger/swagger-ui.html", resp_body: nil, resp_cookies: (truncated) 03:16:40.514 [info] GET /webjars/swagger-ui/index.html 03:16:40.514 [debug] QUERY OK source="settings" db=0.1ms idle=1003.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:40.515 [debug] QUERY OK source="settings" db=0.0ms idle=1003.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:40.515 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:40.515 [error] #PID<0.404488.0> running PinchflatWeb.Endpoint (connection #PID<0.404487.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /webjars/swagger-ui/index.html ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /webjars/swagger-ui/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404487.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/webjars/swagger-ui/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53514}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404488.0>, params: %{}, path_info: ["webjars", "swagger-ui", "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 => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/webjars/swagger-ui/index.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrP8ZdzoKKBMgAIGLB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404487.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/webjars/swagger-ui/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53514}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /webjars/swagger-ui/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404487.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/webjars/swagger-ui/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53514}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404488.0>, params: %{}, path_info: ["webjars", "swagger-ui", "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 => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/webjars/swagger-ui/index.htm (truncated) 03:16:40.774 [info] GET /webjars/swagger-ui/index.html 03:16:40.774 [debug] QUERY OK source="settings" db=0.1ms idle=985.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:40.774 [debug] QUERY OK source="settings" db=0.0ms idle=985.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:40.774 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:40.775 [error] #PID<0.404490.0> running PinchflatWeb.Endpoint (connection #PID<0.404489.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /webjars/swagger-ui/index.html ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /webjars/swagger-ui/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404489.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/webjars/swagger-ui/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53526}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404490.0>, params: %{}, path_info: ["webjars", "swagger-ui", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/webjars/swagger-ui/index.html", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrP9XVcaA0-K0AIGLh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404489.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/webjars/swagger-ui/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53526}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /webjars/swagger-ui/index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404489.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/webjars/swagger-ui/index.html", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53526}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404490.0>, params: %{}, path_info: ["webjars", "swagger-ui", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/webjars/swagger- (truncated) 03:16:41.509 [info] GET /swagger.json 03:16:41.510 [debug] QUERY OK source="settings" db=0.1ms idle=995.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:41.510 [debug] QUERY OK source="settings" db=0.2ms idle=995.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:41.510 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:41.511 [error] #PID<0.404492.0> running PinchflatWeb.Endpoint (connection #PID<0.404491.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /swagger.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 /swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404491.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53536}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404492.0>, params: %{}, path_info: ["swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQAGygLAdClAAIGMB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404491.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53536}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404491.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53536}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404492.0>, params: %{}, path_info: ["swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id" (truncated) 03:16:41.775 [info] GET /swagger.json 03:16:41.776 [debug] QUERY OK source="settings" db=0.2ms idle=1001.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:41.776 [debug] QUERY OK source="settings" db=0.1ms idle=1001.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 [] 03:16:41.776 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:41.776 [error] #PID<0.404494.0> running PinchflatWeb.Endpoint (connection #PID<0.404493.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /swagger.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 /swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404493.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53540}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404494.0>, params: %{}, path_info: ["swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQBGIFbtHrwEAIGMh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404493.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53540}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404493.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53540}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404494.0>, params: %{}, path_info: ["swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x (truncated) 03:16:42.512 [info] GET /swagger/v1/swagger.json 03:16:42.513 [debug] QUERY OK source="settings" db=0.2ms idle=1002.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:42.513 [debug] QUERY OK source="settings" db=0.2ms idle=1002.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 [] 03:16:42.513 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:42.513 [error] #PID<0.404496.0> running PinchflatWeb.Endpoint (connection #PID<0.404495.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /swagger/v1/swagger.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 /swagger/v1/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404495.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/v1/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53550}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404496.0>, params: %{}, path_info: ["swagger", "v1", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/swagger/v1/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQD109GvCQ0IAIGNB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404495.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/v1/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53550}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /swagger/v1/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404495.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/v1/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53550}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404496.0>, params: %{}, path_info: ["swagger", "v1", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/swagger/v1/swagger.json", resp_body: nil, resp_cookies: %{}, (truncated) 03:16:42.809 [info] GET /swagger/v1/swagger.json 03:16:42.809 [debug] QUERY OK source="settings" db=0.2ms idle=1033.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:42.809 [debug] QUERY OK source="settings" db=0.2ms idle=1033.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:42.810 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:42.810 [error] #PID<0.404498.0> running PinchflatWeb.Endpoint (connection #PID<0.404497.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /swagger/v1/swagger.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 /swagger/v1/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404497.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/v1/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53560}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404498.0>, params: %{}, path_info: ["swagger", "v1", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/swagger/v1/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQE8hoinYXM4AIGNh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404497.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/v1/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53560}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /swagger/v1/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404497.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/swagger/v1/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53560}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404498.0>, params: %{}, path_info: ["swagger", "v1", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/swagger/v1/swagger.json", resp_body: nil, resp_coo (truncated) 03:16:43.509 [info] GET /v2/api-docs 03:16:43.510 [debug] QUERY OK source="settings" db=0.1ms idle=997.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:43.510 [debug] QUERY OK source="settings" db=0.0ms idle=996.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:43.510 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:43.510 [error] #PID<0.404500.0> running PinchflatWeb.Endpoint (connection #PID<0.404499.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /v2/api-docs ** (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/api-docs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404499.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v2/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53566}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404500.0>, params: %{}, path_info: ["v2", "api-docs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/v2/api-docs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQHjn9h4Q0dcAIGOB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404499.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v2/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53566}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /v2/api-docs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404499.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v2/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53566}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404500.0>, params: %{}, path_info: ["v2", "api-docs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/v2/api-docs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, (truncated) 03:16:43.784 [info] GET /v2/api-docs 03:16:43.784 [debug] QUERY OK source="settings" db=0.2ms idle=974.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:43.785 [debug] QUERY OK source="settings" db=0.0ms idle=974.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:43.785 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:43.785 [error] #PID<0.404502.0> running PinchflatWeb.Endpoint (connection #PID<0.404501.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /v2/api-docs ** (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/api-docs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404501.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v2/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53568}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404502.0>, params: %{}, path_info: ["v2", "api-docs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/v2/api-docs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQIlAy-zUvKwAIGOh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404501.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v2/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53568}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /v2/api-docs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404501.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v2/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53568}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404502.0>, params: %{}, path_info: ["v2", "api-docs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/v2/api-docs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, (truncated) 03:16:44.510 [info] GET /v3/api-docs 03:16:44.510 [debug] QUERY OK source="settings" db=0.2ms idle=1.0e3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:44.511 [debug] QUERY OK source="settings" db=0.1ms idle=1000.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:44.511 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:44.511 [error] #PID<0.404504.0> running PinchflatWeb.Endpoint (connection #PID<0.404503.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /v3/api-docs ** (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/api-docs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404503.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v3/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53574}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404504.0>, params: %{}, path_info: ["v3", "api-docs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/v3/api-docs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQLSG36PbIHUAIGPB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404503.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v3/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53574}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /v3/api-docs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404503.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v3/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53574}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404504.0>, params: %{}, path_info: ["v3", "api-docs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/v3/api-docs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, (truncated) 03:16:44.778 [info] GET /v3/api-docs 03:16:44.779 [debug] QUERY OK source="settings" db=0.2ms idle=994.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:44.779 [debug] QUERY OK source="settings" db=0.2ms idle=994.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:44.779 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:44.779 [error] #PID<0.404506.0> running PinchflatWeb.Endpoint (connection #PID<0.404505.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /v3/api-docs ** (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/api-docs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404505.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v3/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53580}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404506.0>, params: %{}, path_info: ["v3", "api-docs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/v3/api-docs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQMSEF3l-eKAAIGPh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404505.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v3/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53580}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /v3/api-docs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404505.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/v3/api-docs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53580}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404506.0>, params: %{}, path_info: ["v3", "api-docs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/v3/api-docs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, (truncated) 03:16:45.512 [info] GET /api-docs/swagger.json 03:16:45.512 [debug] QUERY OK source="settings" db=0.1ms idle=1001.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:45.513 [debug] QUERY OK source="settings" db=0.0ms idle=1001.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:45.513 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:45.513 [error] #PID<0.404508.0> running PinchflatWeb.Endpoint (connection #PID<0.404507.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /api-docs/swagger.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 /api-docs/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404507.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api-docs/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53586}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404508.0>, params: %{}, path_info: ["api-docs", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/api-docs/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQPBCjX_4ms4AIGQB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404507.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api-docs/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53586}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /api-docs/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404507.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api-docs/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53586}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404508.0>, params: %{}, path_info: ["api-docs", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/api-docs/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ (truncated) 03:16:45.807 [info] GET /api-docs/swagger.json 03:16:45.807 [debug] QUERY OK source="settings" db=0.1ms idle=1028.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:45.808 [debug] QUERY OK source="settings" db=0.2ms idle=1028.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:45.808 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:45.808 [error] #PID<0.404510.0> running PinchflatWeb.Endpoint (connection #PID<0.404509.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /api-docs/swagger.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 /api-docs/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404509.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api-docs/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53592}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404510.0>, params: %{}, path_info: ["api-docs", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/api-docs/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQQHUNPHMFi8AIGQh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404509.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api-docs/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53592}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /api-docs/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404509.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api-docs/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53592}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404510.0>, params: %{}, path_info: ["api-docs", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/api-docs/swagger.json", resp_body: nil, resp_cookies: %{}, resp_ (truncated) 03:16:46.518 [info] GET /api/swagger.json 03:16:46.518 [debug] QUERY OK source="settings" db=0.2ms idle=1005.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 [] 03:16:46.519 [debug] QUERY OK source="settings" db=0.2ms idle=1005.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:46.519 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:46.519 [error] #PID<0.404512.0> running PinchflatWeb.Endpoint (connection #PID<0.404511.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /api/swagger.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 /api/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404511.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53608}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404512.0>, params: %{}, path_info: ["api", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/api/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQSw0LmnAEUYAIGRB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404511.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53608}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /api/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404511.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53608}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404512.0>, params: %{}, path_info: ["api", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/api/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, (truncated) 03:16:46.779 [info] GET /api/swagger.json 03:16:46.779 [debug] QUERY OK source="settings" db=0.2ms idle=971.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:46.780 [debug] QUERY OK source="settings" db=0.0ms idle=971.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:46.780 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:46.780 [error] #PID<0.404514.0> running PinchflatWeb.Endpoint (connection #PID<0.404513.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /api/swagger.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 /api/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404513.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53620}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404514.0>, params: %{}, path_info: ["api", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/api/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQTvHYEvKbogAIGRh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404513.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53620}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /api/swagger (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404513.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/api/swagger.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53620}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "text/html,application/json", "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404514.0>, params: %{}, path_info: ["api", "swagger"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "text/html,application/json"}, {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/api/swagger.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age= (truncated) 03:16:47.510 [info] GET /@vite/env 03:16:47.510 [debug] QUERY OK source="settings" db=0.1ms idle=991.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:47.510 [debug] QUERY OK source="settings" db=0.1ms idle=991.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:47.510 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:47.511 [error] #PID<0.404516.0> running PinchflatWeb.Endpoint (connection #PID<0.404515.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /@vite/env ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /@vite/env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404515.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/@vite/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53630}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404516.0>, params: %{}, path_info: ["@vite", "env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/@vite/env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQWdWIr6u520AIGSB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404515.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/@vite/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53630}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /@vite/env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404515.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/@vite/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53630}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404516.0>, params: %{}, path_info: ["@vite", "env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/@vite/env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQWdWIr6u520AIGSB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ (truncated) 03:16:47.793 [info] GET /@vite/env 03:16:47.793 [debug] QUERY OK source="settings" db=0.1ms idle=1013.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:47.793 [debug] QUERY OK source="settings" db=0.1ms idle=1013.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:47.794 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:47.794 [error] #PID<0.404518.0> running PinchflatWeb.Endpoint (connection #PID<0.404517.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /@vite/env ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /@vite/env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404517.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/@vite/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53632}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404518.0>, params: %{}, path_info: ["@vite", "env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/@vite/env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQXg08jKbALIAIGSh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404517.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/@vite/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53632}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /@vite/env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404517.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/@vite/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 53632}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404518.0>, params: %{}, path_info: ["@vite", "env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/@vite/env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQXg08jKbALIAIGSh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack (truncated) 03:16:48.515 [info] GET /actuator/env 03:16:48.516 [debug] QUERY OK source="settings" db=0.2ms idle=1005.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:48.516 [debug] QUERY OK source="settings" db=0.1ms idle=1005.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:48.516 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:48.516 [error] #PID<0.404520.0> running PinchflatWeb.Endpoint (connection #PID<0.404519.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /actuator/env ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /actuator/env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404519.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/actuator/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32952}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404520.0>, params: %{}, path_info: ["actuator", "env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/actuator/env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQaNC0n9lMl0AIGTB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404519.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/actuator/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32952}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /actuator/env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404519.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/actuator/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32952}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404520.0>, params: %{}, path_info: ["actuator", "env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/actuator/env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQaNC0n9lMl0AIGTB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status (truncated) 03:16:48.775 [info] GET /actuator/env 03:16:48.776 [debug] QUERY OK source="settings" db=0.1ms idle=982.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:48.776 [debug] QUERY OK source="settings" db=0.1ms idle=982.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:48.776 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:48.776 [error] #PID<0.404522.0> running PinchflatWeb.Endpoint (connection #PID<0.404521.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /actuator/env ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /actuator/env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404521.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/actuator/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32966}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404522.0>, params: %{}, path_info: ["actuator", "env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/actuator/env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQbLBxJSqMd0AIGTh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404521.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/actuator/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32966}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /actuator/env (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404521.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/actuator/env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32966}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404522.0>, params: %{}, path_info: ["actuator", "env"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/actuator/env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQbLBxJSqMd0AIGTh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, (truncated) 03:16:49.510 [info] GET /server 03:16:49.510 [debug] QUERY OK source="settings" db=0.1ms idle=994.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 [] 03:16:49.510 [debug] QUERY OK source="settings" db=0.1ms idle=994.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:49.511 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:49.511 [error] #PID<0.404524.0> running PinchflatWeb.Endpoint (connection #PID<0.404523.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /server ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /server (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404523.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32968}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404524.0>, params: %{}, path_info: ["server"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/server", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQd6NznVKAJsAIGUB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404523.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32968}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /server (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404523.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32968}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404524.0>, params: %{}, path_info: ["server"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/server", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQd6NznVKAJsAIGUB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, (truncated) 03:16:49.788 [info] GET /server 03:16:49.789 [debug] QUERY OK source="settings" db=0.2ms idle=1013.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:49.789 [debug] QUERY OK source="settings" db=0.1ms idle=1013.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:49.789 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:49.789 [error] #PID<0.404526.0> running PinchflatWeb.Endpoint (connection #PID<0.404525.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /server ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /server (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404525.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32970}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404526.0>, params: %{}, path_info: ["server"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/server", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQe8oFD1tbzkAIGUh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404525.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32970}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /server (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404525.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32970}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404526.0>, params: %{}, path_info: ["server"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/server", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQe8oFD1tbzkAIGUh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :c (truncated) 03:16:50.517 [info] GET /.vscode/sftp.json 03:16:50.518 [debug] QUERY OK source="settings" db=0.1ms idle=1007.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 [] 03:16:50.518 [debug] QUERY OK source="settings" db=0.0ms idle=1007.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:50.518 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:50.518 [error] #PID<0.404528.0> running PinchflatWeb.Endpoint (connection #PID<0.404527.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /.vscode/sftp.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 /.vscode/sftp (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404527.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.vscode/sftp.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32984}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404528.0>, params: %{}, path_info: [".vscode", "sftp"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/.vscode/sftp.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQhqccYUjoxwAIGVB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404527.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.vscode/sftp.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32984}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /.vscode/sftp (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404527.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.vscode/sftp.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32984}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404528.0>, params: %{}, path_info: [".vscode", "sftp"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/.vscode/sftp.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQhqccYUjoxwAIGVB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWe (truncated) 03:16:50.787 [info] GET /.vscode/sftp.json 03:16:50.788 [debug] QUERY OK source="settings" db=0.1ms idle=998.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:50.788 [debug] QUERY OK source="settings" db=0.1ms idle=998.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:50.788 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:50.788 [error] #PID<0.404530.0> running PinchflatWeb.Endpoint (connection #PID<0.404529.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /.vscode/sftp.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 /.vscode/sftp (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404529.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.vscode/sftp.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32996}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404530.0>, params: %{}, path_info: [".vscode", "sftp"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/.vscode/sftp.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQiqxyPOc4MwAIGVh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404529.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.vscode/sftp.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32996}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /.vscode/sftp (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404529.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.vscode/sftp.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 32996}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404530.0>, params: %{}, path_info: [".vscode", "sftp"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/.vscode/sftp.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQiqxyPOc4MwAIGVh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: (truncated) 03:16:52.514 [info] GET /about 03:16:52.515 [debug] QUERY OK source="settings" db=0.1ms idle=482.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:52.515 [debug] QUERY OK source="settings" db=0.1ms idle=314.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:52.515 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:52.515 [error] #PID<0.404532.0> running PinchflatWeb.Endpoint (connection #PID<0.404531.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /about ** (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.404531.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/about", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33010}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404532.0>, params: %{}, path_info: ["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 => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/about", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQpGjiJX5XEwAIGWB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404531.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/about", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33010}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404531.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/about", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33010}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404532.0>, params: %{}, path_info: ["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 => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/about", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQpGjiJX5XEwAIGWB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file (truncated) 03:16:52.809 [info] GET /about 03:16:52.810 [debug] QUERY OK source="settings" db=0.1ms idle=608.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:52.810 [debug] QUERY OK source="settings" db=0.1ms idle=609.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:52.810 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:52.810 [error] #PID<0.404534.0> running PinchflatWeb.Endpoint (connection #PID<0.404533.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /about ** (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.404533.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/about", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33018}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404534.0>, params: %{}, path_info: ["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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/about", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQqM1Zoq9EMcAIGWh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404533.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/about", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33018}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /about (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404533.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/about", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33018}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404534.0>, params: %{}, path_info: ["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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/about", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQqM1Zoq9EMcAIGWh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, (truncated) 03:16:53.514 [info] GET /debug/default/view 03:16:53.515 [debug] QUERY OK source="settings" db=0.1ms idle=1.0e3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:53.515 [debug] QUERY OK source="settings" db=0.0ms idle=1.0e3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:53.515 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:53.515 [error] #PID<0.404538.0> running PinchflatWeb.Endpoint (connection #PID<0.404537.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /debug/default/view?panel=config ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /debug/default/view (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404537.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/debug/default/view", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33032}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, method: "GET", body_length: 0, path_info: :undefined, qs: "panel=config", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404538.0>, params: %{"panel" => "config"}, path_info: ["debug", "default", "view"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"panel" => "config"}, query_string: "panel=config", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/debug/default/view", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQs1AYQGWwOwAIGXh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404537.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/debug/default/view", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33032}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, method: "GET", body_length: 0, path_info: :undefined, qs: "panel=config", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /debug/default/view (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404537.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/debug/default/view", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33032}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, method: "GET", body_length: 0, path_info: :undefined, qs: "panel=config", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404538.0>, params: %{"panel" => "config"}, path_info: ["debug", "default", "view"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"panel" => "config"}, query_string: "panel=config", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/debug/default/view", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQs1AYQGWwOwAIGXh" (truncated) 03:16:53.794 [info] GET /debug/default/view 03:16:53.794 [debug] QUERY OK source="settings" db=0.1ms idle=984.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:53.795 [debug] QUERY OK source="settings" db=0.1ms 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 [] 03:16:53.795 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:53.795 [error] #PID<0.404540.0> running PinchflatWeb.Endpoint (connection #PID<0.404539.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /debug/default/view?panel=config ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /debug/default/view (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404539.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/debug/default/view", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33044}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, method: "GET", body_length: 0, path_info: :undefined, qs: "panel=config", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404540.0>, params: %{"panel" => "config"}, path_info: ["debug", "default", "view"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"panel" => "config"}, query_string: "panel=config", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/debug/default/view", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQt3nfP9gBswAIGYB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404539.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/debug/default/view", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33044}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, method: "GET", body_length: 0, path_info: :undefined, qs: "panel=config", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /debug/default/view (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404539.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/debug/default/view", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33044}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, method: "GET", body_length: 0, path_info: :undefined, qs: "panel=config", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404540.0>, params: %{"panel" => "config"}, path_info: ["debug", "default", "view"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{"panel" => "config"}, query_string: "panel=config", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/debug/default/view", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQt3nf (truncated) 03:16:54.513 [info] GET /v2/_catalog 03:16:54.513 [info] Sent 404 in 170µs 03:16:54.513 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:54.785 [info] GET /v2/_catalog 03:16:54.785 [info] Sent 404 in 193µs 03:16:54.785 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:55.518 [info] GET /ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application 03:16:55.519 [debug] QUERY OK source="settings" db=0.3ms idle=481.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:55.519 [debug] QUERY OK source="settings" db=0.0ms idle=318.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:55.519 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:55.519 [error] #PID<0.404546.0> running PinchflatWeb.Endpoint (connection #PID<0.404545.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404545.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33072}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404546.0>, params: %{}, path_info: ["ecp", "Current", "exporttool", "microsoft.exchange.ediscovery.exporttool"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ0So5tF17IoAIGZh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404545.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33072}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404545.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33072}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404546.0>, params: %{}, path_info: ["ecp", "Current", "exporttool", "microsoft.exchange.ediscovery.exporttool"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, (truncated) 03:16:55.839 [info] GET /ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application 03:16:55.839 [debug] QUERY OK source="settings" db=0.1ms idle=638.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 [] 03:16:55.840 [debug] QUERY OK source="settings" db=0.0ms idle=638.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:55.840 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:55.840 [error] #PID<0.404548.0> running PinchflatWeb.Endpoint (connection #PID<0.404547.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404547.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33086}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404548.0>, params: %{}, path_info: ["ecp", "Current", "exporttool", "microsoft.exchange.ediscovery.exporttool"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ1fK60fHnRUAIGaB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404547.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33086}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404547.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/ecp/Current/exporttool/microsoft.exchange.ediscovery.exporttool.application", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33086}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404548.0>, params: %{}, path_info: ["ecp", "Current", "exporttool", "microsoft.exchange.ediscovery.exporttool"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, (truncated) 03:16:56.519 [info] GET /server-status 03:16:56.520 [debug] QUERY OK source="settings" db=0.2ms idle=1001.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:56.520 [debug] QUERY OK source="settings" db=0.1ms idle=1001.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:56.520 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:56.520 [error] #PID<0.404550.0> running PinchflatWeb.Endpoint (connection #PID<0.404549.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /server-status ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /server-status (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404549.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server-status", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33092}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404550.0>, params: %{}, path_info: ["server-status"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/server-status", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ4BcSWZgaJ8AIGah"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404549.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server-status", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33092}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /server-status (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404549.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server-status", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33092}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404550.0>, params: %{}, path_info: ["server-status"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/server-status", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ4BcSWZgaJ8AIGah"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, st (truncated) 03:16:56.788 [info] GET /server-status 03:16:56.788 [debug] QUERY OK source="settings" db=0.2ms idle=948.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:56.789 [debug] QUERY OK source="settings" db=0.0ms idle=948.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:56.789 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:56.789 [error] #PID<0.404552.0> running PinchflatWeb.Endpoint (connection #PID<0.404551.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /server-status ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /server-status (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404551.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server-status", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33104}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404552.0>, params: %{}, path_info: ["server-status"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/server-status", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ5Bb5Tj4Zt0AIGbB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404551.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server-status", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33104}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /server-status (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404551.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/server-status", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33104}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404552.0>, params: %{}, path_info: ["server-status"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/server-status", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ5Bb5Tj4Zt0AIGbB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router (truncated) 03:16:57.515 [info] GET /login.action 03:16:57.515 [debug] QUERY OK source="settings" db=0.2ms idle=994.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:57.516 [debug] QUERY OK source="settings" db=0.2ms idle=995.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:57.516 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:57.516 [error] #PID<0.404554.0> running PinchflatWeb.Endpoint (connection #PID<0.404553.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /login.action ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /login (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404553.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/login.action", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33116}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404554.0>, params: %{}, path_info: ["login"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/login.action", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ7uvN5tNn50AIGbh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404553.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/login.action", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33116}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /login (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404553.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/login.action", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33116}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404554.0>, params: %{}, path_info: ["login"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/login.action", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ7uvN5tNn50AIGbh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {Pin (truncated) 03:16:57.787 [info] GET /login.action 03:16:57.787 [debug] QUERY OK source="settings" db=0.3ms idle=998.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:57.788 [debug] QUERY OK source="settings" db=0.1ms idle=998.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:57.788 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:57.788 [error] #PID<0.404556.0> running PinchflatWeb.Endpoint (connection #PID<0.404555.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /login.action ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /login (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404555.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/login.action", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33122}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404556.0>, params: %{}, path_info: ["login"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/login.action", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ8vk1xuJD0kAIGcB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404555.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/login.action", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33122}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /login (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404555.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/login.action", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33122}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404556.0>, params: %{}, path_info: ["login"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/login.action", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ8vk1xuJD0kAIGcB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ (truncated) 03:16:58.520 [info] GET /_all_dbs 03:16:58.520 [debug] QUERY OK source="settings" db=0.1ms idle=1004.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:58.520 [debug] QUERY OK source="settings" db=0.0ms idle=1004.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:58.520 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:58.521 [error] #PID<0.404558.0> running PinchflatWeb.Endpoint (connection #PID<0.404557.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /_all_dbs ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_all_dbs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404557.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_all_dbs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56366}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "content-type" => "application/json", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404558.0>, params: %{}, path_info: ["_all_dbs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"content-type", "application/json"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/_all_dbs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ_eUG_f7JXQAIGch"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404557.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_all_dbs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56366}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "content-type" => "application/json", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /_all_dbs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404557.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_all_dbs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56366}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "content-type" => "application/json", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404558.0>, params: %{}, path_info: ["_all_dbs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"content-type", "application/json"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/_all_dbs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrQ_eUG_f7JXQAIGch"} ], (truncated) 03:16:58.832 [info] GET /_all_dbs 03:16:58.832 [debug] QUERY OK source="settings" db=0.1ms idle=1044.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:58.832 [debug] QUERY OK source="settings" db=0.0ms idle=1044.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:58.833 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:58.833 [error] #PID<0.404560.0> running PinchflatWeb.Endpoint (connection #PID<0.404559.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /_all_dbs ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_all_dbs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404559.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_all_dbs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56380}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "content-type" => "application/json", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404560.0>, params: %{}, path_info: ["_all_dbs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"content-type", "application/json"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/_all_dbs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRAow2uoV4JkAIGdB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404559.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_all_dbs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56380}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "content-type" => "application/json", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /_all_dbs (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404559.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_all_dbs", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56380}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "content-type" => "application/json", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404560.0>, params: %{}, path_info: ["_all_dbs"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"content-type", "application/json"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/_all_dbs", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRAow2uoV4JkAIGdB"} (truncated) 03:16:59.524 [info] GET /.DS_Store 03:16:59.524 [debug] QUERY OK source="settings" db=0.2ms idle=1004.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:59.525 [debug] QUERY OK source="settings" db=0.2ms idle=1004.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:59.525 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:59.525 [error] #PID<0.404562.0> running PinchflatWeb.Endpoint (connection #PID<0.404561.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /.DS_Store ** (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.404561.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.DS_Store", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56392}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404562.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 => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/.DS_Store", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRDNxu9-jKnQAEnTD"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404561.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.DS_Store", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56392}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET / (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404561.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.DS_Store", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56392}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404562.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 => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/.DS_Store", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRDNxu9-jKnQAEnTD"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [ (truncated) 03:16:59.859 [info] GET /.DS_Store 03:16:59.860 [debug] QUERY OK source="settings" db=0.2ms idle=1027.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:59.860 [debug] QUERY OK source="settings" db=0.2ms idle=1027.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:16:59.860 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:16:59.860 [error] #PID<0.404564.0> running PinchflatWeb.Endpoint (connection #PID<0.404563.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /.DS_Store ** (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.404563.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.DS_Store", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56402}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404564.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/.DS_Store", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrREdqqWYUFykAIGdh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404563.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.DS_Store", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56402}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET / (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404563.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.DS_Store", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56402}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404564.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/.DS_Store", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrREdqqWYUFykAIGdh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2 (truncated) 03:17:00.146 [info] {"source":"oban","duration":247,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:17:00.800 [info] GET /.env 03:17:00.801 [debug] QUERY OK source="settings" db=0.3ms idle=1275.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:00.801 [debug] QUERY OK source="settings" db=0.1ms idle=941.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:00.801 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:00.801 [error] #PID<0.404566.0> running PinchflatWeb.Endpoint (connection #PID<0.404565.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /.env ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET / (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404565.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56412}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404566.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/.env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRH-DX2eTw3MAIGeB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404565.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56412}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET / (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404565.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.env", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56412}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404566.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/.env", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRH-DX2eTw3MAIGeB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoe (truncated) 03:17:02.279 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:17:02.792 [info] GET /.git/config 03:17:02.792 [debug] QUERY OK source="settings" db=0.1ms idle=1591.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:02.792 [debug] QUERY OK source="settings" db=0.1ms idle=746.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:02.792 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:02.793 [error] #PID<0.404568.0> running PinchflatWeb.Endpoint (connection #PID<0.404567.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /.git/config ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404567.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56420}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404568.0>, params: %{}, path_info: [".git", "config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/.git/config", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRPY24heywhUAEnTj"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404567.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56420}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404567.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56420}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404568.0>, params: %{}, path_info: [".git", "config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/.git/config", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRPY24heywhUAEnTj"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, stat (truncated) 03:17:04.449 [info] HEAD / 03:17:04.449 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:17:04.449 [debug] QUERY OK source="settings" db=0.1ms idle=400.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.449 [debug] QUERY OK source="media_profiles" db=0.1ms idle=248.5ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:17:04.449 [debug] QUERY OK source="sources" db=0.0ms idle=248.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:17:04.450 [debug] QUERY OK source="media_items" db=0.7ms idle=248.7ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:04.450 [debug] QUERY OK source="media_items" db=0.1ms idle=249.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:04.451 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.451 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.451 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.451 [debug] QUERY OK source="tasks" db=0.1ms idle=1.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"] 03:17:04.452 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:17:04.452 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:17:04.452 [debug] QUERY OK source="sources" db=0.0ms 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" IN (?,?)) [4, 3] 03:17:04.453 [debug] QUERY OK source="media_items" db=0.5ms idle=1.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"))) [] 03:17:04.454 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:17:04.454 [debug] QUERY OK source="sources" db=0.1ms idle=1.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" = ?) [3] 03:17:04.454 [info] Sent 200 in 5ms 03:17:04.528 [info] GET /.git/config 03:17:04.528 [debug] QUERY OK source="settings" db=0.1ms 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 [] 03:17:04.528 [debug] QUERY OK source="settings" db=0.1ms idle=75.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.528 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:04.529 [error] #PID<0.404572.0> running PinchflatWeb.Endpoint (connection #PID<0.404571.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /.git/config ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404571.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56432}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404572.0>, params: %{}, path_info: [".git", "config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/.git/config", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRV2vfG5VSJ8AEnUD"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404571.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56432}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /.git/config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404571.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/.git/config", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56432}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404572.0>, params: %{}, path_info: [".git", "config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/.git/config", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRV2vfG5VSJ8AEnUD"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, (truncated) 03:17:04.590 [info] GET / 03:17:04.590 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:17:04.590 [debug] QUERY OK source="settings" db=0.1ms idle=136.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.590 [debug] QUERY OK source="media_profiles" db=0.0ms idle=136.6ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:17:04.591 [debug] QUERY OK source="sources" db=0.1ms idle=136.5ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:17:04.591 [debug] QUERY OK source="media_items" db=0.3ms idle=62.6ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:04.591 [debug] QUERY OK source="media_items" db=0.1ms idle=62.9ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:04.592 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.592 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.592 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.592 [debug] QUERY OK source="tasks" db=0.0ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:17:04.593 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:17:04.593 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:17:04.593 [debug] QUERY OK source="sources" db=0.1ms idle=1.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, 3] 03:17:04.595 [debug] QUERY OK source="media_items" db=0.9ms idle=1.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"))) [] 03:17:04.595 [debug] QUERY OK source="media_items" db=0.2ms idle=2.2ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:17:04.595 [debug] QUERY OK source="sources" db=0.1ms idle=2.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 03:17:04.596 [info] Sent 200 in 6ms 03:17:04.934 [info] HEAD /_next 03:17:04.934 [debug] QUERY OK source="settings" db=0.2ms idle=340.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.934 [debug] QUERY OK source="settings" db=0.0ms idle=340.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:04.934 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:04.935 [error] #PID<0.404576.0> running PinchflatWeb.Endpoint (connection #PID<0.404575.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /_next ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404575.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56458}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404576.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRXXivjF85W0AIGih"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404575.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56458}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404575.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56458}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404576.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRXXivjF85W0AIGih"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 03:17:05.066 [info] HEAD /__rsc 03:17:05.066 [debug] QUERY OK source="settings" db=0.1ms idle=471.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.067 [debug] QUERY OK source="settings" db=0.0ms idle=471.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.067 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:05.067 [error] #PID<0.404578.0> running PinchflatWeb.Endpoint (connection #PID<0.404577.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /__rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404577.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56470}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404578.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRX3GGMXNqpQAIGjB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404577.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56470}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404577.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56470}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404578.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRX3GGMXNqpQAIGjB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 03:17:05.198 [info] HEAD /rsc 03:17:05.199 [debug] QUERY OK source="settings" db=0.2ms idle=264.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.199 [debug] QUERY OK source="settings" db=0.0ms idle=264.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.199 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:05.199 [error] #PID<0.404580.0> running PinchflatWeb.Endpoint (connection #PID<0.404579.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404579.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56480}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404580.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRYWlS-_jAJUAIGjh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404579.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56480}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404579.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56480}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404580.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRYWlS-_jAJUAIGjh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.Endpoin (truncated) 03:17:05.527 [info] GET /s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties 03:17:05.528 [debug] QUERY OK source="settings" db=0.1ms idle=478.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.528 [debug] QUERY OK source="settings" db=0.0ms idle=461.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 [] 03:17:05.528 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:05.528 [error] #PID<0.404582.0> running PinchflatWeb.Endpoint (connection #PID<0.404581.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties ** (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/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404581.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56488}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404582.0>, params: %{}, path_info: ["s", "231323e2638313e293e2031313", "_", ";", "META-INF", "maven", "com.atlassian.jira", "jira-webapp-dist", "pom"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRZlFbDrKZPgAIGkB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404581.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56488}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404581.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56488}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404582.0>, params: %{}, path_info: ["s", "231323e2638313e293e2031313", "_", ";", "META-INF", "maven", "com.atlassian.jira", "jira-webapp-dist", "pom"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinc (truncated) 03:17:05.601 [info] HEAD / 03:17:05.601 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:17:05.601 [debug] QUERY OK source="settings" db=0.1ms idle=534.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.601 [debug] QUERY OK source="media_profiles" db=0.0ms idle=402.5ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:17:05.601 [debug] QUERY OK source="sources" db=0.0ms idle=402.4ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:17:05.602 [debug] QUERY OK source="media_items" db=0.2ms idle=73.6ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:05.602 [debug] QUERY OK source="media_items" db=0.2ms idle=73.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:05.602 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.602 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.603 [debug] QUERY OK source="settings" db=0.1ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.603 [debug] QUERY OK source="tasks" db=0.1ms idle=1.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"] 03:17:05.604 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:17:05.604 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:17:05.604 [debug] QUERY OK source="sources" db=0.0ms idle=1.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 (?,?)) [4, 3] 03:17:05.605 [debug] QUERY OK source="media_items" db=0.4ms idle=1.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"))) [] 03:17:05.605 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:17:05.606 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [3] 03:17:05.606 [info] Sent 200 in 5ms 03:17:05.738 [info] GET / 03:17:05.738 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:17:05.738 [debug] QUERY OK source="settings" db=0.2ms idle=134.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.739 [debug] QUERY OK source="media_profiles" db=0.1ms idle=134.3ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:17:05.739 [debug] QUERY OK source="sources" db=0.0ms idle=133.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:17:05.739 [debug] QUERY OK source="media_items" db=0.2ms idle=133.3ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:05.739 [debug] QUERY OK source="media_items" db=0.2ms idle=133.4ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:05.740 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.740 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.740 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.740 [debug] QUERY OK source="tasks" db=0.0ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:17:05.741 [debug] QUERY OK source="media_items" db=0.0ms idle=1.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)) [] 03:17:05.741 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:17:05.741 [debug] QUERY OK source="sources" db=0.0ms idle=1.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, 3] 03:17:05.742 [debug] QUERY OK source="media_items" db=0.4ms idle=1.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"))) [] 03:17:05.743 [debug] QUERY OK source="media_items" db=0.2ms idle=1.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:17:05.743 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [3] 03:17:05.743 [info] Sent 200 in 5ms 03:17:05.824 [info] GET /s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties 03:17:05.824 [debug] QUERY OK source="settings" db=0.1ms idle=82.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.824 [debug] QUERY OK source="settings" db=0.1ms idle=82.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:05.824 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:05.825 [error] #PID<0.404588.0> running PinchflatWeb.Endpoint (connection #PID<0.404587.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties ** (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/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404587.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56524}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404588.0>, params: %{}, path_info: ["s", "231323e2638313e293e2031313", "_", ";", "META-INF", "maven", "com.atlassian.jira", "jira-webapp-dist", "pom"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRarvJPXQ5fcAIGrB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404587.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56524}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404587.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/s/231323e2638313e293e2031313/_/;/META-INF/maven/com.atlassian.jira/jira-webapp-dist/pom.properties", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56524}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404588.0>, params: %{}, path_info: ["s", "231323e2638313e293e2031313", "_", ";", "META-INF", "maven", "com.atlassian.jira", "jira-webapp-dist", "pom"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"ho (truncated) 03:17:06.277 [info] HEAD /_next 03:17:06.277 [debug] QUERY OK source="settings" db=0.1ms idle=534.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:06.277 [debug] QUERY OK source="settings" db=0.0ms idle=534.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:06.277 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:06.277 [error] #PID<0.404590.0> running PinchflatWeb.Endpoint (connection #PID<0.404589.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /_next ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404589.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56534}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404590.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRcXuBgpdR3AAIGrh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404589.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56534}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404589.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56534}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404590.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRcXuBgpdR3AAIGrh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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] (truncated) 03:17:06.407 [info] HEAD /__rsc 03:17:06.408 [debug] QUERY OK source="settings" db=0.2ms idle=583.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:06.409 [debug] QUERY OK source="settings" db=0.3ms idle=583.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:06.409 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:06.409 [error] #PID<0.404592.0> running PinchflatWeb.Endpoint (connection #PID<0.404591.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /__rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404591.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56536}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404592.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRc28Ixwo0CYAIGsB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404591.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56536}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404591.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56536}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404592.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRc28Ixwo0CYAIGsB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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] (truncated) 03:17:06.523 [info] GET /config.json 03:17:06.523 [debug] QUERY OK source="settings" db=0.1ms idle=472.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:06.523 [debug] QUERY OK source="settings" db=0.1ms idle=246.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:06.523 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:06.523 [error] #PID<0.404594.0> running PinchflatWeb.Endpoint (connection #PID<0.404593.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /config.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 /config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404593.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56548}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404594.0>, params: %{}, path_info: ["config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/config.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRdSXkGUP1PUAIGsh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404593.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56548}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /config (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404593.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/config.json", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56548}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404594.0>, params: %{}, path_info: ["config"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/config.json", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRdSXkGUP1PUAIGsh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {Pinch (truncated) 03:17:06.538 [info] HEAD /rsc 03:17:06.539 [debug] QUERY OK source="settings" db=0.1ms idle=261.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:06.539 [debug] QUERY OK source="settings" db=0.0ms idle=130.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:06.539 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:06.539 [error] #PID<0.404596.0> running PinchflatWeb.Endpoint (connection #PID<0.404595.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404595.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56550}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404596.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRdWIPHWcS2AAIGtB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404595.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56550}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404595.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56550}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404596.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRdWIPHWcS2AAIGtB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, {Pinchfla (truncated) 03:17:07.519 [info] GET /telescope/requests 03:17:07.520 [debug] QUERY OK source="settings" db=0.2ms idle=996.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:07.520 [debug] QUERY OK source="settings" db=0.3ms idle=996.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:07.521 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:07.521 [error] #PID<0.404598.0> running PinchflatWeb.Endpoint (connection #PID<0.404597.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /telescope/requests ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /telescope/requests (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404597.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/telescope/requests", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56566}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404598.0>, params: %{}, path_info: ["telescope", "requests"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/telescope/requests", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRhADXfa4MGwAIGth"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404597.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/telescope/requests", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56566}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /telescope/requests (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404597.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/telescope/requests", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 56566}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404598.0>, params: %{}, path_info: ["telescope", "requests"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/telescope/requests", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRhADXfa4MGwAIGth"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil (truncated) 03:17:08.518 [info] GET /info.php 03:17:08.518 [debug] QUERY OK source="settings" db=0.1ms idle=997.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:08.518 [debug] QUERY OK source="settings" db=0.1ms idle=997.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:08.518 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:08.519 [error] #PID<0.404600.0> running PinchflatWeb.Endpoint (connection #PID<0.404599.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /info.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 /info (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404599.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/info.php", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 54586}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404600.0>, params: %{}, path_info: ["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 => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/info.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRkuEKOdGA4YAIGuB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404599.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/info.php", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 54586}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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 /info (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404599.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/info.php", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 54586}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "134.209.25.199", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "134.209.25.199" }, 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.moozuk.net", method: "GET", owner: #PID<0.404600.0>, params: %{}, path_info: ["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 => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "134.209.25.199"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "134.209.25.199"} ], request_path: "/info.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRkuEKOdGA4YAIGuB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, (truncated) 03:17:09.522 [info] GET / 03:17:09.522 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{"rest_route" => "/wp/v2/users/"} Pipelines: [:browser] 03:17:09.522 [debug] QUERY OK source="settings" db=0.1ms idle=1321.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 [] 03:17:09.522 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1321.7ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:17:09.523 [debug] QUERY OK source="sources" db=0.0ms idle=1004.3ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:17:09.523 [debug] QUERY OK source="media_items" db=0.2ms idle=1004.2ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:09.523 [debug] QUERY OK source="media_items" db=0.2ms idle=468.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:09.524 [debug] QUERY OK source="settings" db=0.1ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:09.524 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:09.524 [debug] QUERY OK source="settings" db=0.1ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:09.525 [debug] QUERY OK source="tasks" db=0.1ms idle=1.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"] 03:17:09.525 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:17:09.525 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:17:09.526 [debug] QUERY OK source="sources" db=0.0ms idle=1.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 (?,?)) [4, 3] 03:17:09.527 [debug] QUERY OK source="media_items" db=0.5ms idle=1.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 03:17:09.527 [debug] QUERY OK source="media_items" db=0.3ms idle=2.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:17:09.527 [debug] QUERY OK source="sources" db=0.1ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 03:17:09.528 [info] Sent 200 in 6ms 03:17:09.833 [info] GET /telescope/requests 03:17:09.833 [debug] QUERY OK source="settings" db=0.3ms idle=307.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:09.834 [debug] QUERY OK source="settings" db=0.1ms idle=307.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:09.834 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:09.834 [error] #PID<0.404604.0> running PinchflatWeb.Endpoint (connection #PID<0.404603.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /telescope/requests ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /telescope/requests (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404603.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/telescope/requests", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 54594}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404604.0>, params: %{}, path_info: ["telescope", "requests"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/telescope/requests", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRpnkbDIySpYAIGyB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404603.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/telescope/requests", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 54594}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /telescope/requests (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404603.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/telescope/requests", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 54594}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404604.0>, params: %{}, path_info: ["telescope", "requests"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/telescope/requests", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRpnkbDIySpYAIGyB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: (truncated) 03:17:10.802 [info] GET /info.php 03:17:10.803 [debug] QUERY OK source="settings" db=0.3ms idle=1275.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:10.803 [debug] QUERY OK source="settings" db=0.1ms idle=1275.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:10.803 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:17:10.804 [error] #PID<0.404607.0> running PinchflatWeb.Endpoint (connection #PID<0.404606.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /info.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 /info (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404606.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/info.php", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 54596}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404607.0>, params: %{}, path_info: ["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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/info.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRtOyw22g3PkAIGyh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404606.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/info.php", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 54596}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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 /info (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404606.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/info.php", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 54596}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)", "x-forwarded-for" => "165.227.39.235", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "165.227.39.235" }, 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.moozuk.net", method: "GET", owner: #PID<0.404607.0>, params: %{}, path_info: ["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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (l9scan/2.0.231323e2638313e293e2031313; +https://leakix.net)"}, {"x-forwarded-for", "165.227.39.235"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "165.227.39.235"} ], request_path: "/info.php", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrRtOyw22g3PkAIGyh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router (truncated) 03:17:11.931 [info] GET / 03:17:11.931 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{"rest_route" => "/wp/v2/users/"} Pipelines: [:browser] 03:17:11.931 [debug] QUERY OK source="settings" db=0.1ms idle=1127.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:11.931 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1127.9ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:17:11.932 [debug] QUERY OK source="sources" db=0.0ms idle=873.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:17:11.932 [debug] QUERY OK source="media_items" db=0.2ms idle=731.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:11.932 [debug] QUERY OK source="media_items" db=0.2ms idle=731.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:11.933 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:11.933 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:11.933 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:11.934 [debug] QUERY OK source="tasks" db=0.1ms idle=1.5ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:17:11.934 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:17:11.934 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:17:11.935 [debug] QUERY OK source="sources" db=0.1ms idle=1.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, 3] 03:17:11.936 [debug] QUERY OK source="media_items" db=0.5ms idle=2.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 03:17:11.936 [debug] QUERY OK source="media_items" db=0.3ms idle=2.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:17:11.936 [debug] QUERY OK source="sources" db=0.0ms 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" = ?) [3] 03:17:11.937 [info] Sent 200 in 6ms 03:17:12.536 [info] GET / 03:17:12.536 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:17:12.537 [debug] QUERY OK source="settings" db=0.1ms idle=601.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:12.537 [debug] QUERY OK source="media_profiles" db=0.1ms idle=601.0ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:17:12.537 [debug] QUERY OK source="sources" db=0.0ms idle=600.8ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:17:12.537 [debug] QUERY OK source="media_items" db=0.2ms idle=600.7ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:12.538 [debug] QUERY OK source="media_items" db=0.1ms idle=477.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:17:12.538 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:12.538 [debug] QUERY OK source="settings" db=0.0ms 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 [] 03:17:12.538 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:17:12.539 [debug] QUERY OK source="tasks" db=0.1ms idle=1.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"] 03:17:12.539 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:17:12.539 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:17:12.539 [debug] QUERY OK source="sources" db=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" IN (?,?)) [4, 3] 03:17:12.540 [debug] QUERY OK source="media_items" db=0.4ms idle=1.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"))) [] 03:17:12.541 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:17:12.541 [debug] QUERY OK source="sources" db=0.0ms idle=2.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" = ?) [3] 03:17:12.542 [info] Sent 200 in 5ms 03:17:32.280 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:18:00.147 [info] {"source":"oban","duration":109,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:18:02.281 [info] {"source":"oban","duration":837,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:18:02.295 [info] HEAD / 03:18:02.295 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:18:02.295 [debug] QUERY OK source="settings" db=0.0ms 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 [] 03:18:02.295 [debug] QUERY OK source="media_profiles" db=0.0ms idle=94.7ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:18:02.296 [debug] QUERY OK source="sources" db=0.0ms idle=94.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:18:02.296 [debug] QUERY OK source="media_items" db=0.2ms idle=95.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:18:02.296 [debug] QUERY OK source="media_items" db=0.2ms idle=14.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:18:02.296 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:02.297 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:02.297 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:02.297 [debug] QUERY OK source="tasks" db=0.1ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:18:02.298 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:18:02.298 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:18:02.298 [debug] QUERY OK source="sources" db=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" IN (?,?)) [4, 3] 03:18:02.299 [debug] QUERY OK source="media_items" db=0.5ms idle=1.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"))) [] 03:18:02.300 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:18:02.300 [debug] QUERY OK source="sources" db=0.1ms idle=1.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" = ?) [3] 03:18:02.300 [info] Sent 200 in 5ms 03:18:02.575 [info] GET / 03:18:02.575 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:18:02.575 [debug] QUERY OK source="settings" db=0.2ms idle=276.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:02.575 [debug] QUERY OK source="media_profiles" db=0.0ms idle=276.8ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:18:02.575 [debug] QUERY OK source="sources" db=0.0ms idle=276.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:18:02.576 [debug] QUERY OK source="media_items" db=0.2ms idle=275.9ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:18:02.576 [debug] QUERY OK source="media_items" db=0.2ms idle=276.1ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:18:02.576 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:02.576 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:02.577 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:02.577 [debug] QUERY OK source="tasks" db=0.1ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:18:02.578 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:18:02.578 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:18:02.578 [debug] QUERY OK source="sources" db=0.1ms idle=1.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 (?,?)) [4, 3] 03:18:02.579 [debug] QUERY OK source="media_items" db=0.5ms idle=1.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 03:18:02.580 [debug] QUERY OK source="media_items" db=0.2ms idle=2.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:18:02.580 [debug] QUERY OK source="sources" db=0.0ms idle=2.2ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 03:18:02.581 [info] Sent 200 in 6ms 03:18:03.567 [info] HEAD /_next 03:18:03.568 [debug] QUERY OK source="settings" db=0.2ms idle=988.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:03.568 [debug] QUERY OK source="settings" db=0.0ms idle=988.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:03.568 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:18:03.568 [error] #PID<0.404624.0> running PinchflatWeb.Endpoint (connection #PID<0.404623.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /_next ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404623.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46032}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404624.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrUxy1bmdS8ukAIG7B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404623.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46032}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404623.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46032}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404624.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrUxy1bmdS8ukAIG7B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 03:18:03.741 [info] HEAD /__rsc 03:18:03.742 [debug] QUERY OK source="settings" db=0.2ms idle=1161.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:03.742 [debug] QUERY OK source="settings" db=0.2ms idle=1161.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:03.742 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:18:03.742 [error] #PID<0.404626.0> running PinchflatWeb.Endpoint (connection #PID<0.404625.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /__rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404625.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46048}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404626.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrUycXmR1CV7YAIG7h"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404625.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46048}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404625.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46048}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404626.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrUycXmR1CV7YAIG7h"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 03:18:03.895 [info] HEAD /rsc 03:18:03.895 [debug] QUERY OK source="settings" db=0.1ms idle=773.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:03.895 [debug] QUERY OK source="settings" db=0.1ms idle=327.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:18:03.895 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:18:03.896 [error] #PID<0.404628.0> running PinchflatWeb.Endpoint (connection #PID<0.404627.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404627.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46050}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404628.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrUzA8u9ukyzwAIG8B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404627.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46050}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404627.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 46050}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404628.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrUzA8u9ukyzwAIG8B"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.Endpoin (truncated) 03:18:32.283 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:19:00.148 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:19:02.284 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:19:32.285 [info] {"source":"oban","duration":666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:20:00.149 [info] {"source":"oban","duration":238,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:20:02.288 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:20:25.736 [info] HEAD / 03:20:25.736 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:20:25.736 [debug] QUERY OK source="settings" db=0.1ms idle=1462.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:25.736 [debug] QUERY OK source="media_profiles" db=0.1ms idle=535.6ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:20:25.736 [debug] QUERY OK source="sources" db=0.0ms idle=535.7ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:20:25.737 [debug] QUERY OK source="media_items" db=0.2ms idle=535.8ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:20:25.737 [debug] QUERY OK source="media_items" db=0.1ms idle=461.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:20:25.737 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:25.738 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:25.738 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:25.738 [debug] QUERY OK source="tasks" db=0.0ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:20:25.739 [debug] QUERY OK source="media_items" db=0.0ms idle=1.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)) [] 03:20:25.739 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:20:25.739 [debug] QUERY OK source="sources" db=0.0ms 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" IN (?,?)) [4, 3] 03:20:25.740 [debug] QUERY OK source="media_items" db=0.4ms idle=1.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"))) [] 03:20:25.740 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:20:25.741 [debug] QUERY OK source="sources" db=0.0ms idle=2.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" = ?) [3] 03:20:25.741 [info] Sent 200 in 5ms 03:20:25.878 [info] GET / 03:20:25.878 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:20:25.879 [debug] QUERY OK source="settings" db=0.1ms idle=139.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 [] 03:20:25.879 [debug] QUERY OK source="media_profiles" db=0.0ms idle=139.4ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:20:25.879 [debug] QUERY OK source="sources" db=0.1ms idle=138.7ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:20:25.879 [debug] QUERY OK source="media_items" db=0.2ms idle=138.5ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:20:25.880 [debug] QUERY OK source="media_items" db=0.1ms idle=138.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:20:25.880 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:25.880 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:25.880 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:25.881 [debug] QUERY OK source="tasks" db=0.1ms idle=1.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"] 03:20:25.881 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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)) [] 03:20:25.882 [debug] QUERY OK source="media_items" db=0.2ms idle=1.5ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:20:25.882 [debug] QUERY OK source="sources" db=0.1ms idle=1.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, 3] 03:20:25.883 [debug] QUERY OK source="media_items" db=0.5ms idle=2.0ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 03:20:25.883 [debug] QUERY OK source="media_items" db=0.2ms idle=2.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:20:25.883 [debug] QUERY OK source="sources" db=0.0ms idle=2.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" = ?) [3] 03:20:25.884 [info] Sent 200 in 5ms 03:20:26.866 [info] HEAD /_next 03:20:26.866 [debug] QUERY OK source="settings" db=0.1ms idle=984.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:26.866 [debug] QUERY OK source="settings" db=0.1ms idle=983.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:26.866 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:20:26.866 [error] #PID<0.404648.0> running PinchflatWeb.Endpoint (connection #PID<0.404647.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /_next ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404647.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59494}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404648.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrdHn5s4USWs4AIHCB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404647.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59494}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404647.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59494}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404648.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrdHn5s4USWs4AIHCB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 03:20:27.048 [info] HEAD /__rsc 03:20:27.049 [debug] QUERY OK source="settings" db=0.7ms idle=1164.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:27.049 [debug] QUERY OK source="settings" db=0.2ms idle=1165.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 [] 03:20:27.049 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:20:27.050 [error] #PID<0.404650.0> running PinchflatWeb.Endpoint (connection #PID<0.404649.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /__rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404649.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59500}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404650.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrdITR-FSqpiwAIHCh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404649.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59500}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404649.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59500}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404650.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrdITR-FSqpiwAIHCh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 03:20:27.182 [info] HEAD /rsc 03:20:27.183 [debug] QUERY OK source="settings" db=0.2ms idle=905.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:27.183 [debug] QUERY OK source="settings" db=0.2ms idle=316.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:20:27.183 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:20:27.184 [error] #PID<0.404652.0> running PinchflatWeb.Endpoint (connection #PID<0.404651.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404651.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59516}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404652.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrdIzaED4M-WgAIHDB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404651.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59516}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404651.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59516}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404652.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrdIzaED4M-WgAIHDB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.Endpoin (truncated) 03:20:32.289 [info] {"source":"oban","duration":394,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:00.150 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:21:02.290 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:31.362 [info] HEAD / 03:21:31.363 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:21:31.363 [debug] QUERY OK source="settings" db=0.1ms idle=1162.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:31.363 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1162.3ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:21:31.363 [debug] QUERY OK source="sources" db=0.0ms idle=1162.4ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:21:31.363 [debug] QUERY OK source="media_items" db=0.2ms idle=1003.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:21:31.364 [debug] QUERY OK source="media_items" db=0.1ms idle=2.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:21:31.364 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:31.364 [debug] QUERY OK source="settings" db=0.2ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:31.365 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:31.365 [debug] QUERY OK source="tasks" db=0.0ms idle=1.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"] 03:21:31.366 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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)) [] 03:21:31.366 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:21:31.366 [debug] QUERY OK source="sources" db=0.0ms idle=1.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, 3] 03:21:31.367 [debug] QUERY OK source="media_items" db=0.4ms idle=1.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 03:21:31.368 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:21:31.368 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [3] 03:21:31.368 [info] Sent 200 in 5ms 03:21:31.514 [info] GET / 03:21:31.515 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:21:31.515 [debug] QUERY OK source="settings" db=0.1ms idle=148.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:31.515 [debug] QUERY OK source="media_profiles" db=0.1ms idle=148.7ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:21:31.515 [debug] QUERY OK source="sources" db=0.0ms idle=147.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:21:31.516 [debug] QUERY OK source="media_items" db=0.4ms idle=147.7ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:21:31.516 [debug] QUERY OK source="media_items" db=0.1ms idle=148.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:21:31.516 [debug] QUERY OK source="settings" db=0.1ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:31.516 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:31.517 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:31.517 [debug] QUERY OK source="tasks" db=0.0ms idle=1.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"] 03:21:31.517 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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)) [] 03:21:31.518 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:21:31.518 [debug] QUERY OK source="sources" db=0.1ms idle=1.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 (?,?)) [4, 3] 03:21:31.519 [debug] QUERY OK source="media_items" db=0.5ms idle=1.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"))) [] 03:21:31.519 [debug] QUERY OK source="media_items" db=0.3ms idle=2.0ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:21:31.520 [debug] QUERY OK source="sources" db=0.0ms idle=2.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" = ?) [3] 03:21:31.520 [info] Sent 200 in 5ms 03:21:32.292 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:21:32.398 [info] HEAD /_next 03:21:32.399 [debug] QUERY OK source="settings" db=0.2ms idle=879.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:32.399 [debug] QUERY OK source="settings" db=0.1ms idle=879.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:32.399 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:21:32.399 [error] #PID<0.404664.0> running PinchflatWeb.Endpoint (connection #PID<0.404663.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /_next ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404663.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58584}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404664.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrg7wBaGo-uW4AIHGB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404663.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58584}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404663.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58584}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404664.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrg7wBaGo-uW4AIHGB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 03:21:32.573 [info] HEAD /__rsc 03:21:32.574 [debug] QUERY OK source="settings" db=0.1ms idle=1053.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:32.574 [debug] QUERY OK source="settings" db=0.1ms idle=281.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 [] 03:21:32.574 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:21:32.574 [error] #PID<0.404666.0> running PinchflatWeb.Endpoint (connection #PID<0.404665.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /__rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404665.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58590}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404666.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrg8ZxaL1mqlQAIHGh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404665.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58590}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404665.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58590}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404666.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrg8ZxaL1mqlQAIHGh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 03:21:32.705 [info] HEAD /rsc 03:21:32.706 [debug] QUERY OK source="settings" db=0.2ms idle=343.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:32.706 [debug] QUERY OK source="settings" db=0.1ms idle=307.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 [] 03:21:32.706 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:21:32.706 [error] #PID<0.404668.0> running PinchflatWeb.Endpoint (connection #PID<0.404667.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404667.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58600}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404668.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrg85SrpLFkjYAIHHB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404667.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58600}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404667.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58600}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404668.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrg85SrpLFkjYAIHHB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.Endpoin (truncated) 03:21:33.621 [info] HEAD / 03:21:33.621 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:21:33.621 [debug] QUERY OK source="settings" db=0.1ms idle=1047.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:33.622 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1047.7ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:21:33.622 [debug] QUERY OK source="sources" db=0.0ms idle=916.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:21:33.622 [debug] QUERY OK source="media_items" db=0.2ms idle=916.0ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:21:33.623 [debug] QUERY OK source="media_items" db=0.2ms idle=259.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:21:33.623 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:33.623 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:33.623 [debug] QUERY OK source="settings" db=0.1ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:33.624 [debug] QUERY OK source="tasks" db=0.0ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:21:33.624 [debug] QUERY OK source="media_items" db=0.0ms idle=1.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)) [] 03:21:33.624 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:21:33.625 [debug] QUERY OK source="sources" db=0.0ms 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" IN (?,?)) [4, 3] 03:21:33.626 [debug] QUERY OK source="media_items" db=0.4ms idle=1.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"))) [] 03:21:33.626 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:21:33.626 [debug] QUERY OK source="sources" db=0.1ms idle=1.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" = ?) [3] 03:21:33.627 [info] Sent 200 in 5ms 03:21:33.763 [info] GET / 03:21:33.764 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:21:33.764 [debug] QUERY OK source="settings" db=0.1ms idle=139.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:33.764 [debug] QUERY OK source="media_profiles" db=0.1ms idle=139.2ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:21:33.764 [debug] QUERY OK source="sources" db=0.0ms idle=138.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:21:33.765 [debug] QUERY OK source="media_items" db=0.3ms idle=138.4ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:21:33.765 [debug] QUERY OK source="media_items" db=0.2ms idle=138.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:21:33.765 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:33.766 [debug] QUERY OK source="settings" db=0.1ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:33.766 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:33.766 [debug] QUERY OK source="tasks" db=0.1ms idle=1.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"] 03:21:33.767 [debug] QUERY OK source="media_items" db=0.0ms idle=1.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)) [] 03:21:33.767 [debug] QUERY OK source="media_items" db=0.3ms idle=1.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] 03:21:33.767 [debug] QUERY OK source="sources" db=0.0ms idle=1.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 (?,?)) [4, 3] 03:21:33.768 [debug] QUERY OK source="media_items" db=0.4ms idle=1.9ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 03:21:33.769 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:21:33.769 [debug] QUERY OK source="sources" db=0.0ms idle=2.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" = ?) [3] 03:21:33.769 [info] Sent 200 in 5ms 03:21:35.114 [info] HEAD /_next 03:21:35.114 [debug] QUERY OK source="settings" db=0.1ms idle=1346.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:35.115 [debug] QUERY OK source="settings" db=0.0ms idle=1346.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:35.115 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:21:35.115 [error] #PID<0.404674.0> running PinchflatWeb.Endpoint (connection #PID<0.404673.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /_next ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404673.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58626}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404674.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrhF3hUAUAkA0AIHMB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404673.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58626}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404673.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58626}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404674.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrhF3hUAUAkA0AIHMB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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] (truncated) 03:21:35.313 [info] HEAD /__rsc 03:21:35.314 [debug] QUERY OK source="settings" db=0.2ms idle=949.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 [] 03:21:35.314 [debug] QUERY OK source="settings" db=0.0ms idle=199.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:35.314 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:21:35.314 [error] #PID<0.404676.0> running PinchflatWeb.Endpoint (connection #PID<0.404675.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /__rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404675.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58638}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404676.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrhGnDBbWnmKEAIHMh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404675.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58638}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404675.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58638}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404676.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrhGnDBbWnmKEAIHMh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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] (truncated) 03:21:35.446 [info] HEAD /rsc 03:21:35.446 [debug] QUERY OK source="settings" db=0.1ms idle=245.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:35.447 [debug] QUERY OK source="settings" db=0.1ms idle=245.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:21:35.447 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:21:35.447 [error] #PID<0.404678.0> running PinchflatWeb.Endpoint (connection #PID<0.404677.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404677.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58654}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404678.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrhHGrTYn_d5kAIHNB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404677.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58654}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404677.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 58654}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.404678.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINrhHGrTYn_d5kAIHNB"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, {Pinchfla (truncated) 03:22:00.151 [info] {"source":"oban","duration":220,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:22:02.294 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:22:05.969 [info] GET / 03:22:05.969 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:22:05.970 [debug] QUERY OK source="settings" db=0.2ms idle=1566.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:22:05.970 [debug] QUERY OK source="media_profiles" db=0.0ms idle=769.0ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:22:05.970 [debug] QUERY OK source="sources" db=0.0ms idle=769.1ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:22:05.970 [debug] QUERY OK source="media_items" db=0.2ms idle=769.2ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:22:05.970 [debug] QUERY OK source="media_items" db=0.1ms idle=566.2ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:22:05.971 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:22:05.971 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:22:05.971 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:22:05.972 [debug] QUERY OK source="tasks" db=0.0ms idle=1.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"] 03:22:05.972 [debug] QUERY OK source="media_items" db=0.0ms idle=1.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)) [] 03:22:05.972 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:22:05.972 [debug] QUERY OK source="sources" db=0.0ms idle=1.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, 3] 03:22:05.973 [debug] QUERY OK source="media_items" db=0.5ms idle=1.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"))) [] 03:22:05.974 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:22:05.974 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [3] 03:22:05.975 [info] Sent 200 in 5ms 03:22:06.155 [info] GET / 03:22:06.156 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:22:06.156 [debug] QUERY OK source="settings" db=0.1ms idle=183.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:22:06.156 [debug] QUERY OK source="media_profiles" db=0.0ms idle=183.6ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:22:06.156 [debug] QUERY OK source="sources" db=0.0ms idle=182.8ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:22:06.156 [debug] QUERY OK source="media_items" db=0.2ms idle=182.5ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:22:06.157 [debug] QUERY OK source="media_items" db=0.1ms idle=182.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:22:06.157 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:22:06.157 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:22:06.157 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:22:06.158 [debug] QUERY OK source="tasks" db=0.0ms idle=1.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"] 03:22:06.158 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:22:06.158 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:22:06.159 [debug] QUERY OK source="sources" db=0.0ms idle=1.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, 3] 03:22:06.159 [debug] QUERY OK source="media_items" db=0.4ms idle=1.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"))) [] 03:22:06.160 [debug] QUERY OK source="media_items" db=0.2ms idle=1.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 03:22:06.160 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [3] 03:22:06.161 [info] Sent 200 in 5ms 03:22:32.295 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:23:00.152 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:23:02.296 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:23:32.298 [info] {"source":"oban","duration":818,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:24:00.153 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:24:02.299 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:24:32.300 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:25:00.155 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:25:02.302 [info] {"source":"oban","duration":810,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:25:32.303 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:26:00.156 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:26:02.304 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:26:32.306 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:27:00.157 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:27:02.307 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:27:32.308 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:28:00.158 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:28:02.309 [info] {"source":"oban","duration":821,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:28:32.311 [info] {"source":"oban","duration":511,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:00.159 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:29:02.312 [info] {"source":"oban","duration":877,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:32.314 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:29:54.648 [info] GET / 03:29:54.648 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:29:54.648 [debug] QUERY OK source="settings" db=0.1ms idle=679.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:29:54.649 [debug] QUERY OK source="media_profiles" db=0.0ms idle=444.9ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:29:54.649 [debug] QUERY OK source="sources" db=0.0ms idle=445.0ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:29:54.649 [debug] QUERY OK source="media_items" db=0.2ms idle=445.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:29:54.649 [debug] QUERY OK source="media_items" db=0.1ms idle=445.5ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:29:54.650 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:29:54.650 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:29:54.650 [debug] QUERY OK source="settings" db=0.1ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:29:54.651 [debug] QUERY OK source="tasks" db=0.0ms idle=1.3ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 03:29:54.651 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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)) [] 03:29:54.651 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:29:54.651 [debug] QUERY OK source="sources" db=0.0ms 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" IN (?,?)) [4, 3] 03:29:54.652 [debug] QUERY OK source="media_items" db=0.4ms idle=1.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"))) [] 03:29:54.653 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:29:54.653 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [3] 03:29:54.653 [info] Sent 200 in 5ms 03:29:55.416 [info] GET /favicon.png 03:29:55.416 [debug] QUERY OK source="settings" db=0.1ms idle=764.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:29:55.417 [debug] QUERY OK source="settings" db=0.0ms idle=764.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:29:55.417 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 03:29:55.417 [error] #PID<0.404738.0> running PinchflatWeb.Endpoint (connection #PID<0.404737.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /favicon.png ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /favicon (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404737.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/favicon.png", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 52546}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "okhttp/5.3.0", "x-forwarded-for" => "54.237.243.26", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "54.237.243.26" }, 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.moozuk.net", method: "GET", owner: #PID<0.404738.0>, params: %{}, path_info: ["favicon"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "okhttp/5.3.0"}, {"x-forwarded-for", "54.237.243.26"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "54.237.243.26"} ], request_path: "/favicon.png", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINr-No2tDTjm7AAIHYh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.404737.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/favicon.png", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 52546}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "okhttp/5.3.0", "x-forwarded-for" => "54.237.243.26", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "54.237.243.26" }, 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 /favicon (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.404737.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/favicon.png", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 52546}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept-encoding" => "gzip", "connection" => "close", "host" => "pinchflat.moozuk.net", "user-agent" => "okhttp/5.3.0", "x-forwarded-for" => "54.237.243.26", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "54.237.243.26" }, 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.moozuk.net", method: "GET", owner: #PID<0.404738.0>, params: %{}, path_info: ["favicon"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept-encoding", "gzip"}, {"connection", "close"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "okhttp/5.3.0"}, {"x-forwarded-for", "54.237.243.26"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "54.237.243.26"} ], request_path: "/favicon.png", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINr-No2tDTjm7AAIHYh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :unset, status: nil }, router: PinchflatWeb.Router }, status: 404, stack: [ {PinchflatWeb.Router, :call, 2, [file: ~c"deps/phoenix/lib/phoenix/router.ex", line: 541]}, {PinchflatWeb.Endpoint, :plug_builder_call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, {PinchflatWeb.Endpoint, :call, 2, [file: ~c"lib/pinchflat_web/endpoint.ex", line: 1]}, (truncated) 03:30:00.160 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:30:02.315 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:30:16.371 [info] GET / 03:30:16.371 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 03:30:16.371 [debug] QUERY OK source="settings" db=0.1ms idle=1167.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:30:16.372 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1168.0ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 03:30:16.372 [debug] QUERY OK source="sources" db=0.0ms idle=373.8ms SELECT count(s0."id") FROM "sources" AS s0 [] 03:30:16.372 [debug] QUERY OK source="media_items" db=0.2ms idle=168.4ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:30:16.372 [debug] QUERY OK source="media_items" db=0.1ms idle=168.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 03:30:16.373 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:30:16.373 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:30:16.373 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 03:30:16.374 [debug] QUERY OK source="tasks" db=0.0ms idle=1.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"] 03:30:16.374 [debug] QUERY OK source="media_items" db=0.0ms idle=1.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)) [] 03:30:16.374 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 03:30:16.374 [debug] QUERY OK source="sources" db=0.0ms idle=1.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 (?,?)) [4, 3] 03:30:16.375 [debug] QUERY OK source="media_items" db=0.5ms idle=1.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"))) [] 03:30:16.376 [debug] QUERY OK source="media_items" db=0.2ms idle=1.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] 03:30:16.376 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [3] 03:30:16.376 [info] Sent 200 in 5ms 03:30:32.316 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:31:00.161 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:31:02.318 [info] {"source":"oban","duration":793,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:31:32.319 [info] {"source":"oban","duration":610,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:32:00.162 [info] {"source":"oban","duration":103,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:32:02.320 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:32:32.321 [info] {"source":"oban","duration":497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:33:00.163 [info] {"source":"oban","duration":205,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:33:02.322 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:33:32.324 [info] {"source":"oban","duration":816,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:34:00.164 [info] {"source":"oban","duration":263,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:34:02.325 [info] {"source":"oban","duration":629,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:34:32.326 [info] {"source":"oban","duration":619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:35:00.166 [info] {"source":"oban","duration":406,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:35:02.327 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:35:32.328 [info] {"source":"oban","duration":493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:36:00.167 [info] {"source":"oban","duration":167,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:36:02.329 [info] {"source":"oban","duration":487,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:36:32.330 [info] {"source":"oban","duration":476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:37:00.168 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:37:02.331 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:37:32.332 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:38:00.170 [info] {"source":"oban","duration":244,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:38:02.333 [info] {"source":"oban","duration":691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:38:32.334 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:39:00.171 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:39:02.335 [info] {"source":"oban","duration":492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:39:32.336 [info] {"source":"oban","duration":842,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:40:00.172 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:40:02.338 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:40:32.339 [info] {"source":"oban","duration":524,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:41:00.173 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:41:02.340 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:41:32.341 [info] {"source":"oban","duration":556,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:42:00.174 [info] {"source":"oban","duration":300,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:42:02.342 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:42:32.343 [info] {"source":"oban","duration":699,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:43:00.175 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:43:02.345 [info] {"source":"oban","duration":862,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:43:32.347 [info] {"source":"oban","duration":637,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:44:00.176 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:44:02.348 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:44:32.349 [info] {"source":"oban","duration":733,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:00.177 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:45:02.351 [info] {"source":"oban","duration":664,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:45:32.354 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:46:00.179 [info] {"source":"oban","duration":146,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:46:02.355 [info] {"source":"oban","duration":901,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:46:32.357 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:47:00.180 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:47:02.358 [info] {"source":"oban","duration":624,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:47:32.359 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:48:00.181 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:48:02.361 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:48:32.362 [info] {"source":"oban","duration":473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:49:00.182 [info] {"source":"oban","duration":255,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:49:02.363 [info] {"source":"oban","duration":690,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:49:32.364 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:00.183 [info] {"source":"oban","duration":269,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:50:02.365 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:50:32.366 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:51:00.184 [info] {"source":"oban","duration":192,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:51:02.368 [info] {"source":"oban","duration":634,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:51:32.369 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:52:00.185 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:52:02.370 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:52:32.371 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:53:00.186 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:53:02.373 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:53:32.374 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:54:00.187 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:54:02.376 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:54:32.377 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:55:00.188 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:55:02.378 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:55:32.379 [info] {"source":"oban","duration":595,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:56:00.189 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:56:02.380 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:56:32.381 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:57:00.190 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:57:02.382 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:57:32.383 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:58:00.191 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:58:02.384 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:58:32.385 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:59:00.192 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 03:59:02.387 [info] {"source":"oban","duration":673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 03:59:32.388 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:00:00.193 [info] {"source":"oban","duration":111,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:00:02.389 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:00:32.390 [info] {"source":"oban","duration":715,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:00.194 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:01:02.391 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:01:32.392 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:02:00.195 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:02:02.393 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:02:32.394 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:03:00.196 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:03:02.395 [info] {"source":"oban","duration":414,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:03:32.396 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:04:00.197 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:04:02.397 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:04:32.398 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:05:00.198 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:05:02.399 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:05:32.401 [info] {"source":"oban","duration":510,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:06:00.199 [info] {"source":"oban","duration":222,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:06:02.402 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:06:32.403 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:07:00.200 [info] {"source":"oban","duration":137,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:07:02.405 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:07:32.406 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:08:00.201 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:08:02.407 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:08:32.409 [info] {"source":"oban","duration":497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:09:00.202 [info] {"source":"oban","duration":218,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:09:02.410 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:09:32.411 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:10:00.203 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:10:02.412 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:10:32.413 [info] {"source":"oban","duration":489,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:11:00.204 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:11:02.414 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:11:32.415 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:12:00.205 [info] {"source":"oban","duration":206,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:12:02.416 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:12:32.418 [info] {"source":"oban","duration":790,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:13:00.206 [info] {"source":"oban","duration":274,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:13:02.420 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:13:32.421 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:14:00.207 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:14:02.422 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:14:32.423 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:15:00.208 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:15:02.424 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:15:32.425 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:16:00.209 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:16:02.426 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:16:32.427 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:17:00.210 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:17:02.428 [info] {"source":"oban","duration":630,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:17:32.430 [info] {"source":"oban","duration":812,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:18:00.211 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:18:02.432 [info] {"source":"oban","duration":743,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:18:32.433 [info] {"source":"oban","duration":338,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:19:00.213 [info] {"source":"oban","duration":219,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:19:02.434 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:19:32.435 [info] {"source":"oban","duration":740,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:20:00.214 [info] {"source":"oban","duration":210,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:20:02.436 [info] {"source":"oban","duration":725,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:20:32.437 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:21:00.215 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:21:02.438 [info] {"source":"oban","duration":888,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:21:32.440 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:22:00.216 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:22:02.441 [info] {"source":"oban","duration":728,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:22:32.443 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:23:00.217 [info] {"source":"oban","duration":247,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:23:02.444 [info] {"source":"oban","duration":750,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:23:32.445 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:00.218 [info] {"source":"oban","duration":247,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:24:02.448 [info] {"source":"oban","duration":812,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:32.449 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:24:46.880 [info] {"args":{"id":2241},"id":2340,"meta":{},"system_time":1766377486880698576,"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"]} 04:24:46.881 [debug] QUERY OK source="media_items" db=0.2ms idle=664.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" = ?) [2241] 04:24:46.881 [info] User scripts lifecyle file either not present or is empty. Skipping. 04:24:46.881 [debug] QUERY OK source="sources" db=0.2ms idle=665.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" = ?) [4] 04:24:46.882 [debug] QUERY OK source="media_profiles" db=0.1ms idle=665.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] 04:24:46.882 [debug] QUERY OK source="media_items" db=0.2ms 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 [2241] 04:24:46.882 [debug] QUERY OK source="media_metadata" db=0.0ms 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" = ?) [2241] 04:24:46.883 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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] 04:24:46.883 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:24:46.883 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:24:46.883 [debug] Running yt-dlp command for action: get_downloadable_status 04:24:46.883 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:24:46.884 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:24:46.884 [debug] QUERY OK source="settings" db=0.0ms 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 [] 04:24:46.884 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/83/97/8397f09daf61fc33c4e6f29c70c8fb39b0c8e376d5476ee7f7eaba5856c09853.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 04:24:48.891 [error] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=5f0_S_c41Mc --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/83/97/8397f09daf61fc33c4e6f29c70c8fb39b0c8e376d5476ee7f7eaba5856c09853.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 1 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one ERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks. 04:24:48.891 [error] yt-dlp download error for media item #2241: "WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one\nERROR: [youtube] 5f0_S_c41Mc: Join this channel to get access to members-only content like this video, and other exclusive perks.\n" 04:24:48.892 [info] {"error":"** (Oban.PerformError) Pinchflat.Downloading.MediaDownloadWorker failed with {:error, :download_failed}","args":{"id":2241},"id":2340,"meta":{},"state":"failure","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":2010836,"event":"job:exception","queue_time":454923,"attempt":16,"tags":["media_item","media_fetching","show_in_dashboard"]} 04:25:00.219 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:25:02.450 [info] {"source":"oban","duration":687,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:25:32.451 [info] {"source":"oban","duration":723,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:26:00.220 [info] {"source":"oban","duration":144,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:26:02.453 [info] {"source":"oban","duration":906,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:26:32.454 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:27:00.221 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:27:02.456 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:27:32.458 [info] {"source":"oban","duration":891,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:28:00.222 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:28:02.459 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:28:02.796 [info] HEAD / 04:28:02.796 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 04:28:02.796 [debug] QUERY OK source="settings" db=0.1ms idle=580.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:02.796 [debug] QUERY OK source="media_profiles" db=0.0ms idle=580.7ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 04:28:02.797 [debug] QUERY OK source="sources" db=0.0ms idle=580.9ms SELECT count(s0."id") FROM "sources" AS s0 [] 04:28:02.797 [debug] QUERY OK source="media_items" db=0.7ms idle=581.1ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:28:02.798 [debug] QUERY OK source="media_items" db=0.1ms idle=338.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:28:02.798 [debug] QUERY OK source="settings" db=0.0ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:02.798 [debug] QUERY OK source="settings" db=0.1ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:02.799 [debug] QUERY OK source="settings" db=0.1ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:02.799 [debug] QUERY OK source="tasks" db=0.0ms idle=1.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"] 04:28:02.799 [debug] QUERY OK source="media_items" db=0.1ms idle=1.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:28:02.800 [debug] QUERY OK source="media_items" db=0.1ms idle=1.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:28:02.800 [debug] QUERY OK source="sources" db=0.0ms idle=1.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, 3] 04:28:02.801 [debug] QUERY OK source="media_items" db=0.8ms idle=1.6ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 04:28:02.801 [debug] QUERY OK source="media_items" db=0.2ms idle=2.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:28:02.802 [debug] QUERY OK source="sources" db=0.0ms idle=2.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 04:28:02.802 [info] Sent 200 in 6ms 04:28:02.962 [info] GET / 04:28:02.962 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 04:28:02.962 [debug] QUERY OK source="settings" db=0.2ms idle=162.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:02.963 [debug] QUERY OK source="media_profiles" db=0.1ms idle=162.6ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 04:28:02.963 [debug] QUERY OK source="sources" db=0.0ms idle=161.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 04:28:02.963 [debug] QUERY OK source="media_items" db=0.2ms idle=161.5ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:28:02.963 [debug] QUERY OK source="media_items" db=0.1ms idle=161.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:28:02.964 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:02.964 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:02.964 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:02.965 [debug] QUERY OK source="tasks" db=0.1ms idle=1.2ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 04:28:02.965 [debug] QUERY OK source="media_items" db=0.0ms idle=1.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:28:02.965 [debug] QUERY OK source="media_items" db=0.2ms idle=1.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:28:02.965 [debug] QUERY OK source="sources" db=0.1ms idle=1.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 (?,?)) [4, 3] 04:28:02.967 [debug] QUERY OK source="media_items" db=0.7ms idle=1.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"))) [] 04:28:02.967 [debug] QUERY OK source="media_items" db=0.3ms idle=2.1ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:28:02.967 [debug] QUERY OK source="sources" db=0.0ms 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" = ?) [3] 04:28:02.968 [info] Sent 200 in 6ms 04:28:03.848 [info] HEAD /_next 04:28:03.848 [debug] QUERY OK source="settings" db=0.2ms idle=882.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:03.848 [debug] QUERY OK source="settings" db=0.1ms idle=881.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:03.848 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:28:03.849 [error] #PID<0.405086.0> running PinchflatWeb.Endpoint (connection #PID<0.405085.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /_next ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.405085.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57378}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.405086.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINvJRDwEmMx6z0AEoWD"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.405085.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57378}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /_next (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.405085.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/_next", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57378}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.405086.0>, params: %{}, path_info: ["_next"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/_next", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINvJRDwEmMx6z0AEoWD"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 04:28:03.997 [info] HEAD /__rsc 04:28:03.997 [debug] QUERY OK source="settings" db=0.2ms idle=1029.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:03.998 [debug] QUERY OK source="settings" db=0.2ms idle=1029.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:03.998 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:28:03.998 [error] #PID<0.405088.0> running PinchflatWeb.Endpoint (connection #PID<0.405087.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /__rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.405087.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57382}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.405088.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINvJRnTnnSVZbMAEoWj"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.405087.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57382}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /__rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.405087.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/__rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57382}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.405088.0>, params: %{}, path_info: ["__rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/__rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINvJRnTnnSVZbMAEoWj"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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]}, { (truncated) 04:28:04.127 [info] HEAD /rsc 04:28:04.128 [debug] QUERY OK source="settings" db=0.1ms idle=279.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:04.128 [debug] QUERY OK source="settings" db=0.1ms idle=279.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:28:04.128 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 04:28:04.128 [error] #PID<0.405090.0> running PinchflatWeb.Endpoint (connection #PID<0.405089.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: HEAD /rsc ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.405089.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57388}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.405090.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINvJSGdumFcXSIAEoXD"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.405089.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57388}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /rsc (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.405089.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/rsc", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57388}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "x-forwarded-for" => "65.87.7.112", "x-forwarded-proto" => "http", "x-forwarded-scheme" => "http", "x-real-ip" => "65.87.7.112" }, method: "HEAD", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{}, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.405090.0>, params: %{}, path_info: ["rsc"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "http://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"}, {"x-forwarded-for", "65.87.7.112"}, {"x-forwarded-proto", "http"}, {"x-forwarded-scheme", "http"}, {"x-real-ip", "65.87.7.112"} ], request_path: "/rsc", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GINvJSGdumFcXSIAEoXD"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.Endpoin (truncated) 04:28:32.460 [info] {"source":"oban","duration":734,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:29:00.223 [info] {"source":"oban","duration":147,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:29:02.462 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:29:32.464 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:30:00.224 [info] {"source":"oban","duration":258,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:30:02.465 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:30:32.466 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:31:00.225 [info] {"source":"oban","duration":126,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:31:02.467 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:31:32.468 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:32:00.226 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:32:02.469 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:32:32.470 [info] {"source":"oban","duration":428,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:33:00.227 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:33:02.471 [info] {"source":"oban","duration":377,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:33:32.472 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:34:00.228 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:34:02.473 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:34:32.474 [info] {"source":"oban","duration":523,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:35:00.230 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:35:02.475 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:35:32.476 [info] {"source":"oban","duration":661,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:36:00.231 [info] {"source":"oban","duration":148,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:36:02.477 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:36:32.478 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:37:00.233 [info] {"source":"oban","duration":291,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:37:02.480 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:37:32.481 [info] {"source":"oban","duration":666,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:38:00.234 [info] {"source":"oban","duration":214,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:38:02.482 [info] {"source":"oban","duration":718,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:38:32.483 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:39:00.235 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:39:02.484 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:39:32.486 [info] {"source":"oban","duration":906,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:00.236 [info] {"source":"oban","duration":209,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:40:02.487 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:40:32.488 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:41:00.237 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:41:02.489 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:41:32.490 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:42:00.238 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:42:02.492 [info] {"source":"oban","duration":498,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:42:32.494 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:43:00.239 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:43:02.497 [info] {"source":"oban","duration":831,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:43:32.498 [info] {"source":"oban","duration":979,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:44:00.240 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:44:02.500 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:44:32.502 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:45:00.241 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:45:02.503 [info] {"source":"oban","duration":724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:45:32.504 [info] {"source":"oban","duration":635,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:46:00.242 [info] {"source":"oban","duration":145,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:46:02.505 [info] {"source":"oban","duration":732,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:46:32.507 [info] {"source":"oban","duration":689,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:47:00.243 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:47:02.508 [info] {"source":"oban","duration":578,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:47:32.509 [info] {"source":"oban","duration":789,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:48:00.244 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:48:02.511 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:48:32.512 [info] {"source":"oban","duration":1019,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:49:00.245 [info] {"source":"oban","duration":235,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:49:02.514 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:49:32.515 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:50:00.246 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:50:02.516 [info] {"source":"oban","duration":659,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:50:32.517 [info] {"source":"oban","duration":767,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:51:00.247 [info] {"source":"oban","duration":183,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:51:02.519 [info] {"source":"oban","duration":748,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:51:32.520 [info] {"source":"oban","duration":682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:00.248 [info] {"source":"oban","duration":253,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:52:02.521 [info] {"source":"oban","duration":920,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:32.523 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:52:57.636 [info] GET / 04:52:57.636 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 04:52:57.637 [debug] QUERY OK source="settings" db=0.1ms idle=1415.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:52:57.637 [debug] QUERY OK source="media_profiles" db=0.1ms queue=0.1ms idle=1415.3ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 04:52:57.637 [debug] QUERY OK source="sources" db=0.2ms idle=1415.6ms SELECT count(s0."id") FROM "sources" AS s0 [] 04:52:57.638 [debug] QUERY OK source="media_items" db=0.2ms idle=1415.9ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:52:57.638 [debug] QUERY OK source="media_items" db=0.3ms idle=825.6ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:52:57.638 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:52:57.639 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:52:57.639 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 04:52:57.639 [debug] QUERY OK source="tasks" db=0.1ms idle=1.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"] 04:52:57.640 [debug] QUERY OK source="media_items" db=0.1ms idle=1.3ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 04:52:57.640 [debug] QUERY OK source="media_items" db=0.4ms idle=1.3ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:52:57.641 [debug] QUERY OK source="sources" db=0.2ms idle=1.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, 3] 04:52:57.642 [debug] QUERY OK source="media_items" db=0.9ms idle=2.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 04:52:57.642 [debug] QUERY OK source="media_items" db=0.3ms idle=2.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 04:52:57.643 [debug] QUERY OK source="sources" db=0.0ms idle=2.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" = ?) [3] 04:52:57.643 [info] Sent 200 in 7ms 04:53:00.249 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:53:02.524 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:53:32.526 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:54:00.250 [info] {"source":"oban","duration":218,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:54:02.527 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:54:32.528 [info] {"source":"oban","duration":777,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:55:00.251 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:55:02.530 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:55:32.531 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:56:00.252 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:56:02.532 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:56:32.534 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:57:00.253 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:57:02.535 [info] {"source":"oban","duration":492,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:57:32.536 [info] {"source":"oban","duration":765,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:58:00.254 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:58:02.538 [info] {"source":"oban","duration":814,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:58:32.540 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:59:00.255 [info] {"source":"oban","duration":336,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 04:59:02.541 [info] {"source":"oban","duration":826,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 04:59:32.543 [info] {"source":"oban","duration":756,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:00:00.257 [info] {"source":"oban","duration":244,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:00:02.546 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:00:32.547 [info] {"source":"oban","duration":548,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:00.258 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:01:02.548 [info] {"source":"oban","duration":561,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:01:32.549 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:02:00.259 [info] {"source":"oban","duration":210,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:02:02.551 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:02:32.553 [info] {"source":"oban","duration":709,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:03:00.260 [info] {"source":"oban","duration":175,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:03:02.554 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:03:32.555 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:04:00.261 [info] {"source":"oban","duration":222,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:04:02.557 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:04:32.558 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:05:00.262 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:05:02.560 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:05:32.563 [info] {"source":"oban","duration":870,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:06:00.263 [info] {"source":"oban","duration":230,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:06:02.564 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:06:32.565 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:07:00.264 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:07:02.566 [info] {"source":"oban","duration":507,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:07:32.567 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:08:00.265 [info] {"source":"oban","duration":143,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:08:02.568 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:08:32.569 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:09:00.266 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:09:02.570 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:09:32.572 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:10:00.267 [info] {"source":"oban","duration":422,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:10:02.573 [info] {"source":"oban","duration":682,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:10:32.574 [info] {"source":"oban","duration":600,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:11:00.270 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:11:02.577 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:11:32.578 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:12:00.271 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:12:02.579 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:12:32.580 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:00.272 [info] {"source":"oban","duration":227,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:13:02.581 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:13:32.582 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:14:00.273 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:14:02.583 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:14:32.584 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:15:00.274 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:15:02.586 [info] {"source":"oban","duration":770,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:15:32.587 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:16:00.275 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:16:02.588 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:16:32.590 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:17:00.276 [info] {"source":"oban","duration":247,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:17:02.591 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:17:32.592 [info] {"source":"oban","duration":318,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:18:00.277 [info] {"source":"oban","duration":326,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:18:02.593 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:18:32.594 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:19:00.279 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:19:02.595 [info] {"source":"oban","duration":817,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:19:32.598 [info] {"source":"oban","duration":1098,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:20:00.280 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:20:02.599 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:20:32.600 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:21:00.281 [info] {"source":"oban","duration":228,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:21:02.602 [info] {"source":"oban","duration":857,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:21:32.605 [info] {"source":"oban","duration":773,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:22:00.282 [info] {"source":"oban","duration":239,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:22:02.606 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:22:32.607 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:23:00.283 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:23:02.608 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:23:32.609 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:24:00.284 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:24:02.611 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:24:32.612 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:25:00.285 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:25:02.613 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:25:32.614 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:26:00.286 [info] {"source":"oban","duration":172,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:26:02.616 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:26:32.617 [info] {"source":"oban","duration":627,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:27:00.287 [info] {"source":"oban","duration":116,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:27:02.618 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:27:32.619 [info] {"source":"oban","duration":641,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:28:00.288 [info] {"source":"oban","duration":73,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:28:02.620 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:28:32.621 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:29:00.289 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:29:02.623 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:29:32.624 [info] {"source":"oban","duration":449,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:30:00.290 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:30:02.625 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:30:32.626 [info] {"source":"oban","duration":659,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:31:00.291 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:31:02.627 [info] {"source":"oban","duration":497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:31:32.628 [info] {"source":"oban","duration":473,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:32:00.292 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:32:02.629 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:32:32.630 [info] {"source":"oban","duration":448,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:33:00.293 [info] {"source":"oban","duration":297,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:33:02.631 [info] {"source":"oban","duration":565,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:33:32.632 [info] {"source":"oban","duration":871,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:34:00.294 [info] {"source":"oban","duration":233,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:34:02.634 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:34:32.635 [info] {"source":"oban","duration":546,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:35:00.295 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:35:02.636 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:35:32.637 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:36:00.296 [info] {"source":"oban","duration":236,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:36:02.638 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:36:32.639 [info] {"source":"oban","duration":765,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:37:00.297 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:37:02.640 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:37:32.641 [info] {"source":"oban","duration":549,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:38:00.298 [info] {"source":"oban","duration":168,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:38:02.642 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:38:32.643 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:39:00.299 [info] {"source":"oban","duration":161,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:39:02.644 [info] {"source":"oban","duration":648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:39:32.645 [info] {"source":"oban","duration":623,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:40:00.300 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:40:02.646 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:40:32.647 [info] {"source":"oban","duration":505,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:41:00.301 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:41:02.648 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:41:32.649 [info] {"source":"oban","duration":737,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:42:00.303 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:42:02.650 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:42:32.652 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:43:00.304 [info] {"source":"oban","duration":268,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:43:02.654 [info] {"source":"oban","duration":791,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:43:32.655 [info] {"source":"oban","duration":779,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:44:00.305 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:44:02.656 [info] {"source":"oban","duration":719,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:44:32.657 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:45:00.306 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:45:02.658 [info] {"source":"oban","duration":618,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:45:32.659 [info] {"source":"oban","duration":757,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:46:00.307 [info] {"source":"oban","duration":199,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:46:02.661 [info] {"source":"oban","duration":885,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:46:32.662 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:47:00.308 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:47:02.663 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:47:32.664 [info] {"source":"oban","duration":609,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:48:00.309 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:48:02.665 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:48:32.666 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:49:00.310 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:49:02.668 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:49:32.669 [info] {"source":"oban","duration":918,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:50:00.311 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:50:02.672 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:50:32.673 [info] {"source":"oban","duration":786,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:51:00.312 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:51:02.675 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:51:32.676 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:52:00.313 [info] {"source":"oban","duration":267,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:52:02.677 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:52:32.678 [info] {"source":"oban","duration":654,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:53:00.314 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:53:02.679 [info] {"source":"oban","duration":749,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:53:32.681 [info] {"source":"oban","duration":538,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:54:00.316 [info] {"source":"oban","duration":132,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:54:02.682 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:54:32.683 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:55:00.317 [info] {"source":"oban","duration":139,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:55:02.684 [info] {"source":"oban","duration":476,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:55:32.686 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:56:00.318 [info] {"source":"oban","duration":746,"event":"plugin:stop","jobs":[2353],"plugin":"Oban.Plugins.Cron"} 05:56:00.325 [info] {"args":{},"id":2353,"meta":{"cron":true,"cron_expr":"56 5 * * *","cron_tz":"Etc/UTC"},"system_time":1766382960325133185,"max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","event":"job:start","attempt":1,"tags":["local_data"]} 05:56:00.325 [info] Updating yt-dlp 05:56:00.325 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --update 05:56:01.100 [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) 05:56:01.100 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version 05:56:01.419 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: --version exited: 0 with: 2025.12.08 05:56:01.420 [debug] QUERY OK source="settings" db=0.5ms idle=1184.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 05:56:01.420 [info] {"args":{},"id":2353,"meta":{"cron":true,"cron_expr":"56 5 * * *","cron_tz":"Etc/UTC"},"state":"success","max_attempts":20,"queue":"local_data","worker":"Pinchflat.YtDlp.UpdateWorker","source":"oban","duration":1095039,"event":"job:stop","queue_time":324254,"attempt":1,"tags":["local_data"]} 05:56:02.687 [info] {"source":"oban","duration":783,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:56:32.688 [info] {"source":"oban","duration":655,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:57:00.320 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:57:02.689 [info] {"source":"oban","duration":717,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:57:32.691 [info] {"source":"oban","duration":701,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:58:00.321 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:58:02.692 [info] {"source":"oban","duration":501,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:58:32.693 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:59:00.322 [info] {"source":"oban","duration":202,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 05:59:02.694 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 05:59:32.695 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:00:00.324 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:00:02.696 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:00:32.697 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:01:00.325 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:01:02.698 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:01:32.699 [info] {"source":"oban","duration":778,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:02:00.326 [info] {"source":"oban","duration":214,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:02:02.701 [info] {"source":"oban","duration":570,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:02:32.703 [info] {"source":"oban","duration":512,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:03:00.327 [info] {"source":"oban","duration":141,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:03:02.704 [info] {"source":"oban","duration":691,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:03:32.705 [info] {"source":"oban","duration":514,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:04:00.328 [info] {"source":"oban","duration":219,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:04:02.706 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:04:32.707 [info] {"source":"oban","duration":520,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:05:00.329 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:05:02.709 [info] {"source":"oban","duration":795,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:05:32.710 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:06:00.330 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:06:02.711 [info] {"source":"oban","duration":673,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:06:32.712 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:07:00.331 [info] {"source":"oban","duration":220,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:07:02.715 [info] {"source":"oban","duration":889,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:07:32.716 [info] {"source":"oban","duration":543,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:08:00.332 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:08:02.717 [info] {"source":"oban","duration":679,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:08:09.894 [info] GET / 06:08:09.894 [debug] Processing with PinchflatWeb.Pages.PageController.home/2 Parameters: %{} Pipelines: [:browser] 06:08:09.895 [debug] QUERY OK source="settings" db=0.2ms idle=1656.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:08:09.895 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1657.1ms SELECT count(m0."id") FROM "media_profiles" AS m0 [] 06:08:09.895 [debug] QUERY OK source="sources" db=0.2ms idle=1657.3ms SELECT count(s0."id") FROM "sources" AS s0 [] 06:08:09.896 [debug] QUERY OK source="media_items" db=0.8ms idle=1657.6ms SELECT sum(m0."media_size_bytes") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:08:09.896 [debug] QUERY OK source="media_items" db=0.2ms idle=748.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:08:09.897 [debug] QUERY OK source="settings" db=0.0ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:08:09.897 [debug] QUERY OK source="settings" db=0.0ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:08:09.897 [debug] QUERY OK source="settings" db=0.0ms idle=1.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:08:09.898 [debug] QUERY OK source="tasks" db=0.1ms idle=1.4ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at", o1."id", o1."state", o1."queue", o1."worker", o1."args", o1."meta", o1."tags", o1."errors", o1."attempt", o1."attempted_by", o1."max_attempts", o1."priority", o1."attempted_at", o1."cancelled_at", o1."completed_at", o1."discarded_at", o1."inserted_at", o1."scheduled_at" FROM "tasks" AS t0 LEFT OUTER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (o1."state" IN (?)) AND (? IN (SELECT value FROM JSON_EACH(o1."tags"))) ORDER BY o1."attempted_at" DESC ["executing", "show_in_dashboard"] 06:08:09.898 [debug] QUERY OK source="media_items" db=0.1ms idle=1.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (NOT (m0."media_filepath" IS NULL)) [] 06:08:09.898 [debug] QUERY OK source="media_items" db=0.1ms idle=1.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] 06:08:09.899 [debug] QUERY OK source="sources" db=0.0ms 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" IN (?,?)) [4, 3] 06:08:09.900 [debug] QUERY OK source="media_items" db=1.3ms idle=1.8ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) [] 06:08:09.901 [debug] QUERY OK source="media_items" db=0.4ms idle=2.7ms SELECT m0."id", m0."uuid", m0."title", m0."media_id", m0."description", m0."original_url", m0."livestream", m0."short_form_content", m0."media_downloaded_at", m0."media_redownloaded_at", m0."uploaded_at", m0."upload_date_index", m0."duration_seconds", m0."playlist_index", m0."predicted_media_filepath", m0."media_filepath", m0."media_size_bytes", m0."thumbnail_filepath", m0."metadata_filepath", m0."nfo_filepath", m0."subtitle_filepaths", m0."last_error", m0."prevent_download", m0."prevent_culling", m0."culled_at", m0."source_id", m0."inserted_at", m0."updated_at" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))) ORDER BY m0."id" DESC LIMIT ? OFFSET ? [5, 0] 06:08:09.901 [debug] QUERY OK source="sources" db=0.0ms idle=3.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 06:08:09.902 [info] Sent 200 in 7ms 06:08:32.718 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:09:00.333 [info] {"source":"oban","duration":260,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:09:02.719 [info] {"source":"oban","duration":619,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:09:32.720 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:10:00.334 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:10:02.722 [info] {"source":"oban","duration":481,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:10:32.726 [info] {"source":"oban","duration":775,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:11:00.335 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:11:02.728 [info] {"source":"oban","duration":676,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:11:32.729 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:12:00.336 [info] {"source":"oban","duration":170,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:12:02.730 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:12:32.732 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:13:00.337 [info] {"source":"oban","duration":164,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:13:02.733 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:13:32.734 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:14:00.338 [info] {"source":"oban","duration":217,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:14:02.735 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:14:32.736 [info] {"source":"oban","duration":721,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:15:00.339 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:15:02.737 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:15:32.738 [info] {"source":"oban","duration":819,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:00.340 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:16:02.740 [info] {"source":"oban","duration":668,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:16:32.741 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:17:00.341 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:17:02.742 [info] {"source":"oban","duration":500,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:17:32.743 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:18:00.342 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:18:02.744 [info] {"source":"oban","duration":535,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:18:32.745 [info] {"source":"oban","duration":497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:19:00.343 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:19:02.746 [info] {"source":"oban","duration":802,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:19:32.748 [info] {"source":"oban","duration":752,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:00.344 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:20:02.750 [info] {"source":"oban","duration":685,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:32.751 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:20:53.451 [info] GET /settings 06:20:53.451 [debug] Processing with PinchflatWeb.Settings.SettingController.show/2 Parameters: %{} Pipelines: [:browser] 06:20:53.451 [debug] QUERY OK source="settings" db=0.1ms idle=1210.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:20:53.451 [debug] QUERY OK source="settings" db=0.1ms idle=1210.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:20:53.452 [debug] QUERY OK source="settings" db=0.0ms idle=1210.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:20:53.452 [debug] QUERY OK source="settings" db=0.2ms idle=1211.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:20:53.453 [info] Sent 200 in 2ms 06:21:00.345 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:21:02.752 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:21:04.872 [info] GET /sources/3/media/10623 06:21:04.872 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10623", "source_id" => "3"} Pipelines: [:browser] 06:21:04.873 [debug] QUERY OK source="media_items" db=0.2ms idle=1632.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" = ?) [10623] 06:21:04.873 [debug] QUERY OK source="tasks" db=0.2ms idle=1632.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" [10623] 06:21:04.873 [debug] QUERY OK source="sources" db=0.2ms idle=769.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" = ?) [3] 06:21:04.874 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=633.0ms 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" = ?) [2332] 06:21:04.874 [debug] QUERY OK source="settings" db=0.0ms idle=633.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:21:04.874 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:21:04.874 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:21:04.875 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 06:21:04.875 [info] Sent 200 in 3ms 06:21:32.753 [info] {"source":"oban","duration":589,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:00.346 [info] {"source":"oban","duration":137,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:22:02.754 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:22:18.336 [info] GET /sources/3/media/10322 06:22:18.336 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10322", "source_id" => "3"} Pipelines: [:browser] 06:22:18.337 [debug] QUERY OK source="media_items" db=0.2ms idle=146.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" = ?) [10322] 06:22:18.337 [debug] QUERY OK source="tasks" db=0.1ms idle=94.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" [10322] 06:22:18.338 [debug] QUERY OK source="sources" db=0.4ms idle=94.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" = ?) [3] 06:22:18.338 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=95.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" = ?) [2272] 06:22:18.338 [debug] QUERY OK source="settings" db=0.0ms idle=95.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:18.338 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:18.339 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:22:18.339 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:22:18.340 [info] Sent 200 in 3ms 06:22:32.755 [info] {"source":"oban","duration":821,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:23:00.347 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:23:02.757 [info] {"source":"oban","duration":751,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:23:15.885 [info] GET /sources/3/media/10622 06:23:15.885 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10622", "source_id" => "3"} Pipelines: [:browser] 06:23:15.886 [debug] QUERY OK source="media_items" db=0.2ms idle=1643.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" = ?) [10622] 06:23:15.886 [debug] QUERY OK source="tasks" db=0.2ms idle=1644.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" [10622] 06:23:15.886 [debug] QUERY OK source="sources" db=0.2ms idle=1644.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" = ?) [3] 06:23:15.886 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=1617.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" = ?) [2331] 06:23:15.887 [debug] QUERY OK source="settings" db=0.0ms idle=616.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:15.887 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:15.887 [debug] QUERY OK source="settings" db=0.1ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:23:15.888 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:23:15.889 [info] Sent 200 in 3ms 06:23:32.758 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:00.348 [info] {"source":"oban","duration":84,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:24:02.759 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:22.424 [info] GET /sources/3/media/9042 06:24:22.425 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9042", "source_id" => "3"} Pipelines: [:browser] 06:24:22.425 [debug] QUERY OK source="media_items" db=0.1ms idle=1074.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" = ?) [9042] 06:24:22.425 [debug] QUERY OK source="sources" db=0.1ms idle=182.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" = ?) [3] 06:24:22.425 [debug] QUERY OK source="tasks" db=0.3ms idle=182.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" [9042] 06:24:22.426 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=183.0ms 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 (?,?)) [2020, 2229] 06:24:22.426 [debug] QUERY OK source="settings" db=0.0ms 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 [] 06:24:22.426 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:24:22.427 [debug] QUERY OK source="settings" db=0.1ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:24:22.427 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.4ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:24:22.428 [info] Sent 200 in 3ms 06:24:32.760 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:24:35.338 [info] GET /sources/4/media/10433 06:24:35.338 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10433", "source_id" => "4"} Pipelines: [:browser] 06:24:35.339 [debug] QUERY OK source="media_items" db=0.2ms idle=1095.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" = ?) [10433] 06:24:35.339 [debug] QUERY OK source="sources" db=0.2ms idle=1096.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" = ?) [4] 06:24:35.339 [debug] QUERY OK source="tasks" db=0.3ms idle=1096.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" [10433] 06:24:35.339 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=1096.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" IN (?,?)) [2294, 2322] 06:24:35.340 [debug] QUERY OK source="settings" db=0.1ms idle=970.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:24:35.340 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:24:35.340 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:24:35.340 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.1ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:24:35.341 [info] Sent 200 in 3ms 06:24:40.506 [info] GET /sources 06:24:40.506 [debug] Processing with PinchflatWeb.Sources.SourceController.index/2 Parameters: %{} Pipelines: [:browser] 06:24:40.506 [debug] QUERY OK source="settings" db=0.1ms idle=1263.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:24:40.506 [debug] QUERY OK source="settings" db=0.1ms idle=1263.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:24:40.507 [debug] QUERY OK source="settings" db=0.0ms idle=1264.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:24:40.507 [debug] QUERY OK source="settings" db=0.0ms idle=1131.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:24:40.507 [debug] QUERY OK source="settings" db=0.0ms idle=130.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:24:40.508 [debug] QUERY OK source="sources" db=0.8ms idle=1.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)) [] 06:24:40.510 [debug] QUERY OK source="sources" db=1.5ms idle=1.9ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", coalesce(s2."downloaded_count", 0), coalesce(s3."pending_count", 0), coalesce(s2."media_size_bytes", 0), m1."id", m1."name", m1."redownload_delay_days", m1."output_path_template", m1."download_subs", m1."download_auto_subs", m1."embed_subs", m1."sub_langs", m1."download_thumbnail", m1."embed_thumbnail", m1."download_source_images", m1."download_metadata", m1."embed_metadata", m1."download_nfo", m1."sponsorblock_behaviour", m1."sponsorblock_categories", m1."shorts_behaviour", m1."livestream_behaviour", m1."audio_track", m1."preferred_resolution", m1."media_container", m1."marked_for_deletion_at", m1."inserted_at", m1."updated_at" FROM "sources" AS s0 INNER JOIN "media_profiles" AS m1 ON m1."id" = s0."media_profile_id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "downloaded_count", sm0."source_id" AS "source_id", sum(sm0."media_size_bytes") AS "media_size_bytes" FROM "media_items" AS sm0 WHERE (NOT (sm0."media_filepath" IS NULL)) GROUP BY sm0."source_id") AS s2 ON s2."source_id" = s0."id" LEFT OUTER JOIN (SELECT count(sm0."id") AS "pending_count", sm0."source_id" AS "source_id" FROM "media_items" AS sm0 INNER JOIN "sources" AS ss1 ON ss1."id" = sm0."source_id" INNER JOIN "media_profiles" AS sm2 ON sm2."id" = ss1."media_profile_id" WHERE (((((NOT (NOT (sm0."media_filepath" IS NULL)) AND NOT (sm0."prevent_download" = 1)) AND ((ss1."download_cutoff_date" IS NULL) OR date(sm0."uploaded_at") >= ss1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((ss1."title_filter_regex" IS NULL) OR regexp_like(sm0."title", ss1."title_filter_regex"))) AND (((ss1."min_duration_seconds" IS NULL) OR duration_seconds >= ss1."min_duration_seconds") AND ((ss1."max_duration_seconds" IS NULL) OR duration_seconds <= ss1."max_duration_seconds"))) GROUP BY sm0."source_id") AS s3 ON (s3."source_id" = s0."id") AND (s2."source_id" = s0."id") WHERE ((s0."marked_for_deletion_at" IS NULL) AND (m1."marked_for_deletion_at" IS NULL)) ORDER BY s0."custom_name" COLLATE NOCASE, s0."id" LIMIT ? OFFSET ? [10, 0] 06:24:40.511 [info] Sent 200 in 5ms 06:25:00.349 [info] {"source":"oban","duration":131,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:25:02.761 [info] {"source":"oban","duration":626,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:25:32.762 [info] {"source":"oban","duration":616,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:25:52.940 [info] GET /sources/3/media/7085 06:25:52.940 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "7085", "source_id" => "3"} Pipelines: [:browser] 06:25:52.941 [debug] QUERY OK source="media_items" db=0.2ms idle=696.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" = ?) [7085] 06:25:52.941 [debug] QUERY OK source="sources" db=0.1ms idle=696.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" = ?) [3] 06:25:52.941 [debug] QUERY OK source="tasks" db=0.2ms idle=696.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" [7085] 06:25:52.942 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=697.0ms 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 (?,?,?)) [1794, 1977, 2171] 06:25:52.942 [debug] QUERY OK source="settings" db=0.0ms idle=477.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:25:52.942 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:25:52.943 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:25:52.943 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 06:25:52.944 [info] Sent 200 in 3ms 06:26:00.350 [info] {"source":"oban","duration":159,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:26:02.763 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:26:05.207 [info] GET /sources/4 06:26:05.207 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "4"} Pipelines: [:browser] 06:26:05.207 [debug] QUERY OK source="sources" db=0.2ms idle=962.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" = ?) [4] 06:26:05.208 [debug] QUERY OK source="media_profiles" db=0.1ms idle=962.9ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:26:05.208 [debug] QUERY OK source="tasks" db=0.3ms idle=963.1ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [4, "executing", "available", "scheduled", "retryable"] 06:26:05.208 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=963.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" = ?) [2346] 06:26:05.209 [debug] QUERY OK source="settings" db=0.0ms idle=726.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:26:05.209 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:26:05.209 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:26:05.210 [debug] QUERY OK source="sources" db=0.0ms idle=1.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" = ?) [4] 06:26:05.210 [debug] QUERY OK source="media_items" db=0.3ms idle=1.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [4] 06:26:05.211 [debug] QUERY OK source="media_items" db=0.7ms idle=1.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] 06:26:05.212 [debug] QUERY OK source="sources" db=0.0ms idle=2.8ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 06:26:05.212 [debug] QUERY OK source="media_items" db=0.2ms idle=2.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [4] 06:26:05.213 [debug] QUERY OK source="media_items" db=0.4ms idle=2.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 ? [4, 10, 0] 06:26:05.213 [debug] QUERY OK source="sources" db=0.0ms idle=3.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 06:26:05.214 [debug] QUERY OK source="media_items" db=0.1ms idle=2.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((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] 06:26:05.214 [debug] QUERY OK source="media_items" db=0.2ms idle=2.1ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [4, 10, 0] 06:26:05.215 [info] Sent 200 in 8ms 06:26:32.764 [info] {"source":"oban","duration":738,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:27:00.351 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:27:02.765 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:27:19.129 [info] GET /sources/3/media/10169 06:27:19.129 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10169", "source_id" => "3"} Pipelines: [:browser] 06:27:19.129 [debug] QUERY OK source="media_items" db=0.2ms idle=881.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" = ?) [10169] 06:27:19.130 [debug] QUERY OK source="tasks" db=0.1ms idle=882.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" [10169] 06:27:19.130 [debug] QUERY OK source="sources" db=0.2ms idle=882.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" = ?) [3] 06:27:19.130 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=882.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" = ?) [2244] 06:27:19.130 [debug] QUERY OK source="settings" db=0.1ms 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 [] 06:27:19.130 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:27:19.131 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:27:19.131 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 06:27:19.132 [info] Sent 200 in 3ms 06:27:29.414 [info] GET /sources/3 06:27:29.414 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"id" => "3"} Pipelines: [:browser] 06:27:29.415 [debug] QUERY OK source="sources" db=0.1ms idle=1167.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" = ?) [3] 06:27:29.415 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1168.2ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at", m0."id" FROM "media_profiles" AS m0 WHERE (m0."id" = ?) [1] 06:27:29.415 [debug] QUERY OK source="tasks" db=0.2ms idle=1168.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 (?,?,?,?)) [3, "executing", "available", "scheduled", "retryable"] 06:27:29.416 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=1168.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" = ?) [2350] 06:27:29.416 [debug] QUERY OK source="settings" db=0.1ms idle=818.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:27:29.416 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:27:29.416 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:27:29.417 [debug] QUERY OK source="sources" db=0.0ms 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" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 06:27:29.418 [debug] QUERY OK source="media_items" db=0.8ms idle=1.5ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_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] 06:27:29.419 [debug] QUERY OK source="media_items" db=0.7ms idle=2.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] 06:27:29.420 [debug] QUERY OK source="sources" db=0.2ms idle=3.3ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 06:27:29.420 [debug] QUERY OK source="media_items" db=0.0ms idle=3.3ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [3] 06:27:29.420 [debug] QUERY OK source="media_items" db=0.2ms idle=2.8ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [3, 10, 0] 06:27:29.421 [debug] QUERY OK source="sources" db=0.1ms idle=2.4ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 06:27:29.421 [debug] QUERY OK source="media_items" db=0.3ms idle=1.7ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_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] 06:27:29.422 [debug] QUERY OK source="media_items" db=0.5ms idle=1.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] 06:27:29.422 [info] Sent 200 in 8ms 06:27:32.766 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:00.352 [info] {"source":"oban","duration":158,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:28:02.768 [info] {"source":"oban","duration":608,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:27.203 [info] GET /sources/3/media/10168 06:28:27.204 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10168", "source_id" => "3"} Pipelines: [:browser] 06:28:27.204 [debug] QUERY OK source="media_items" db=0.1ms idle=1537.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" = ?) [10168] 06:28:27.204 [debug] QUERY OK source="tasks" db=0.1ms idle=956.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" [10168] 06:28:27.204 [debug] QUERY OK source="sources" db=0.2ms idle=956.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" = ?) [3] 06:28:27.205 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=956.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" = ?) [2243] 06:28:27.205 [debug] QUERY OK source="settings" db=0.1ms idle=537.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:27.205 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:27.205 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:27.206 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 06:28:27.207 [info] Sent 200 in 3ms 06:28:27.386 [info] GET /sources/4/media/10281 06:28:27.386 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10281", "source_id" => "4"} Pipelines: [:browser] 06:28:27.387 [debug] QUERY OK source="media_items" db=0.1ms idle=181.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" = ?) [10281] 06:28:27.387 [debug] QUERY OK source="tasks" db=0.1ms idle=181.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" [10281] 06:28:27.387 [debug] QUERY OK source="sources" db=0.2ms idle=181.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" = ?) [4] 06:28:27.387 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=181.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" IN (?,?)) [2265, 2292] 06:28:27.388 [debug] QUERY OK source="settings" db=0.1ms idle=181.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:27.388 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:27.388 [debug] QUERY OK source="settings" db=0.1ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:27.388 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 06:28:27.389 [info] Sent 200 in 3ms 06:28:32.769 [info] {"source":"oban","duration":483,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:28:47.647 [info] GET /sources/4/media/9979 06:28:47.647 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9979", "source_id" => "4"} Pipelines: [:browser] 06:28:47.648 [debug] QUERY OK source="media_items" db=0.1ms idle=1399.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" = ?) [9979] 06:28:47.648 [debug] QUERY OK source="tasks" db=0.0ms idle=956.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" [9979] 06:28:47.648 [debug] QUERY OK source="sources" db=0.1ms idle=398.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] 06:28:47.648 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=399.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" = ?) [2209] 06:28:47.649 [debug] QUERY OK source="settings" db=0.0ms idle=399.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:47.649 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:47.649 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:28:47.649 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 06:28:47.650 [info] Sent 200 in 3ms 06:29:00.353 [info] {"source":"oban","duration":256,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:29:02.771 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:29:24.448 [info] GET /app_info 06:29:24.448 [debug] Processing with PinchflatWeb.Settings.SettingController.app_info/2 Parameters: %{} Pipelines: [:browser] 06:29:24.448 [debug] QUERY OK source="settings" db=0.1ms idle=1197.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:24.449 [debug] QUERY OK source="settings" db=0.1ms idle=1197.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:24.449 [debug] QUERY OK source="settings" db=0.0ms idle=715.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:24.450 [debug] QUERY OK source="settings" db=0.2ms idle=198.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:24.450 [debug] QUERY OK source="settings" db=0.0ms idle=199.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:29:24.450 [info] Sent 200 in 2ms 06:29:32.772 [info] {"source":"oban","duration":412,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:30:00.354 [info] {"source":"oban","duration":224,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:30:02.773 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:30:18.100 [info] GET /media_profiles 06:30:18.100 [debug] Processing with PinchflatWeb.MediaProfiles.MediaProfileController.index/2 Parameters: %{} Pipelines: [:browser] 06:30:18.101 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1847.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" [] 06:30:18.101 [debug] QUERY OK source="settings" db=0.0ms idle=1848.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:30:18.101 [debug] QUERY OK source="settings" db=0.1ms idle=1848.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:30:18.102 [debug] QUERY OK source="settings" db=0.0ms idle=1307.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 06:30:18.102 [info] Sent 200 in 2ms 06:30:32.774 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:00.356 [info] {"source":"oban","duration":225,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:31:02.775 [info] {"source":"oban","duration":657,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:31:32.776 [info] {"source":"oban","duration":769,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:32:00.357 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:32:02.778 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:32:32.779 [info] {"source":"oban","duration":569,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:33:00.358 [info] {"source":"oban","duration":245,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:33:02.780 [info] {"source":"oban","duration":575,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:33:32.781 [info] {"source":"oban","duration":596,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:00.359 [info] {"source":"oban","duration":292,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:34:02.782 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:34:32.783 [info] {"source":"oban","duration":581,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:35:00.360 [info] {"source":"oban","duration":191,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:35:02.784 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:35:32.785 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:36:00.361 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:36:02.786 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:36:32.787 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:00.362 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:37:02.788 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:37:32.789 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:38:00.363 [info] {"source":"oban","duration":242,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:38:02.790 [info] {"source":"oban","duration":631,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:38:32.791 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:39:00.364 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:39:02.792 [info] {"source":"oban","duration":484,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:39:32.794 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:40:00.365 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:40:02.795 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:40:32.796 [info] {"source":"oban","duration":769,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:00.366 [info] {"source":"oban","duration":139,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:41:02.798 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:41:32.799 [info] {"source":"oban","duration":497,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:42:00.367 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:42:02.800 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:42:32.801 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:43:00.369 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:43:02.802 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:43:32.803 [info] {"source":"oban","duration":508,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:00.370 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:44:02.804 [info] {"source":"oban","duration":465,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:44:32.805 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:45:00.371 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:45:02.806 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:45:32.808 [info] {"source":"oban","duration":914,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:46:00.372 [info] {"source":"oban","duration":241,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:46:02.809 [info] {"source":"oban","duration":695,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:46:32.810 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:47:00.373 [info] {"source":"oban","duration":243,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:47:02.811 [info] {"source":"oban","duration":515,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:47:32.812 [info] {"source":"oban","duration":503,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:48:00.374 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:48:02.813 [info] {"source":"oban","duration":614,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:48:32.815 [info] {"source":"oban","duration":566,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:49:00.375 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:49:02.816 [info] {"source":"oban","duration":584,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:49:32.817 [info] {"source":"oban","duration":557,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:50:00.376 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:50:02.818 [info] {"source":"oban","duration":536,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:50:32.819 [info] {"source":"oban","duration":748,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:51:00.377 [info] {"source":"oban","duration":179,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:51:02.820 [info] {"source":"oban","duration":590,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:51:32.821 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:52:00.378 [info] {"source":"oban","duration":177,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:52:02.823 [info] {"source":"oban","duration":750,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:52:32.824 [info] {"source":"oban","duration":466,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:53:00.379 [info] {"source":"oban","duration":160,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:53:02.826 [info] {"source":"oban","duration":496,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:53:32.827 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:54:00.380 [info] {"source":"oban","duration":176,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:54:02.828 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:54:32.829 [info] {"source":"oban","duration":568,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:55:00.381 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:55:02.830 [info] {"source":"oban","duration":771,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:55:32.832 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:56:00.382 [info] {"source":"oban","duration":182,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:56:02.833 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:56:32.834 [info] {"source":"oban","duration":529,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:57:00.383 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:57:02.835 [info] {"source":"oban","duration":617,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:57:32.836 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:58:00.384 [info] {"source":"oban","duration":149,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:58:02.837 [info] {"source":"oban","duration":563,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:58:32.838 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:59:00.385 [info] {"source":"oban","duration":231,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 06:59:02.840 [info] {"source":"oban","duration":771,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 06:59:32.841 [info] {"source":"oban","duration":843,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:00:00.386 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:00:02.843 [info] {"source":"oban","duration":622,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:00:32.845 [info] {"source":"oban","duration":806,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:01:00.387 [info] {"source":"oban","duration":195,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:01:02.846 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:01:32.847 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:02:00.389 [info] {"source":"oban","duration":190,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:02:02.848 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:02:32.849 [info] {"source":"oban","duration":740,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:03:00.390 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:03:02.851 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:03:32.853 [info] {"source":"oban","duration":729,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:04:00.391 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:04:02.855 [info] {"source":"oban","duration":1068,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:04:32.857 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:05:00.392 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:05:02.858 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:05:32.859 [info] {"source":"oban","duration":517,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:06:00.393 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:06:02.860 [info] {"source":"oban","duration":534,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:06:32.861 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:07:00.394 [info] {"source":"oban","duration":257,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:07:02.863 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:07:32.865 [info] {"source":"oban","duration":833,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:08:00.395 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:08:02.866 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:08:32.867 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:09:00.396 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:09:02.869 [info] {"source":"oban","duration":639,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:09:32.870 [info] {"source":"oban","duration":560,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:10:00.397 [info] {"source":"oban","duration":213,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:10:02.871 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:10:32.872 [info] {"source":"oban","duration":527,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:11:00.398 [info] {"source":"oban","duration":194,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:11:02.874 [info] {"source":"oban","duration":785,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:11:32.876 [info] {"source":"oban","duration":470,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:12:00.399 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:12:02.877 [info] {"source":"oban","duration":579,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:12:32.879 [info] {"source":"oban","duration":807,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:13:00.400 [info] {"source":"oban","duration":189,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:13:02.881 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:13:32.883 [info] {"source":"oban","duration":551,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:14:00.401 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:14:02.884 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:14:32.885 [info] {"source":"oban","duration":724,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:15:00.402 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:15:02.886 [info] {"source":"oban","duration":641,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:15:32.887 [info] {"source":"oban","duration":648,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:16:00.403 [info] {"source":"oban","duration":273,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:16:02.888 [info] {"source":"oban","duration":592,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:16:32.890 [info] {"source":"oban","duration":607,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:17:00.404 [info] {"source":"oban","duration":153,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:17:02.891 [info] {"source":"oban","duration":667,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:17:32.894 [info] {"source":"oban","duration":921,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:18:00.406 [info] {"source":"oban","duration":165,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:18:02.895 [info] {"source":"oban","duration":787,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:18:32.898 [info] {"source":"oban","duration":602,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:19:00.407 [info] {"source":"oban","duration":101,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:19:02.899 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:19:32.902 [info] {"source":"oban","duration":593,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:20:00.408 [info] {"source":"oban","duration":213,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:20:02.903 [info] {"source":"oban","duration":844,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:20:32.906 [info] {"source":"oban","duration":805,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:21:00.410 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:21:02.907 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:21:32.908 [info] {"source":"oban","duration":641,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:22:00.411 [info] {"source":"oban","duration":187,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:22:02.910 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:22:32.912 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:23:00.412 [info] {"source":"oban","duration":152,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:23:02.913 [info] {"source":"oban","duration":674,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:23:32.916 [info] {"source":"oban","duration":493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:24:00.413 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:24:02.917 [info] {"source":"oban","duration":881,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:24:32.920 [info] {"source":"oban","duration":748,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:25:00.414 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:25:02.921 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:25:32.922 [info] {"source":"oban","duration":544,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:26:00.415 [info] {"source":"oban","duration":162,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:26:02.923 [info] {"source":"oban","duration":576,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:26:32.925 [info] {"source":"oban","duration":796,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:27:00.416 [info] {"source":"oban","duration":166,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:27:02.928 [info] {"source":"oban","duration":865,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:27:32.929 [info] {"source":"oban","duration":638,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:28:00.417 [info] {"source":"oban","duration":270,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:28:02.930 [info] {"source":"oban","duration":587,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:28:32.931 [info] {"source":"oban","duration":640,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:29:00.418 [info] {"source":"oban","duration":198,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:29:02.932 [info] {"source":"oban","duration":594,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:29:32.933 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:30:00.420 [info] {"source":"oban","duration":225,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:30:02.934 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:30:32.935 [info] {"source":"oban","duration":545,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:31:00.421 [info] {"source":"oban","duration":271,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:31:02.936 [info] {"source":"oban","duration":562,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:31:32.938 [info] {"source":"oban","duration":521,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:32:00.422 [info] {"source":"oban","duration":188,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:32:02.939 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:32:32.940 [info] {"source":"oban","duration":656,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:33:00.424 [info] {"source":"oban","duration":174,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:33:02.941 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:33:32.942 [info] {"source":"oban","duration":777,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:34:00.425 [info] {"source":"oban","duration":211,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:34:02.944 [info] {"source":"oban","duration":519,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:34:32.945 [info] {"source":"oban","duration":652,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:35:00.427 [info] {"source":"oban","duration":224,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:35:02.946 [info] {"source":"oban","duration":550,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:35:32.947 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:36:00.428 [info] {"source":"oban","duration":246,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:36:02.948 [info] {"source":"oban","duration":633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:36:32.949 [info] {"source":"oban","duration":588,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:37:00.429 [info] {"source":"oban","duration":200,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:37:02.950 [info] {"source":"oban","duration":615,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:37:32.951 [info] {"source":"oban","duration":736,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:38:00.431 [info] {"source":"oban","duration":212,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:38:02.952 [info] {"source":"oban","duration":662,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:38:32.953 [info] {"source":"oban","duration":586,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:39:00.432 [info] {"source":"oban","duration":248,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:39:02.954 [info] {"source":"oban","duration":636,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:39:32.955 [info] {"source":"oban","duration":509,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:40:00.433 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:40:02.957 [info] {"source":"oban","duration":977,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:40:32.959 [info] {"source":"oban","duration":558,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:41:00.434 [info] {"source":"oban","duration":250,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:41:02.960 [info] {"source":"oban","duration":725,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:41:32.961 [info] {"source":"oban","duration":580,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:42:00.435 [info] {"source":"oban","duration":277,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:42:02.962 [info] {"source":"oban","duration":573,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:42:32.964 [info] {"source":"oban","duration":599,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:43:00.436 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:43:02.965 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:43:32.966 [info] {"source":"oban","duration":540,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:44:00.437 [info] {"source":"oban","duration":283,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:44:02.967 [info] {"source":"oban","duration":522,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:44:32.968 [info] {"source":"oban","duration":850,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:45:00.438 [info] {"source":"oban","duration":155,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:45:02.970 [info] {"source":"oban","duration":516,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:45:32.971 [info] {"source":"oban","duration":737,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:46:00.439 [info] {"source":"oban","duration":237,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:46:02.972 [info] {"source":"oban","duration":526,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:46:32.973 [info] {"source":"oban","duration":693,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:47:00.440 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:47:02.974 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:47:32.975 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:48:00.441 [info] {"source":"oban","duration":428,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:48:02.976 [info] {"source":"oban","duration":493,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:48:32.977 [info] {"source":"oban","duration":660,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:49:00.443 [info] {"source":"oban","duration":140,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:49:02.978 [info] {"source":"oban","duration":542,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:49:32.979 [info] {"source":"oban","duration":765,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:50:00.444 [info] {"source":"oban","duration":214,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:50:02.981 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:50:32.982 [info] {"source":"oban","duration":842,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:51:00.445 [info] {"source":"oban","duration":173,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:51:02.984 [info] {"source":"oban","duration":518,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:51:32.985 [info] {"source":"oban","duration":675,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:52:00.446 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:52:02.986 [info] {"source":"oban","duration":506,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:52:32.987 [info] {"source":"oban","duration":598,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:53:00.447 [info] {"source":"oban","duration":171,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:53:02.988 [info] {"source":"oban","duration":782,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:53:32.990 [info] {"source":"oban","duration":528,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:54:00.448 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:54:02.991 [info] {"source":"oban","duration":670,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:54:32.992 [info] {"source":"oban","duration":388,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:55:00.449 [info] {"source":"oban","duration":185,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:55:02.993 [info] {"source":"oban","duration":577,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:55:32.994 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:56:00.450 [info] {"source":"oban","duration":208,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:56:02.996 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:56:32.997 [info] {"source":"oban","duration":537,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:57:00.451 [info] {"source":"oban","duration":163,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:57:02.998 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:57:32.999 [info] {"source":"oban","duration":822,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:58:00.452 [info] {"source":"oban","duration":186,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:58:03.001 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:58:33.002 [info] {"source":"oban","duration":554,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:00.453 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 07:59:03.003 [info] {"source":"oban","duration":555,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:32.349 [info] {"args":{"id":7085},"id":2171,"meta":{},"system_time":1766390372349653348,"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"]} 07:59:32.350 [debug] QUERY OK source="media_items" db=0.5ms idle=39.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" = ?) [7085] 07:59:32.350 [info] User scripts lifecyle file either not present or is empty. Skipping. 07:59:32.350 [debug] QUERY OK source="sources" db=0.2ms idle=40.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" = ?) [3] 07:59:32.351 [debug] QUERY OK source="media_profiles" db=0.2ms idle=41.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] 07:59:32.351 [debug] QUERY OK source="media_items" db=0.2ms idle=8.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 [7085] 07:59:32.352 [debug] QUERY OK source="media_metadata" db=0.0ms idle=2.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" = ?) [7085] 07:59:32.352 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 07:59:32.352 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:59:32.352 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:59:32.352 [debug] Running yt-dlp command for action: get_downloadable_status 07:59:32.353 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:59:32.353 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:59:32.353 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:59:32.353 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=HQSu9OTMLJo --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/01/a0/01a008ea9666b06834394c8376504e5a0479f63be6b32e76bf8931fb7d9f751f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 07:59:33.004 [info] {"source":"oban","duration":700,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 07:59:35.270 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=HQSu9OTMLJo --simulate --skip-download --print-to-file %(.{live_status})j /tmp/pinchflat/data/01/a0/01a008ea9666b06834394c8376504e5a0479f63be6b32e76bf8931fb7d9f751f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one WARNING: [youtube] HQSu9OTMLJo: Some web_safari 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 WARNING: [youtube] HQSu9OTMLJo: 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 07:59:35.270 [debug] Running yt-dlp command for action: download 07:59:35.271 [debug] QUERY OK source="settings" db=0.2ms idle=960.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:59:35.271 [debug] QUERY OK source="settings" db=0.0ms idle=961.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 [] 07:59:35.271 [debug] QUERY OK source="settings" db=0.0ms idle=961.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 07:59:35.271 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=HQSu9OTMLJo --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs all --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/어퍼컷Tube/%(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/어퍼컷Tube/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/5b/63/5b63d86254677a76bf145305aa6e067fa136aca3f57e9a15913ed01dc42c097f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:00:00.454 [info] {"source":"oban","duration":151,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:00:03.005 [info] {"source":"oban","duration":494,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:00:33.007 [info] {"source":"oban","duration":1633,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:00.455 [info] {"source":"oban","duration":146,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:01:03.031 [info] {"source":"oban","duration":2097,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:33.032 [info] {"source":"oban","duration":606,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:01:39.930 [notice] :alarm_handler: {:set, {:system_memory_high_watermark, []}} 08:02:00.456 [info] {"source":"oban","duration":150,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:02:03.033 [info] {"source":"oban","duration":899,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:02:05.803 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=HQSu9OTMLJo --no-simulate --no-progress --no-force-overwrites --parse-metadata %(upload_date>%Y-%m-%d)s:(?P.+) --write-subs --convert-subs srt --embed-subs --sub-langs all --write-thumbnail --convert-thumbnail jpg --output thumbnail:/downloads/어퍼컷Tube/%(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/어퍼컷Tube/%(upload_date>%Y-%m-%d)S %(title)S/%(title)S [%(id)S].%(ext)S --print-to-file after_move:%()j /tmp/pinchflat/data/5b/63/5b63d86254677a76bf145305aa6e067fa136aca3f57e9a15913ed01dc42c097f.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one WARNING: [youtube] HQSu9OTMLJo: Some web_safari 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 WARNING: [youtube] HQSu9OTMLJo: 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 08:02:05.836 [debug] Running yt-dlp command for action: download_thumbnail 08:02:05.853 [debug] QUERY OK source="settings" db=0.1ms idle=1543.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 [] 08:02:05.853 [debug] QUERY OK source="settings" db=0.2ms idle=1543.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 [] 08:02:05.854 [debug] QUERY OK source="settings" db=0.0ms idle=1544.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 [] 08:02:05.854 [info] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=HQSu9OTMLJo --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/7085/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/2e/01/2e010d4255e21b238673a60f6d2055a166d732628d2eb4722f24ed5397cdb7ea.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache 08:02:09.168 [debug] [command_wrapper]: /usr/local/bin/yt-dlp called with: https://www.youtube.com/watch?v=HQSu9OTMLJo --no-simulate --skip-download --write-thumbnail --convert-thumbnail jpg --output /config/metadata/media_items/7085/thumbnail.%(ext)s --print-to-file after_move:%()j /tmp/pinchflat/data/2e/01/2e010d4255e21b238673a60f6d2055a166d732628d2eb4722f24ed5397cdb7ea.json --windows-filenames --quiet --cache-dir /tmp/pinchflat/data/yt-dlp-cache exited: 0 with: WARNING: [youtube] No supported JavaScript runtime could be found. Only deno is enabled by default; to use another runtime add --js-runtimes RUNTIME[:PATH] to your command/config. YouTube extraction without a JS runtime has been deprecated, and some formats may be missing. See https://github.com/yt-dlp/yt-dlp/wiki/EJS for details on installing one WARNING: [youtube] HQSu9OTMLJo: Some web_safari 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 WARNING: [youtube] HQSu9OTMLJo: 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 08:02:09.169 [debug] QUERY OK db=0.0ms idle=1859.2ms begin [] 08:02:09.170 [debug] QUERY OK source="media_items" db=0.9ms UPDATE "media_items" SET "media_filepath" = ?, "media_downloaded_at" = ?, "metadata_filepath" = ?, "thumbnail_filepath" = ?, "updated_at" = ? WHERE "id" = ? ["/downloads/어퍼컷Tube/2025-12-19 이거 완전 미국판 "명탐정 코난" 아니냐???/이거 완전 미국판 "명탐정 코난" 아니냐??? [HQSu9OTMLJo].mp4", ~U[2025-12-22 08:02:05Z], "/downloads/어퍼컷Tube/2025-12-19 이거 완전 미국판 "명탐정 코난" 아니냐???/이거 완전 미국판 "명탐정 코난" 아니냐??? [HQSu9OTMLJo].info.json", "/downloads/어퍼컷Tube/2025-12-19 이거 완전 미국판 "명탐정 코난" 아니냐???/이거 완전 미국판 "명탐정 코난" 아니냐??? [HQSu9OTMLJo]-thumb.jpg", ~U[2025-12-22 08:02:09Z], 7085] 08:02:09.170 [debug] QUERY OK source="media_metadata" db=0.3ms INSERT INTO "media_metadata" ("metadata_filepath","thumbnail_filepath","media_item_id","inserted_at","updated_at") VALUES (?1,?2,?3,?4,?5) RETURNING "id" ["/config/metadata/media_items/7085/metadata.json.gz", "/config/metadata/media_items/7085/thumbnail.jpg", 7085, ~U[2025-12-22 08:02:09Z], ~U[2025-12-22 08:02:09Z]] 08:02:09.206 [debug] QUERY OK db=35.5ms commit [] 08:02:09.224 [debug] QUERY OK source="media_items" db=17.5ms idle=1896.8ms UPDATE "media_items" SET "last_error" = ?, "updated_at" = ? WHERE "id" = ? [nil, ~U[2025-12-22 08:02:09Z], 7085] 08:02:09.242 [debug] QUERY OK source="media_items" db=17.7ms idle=1720.9ms UPDATE "media_items" SET "media_size_bytes" = ?, "updated_at" = ? WHERE "id" = ? [3798066008, ~U[2025-12-22 08:02:09Z], 7085] 08:02:09.242 [info] User scripts lifecyle file either not present or is empty. Skipping. 08:02:09.247 [info] {"args":{"id":7085},"id":2171,"meta":{},"state":"success","max_attempts":20,"queue":"media_fetching","worker":"Pinchflat.Downloading.MediaDownloadWorker","source":"oban","duration":156893115,"event":"job:stop","queue_time":236367,"attempt":20,"tags":["media_item","media_fetching","show_in_dashboard"]} 08:02:33.037 [info] {"source":"oban","duration":1752,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:00.457 [info] {"source":"oban","duration":252,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:03:03.039 [info] {"source":"oban","duration":801,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:33.040 [info] {"source":"oban","duration":621,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:03:39.934 [notice] :alarm_handler: {:clear, :system_memory_high_watermark} 08:04:00.458 [info] {"source":"oban","duration":156,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:04:03.041 [info] {"source":"oban","duration":531,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:04:33.042 [info] {"source":"oban","duration":611,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:05:00.459 [info] {"source":"oban","duration":181,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:05:03.044 [info] {"source":"oban","duration":757,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:05:33.045 [info] {"source":"oban","duration":663,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:06:00.460 [info] {"source":"oban","duration":197,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:06:03.046 [info] {"source":"oban","duration":532,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:06:33.047 [info] {"source":"oban","duration":597,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:07:00.461 [info] {"source":"oban","duration":204,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:07:03.049 [info] {"source":"oban","duration":929,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:07:33.050 [info] {"source":"oban","duration":726,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:08:00.462 [info] {"source":"oban","duration":169,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:08:03.052 [info] {"source":"oban","duration":502,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:08:33.053 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:09:00.463 [info] {"source":"oban","duration":287,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:09:03.054 [info] {"source":"oban","duration":571,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:09:33.055 [info] {"source":"oban","duration":372,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:00.464 [info] {"source":"oban","duration":203,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:10:03.056 [info] {"source":"oban","duration":486,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:33.057 [info] {"source":"oban","duration":705,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:10:40.681 [info] GET /sources/4/force_metadata_refresh 08:10:40.681 [debug] QUERY OK source="settings" db=0.1ms idle=581.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 [] 08:10:40.682 [debug] QUERY OK source="settings" db=0.1ms idle=365.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 [] 08:10:40.682 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:10:40.682 [error] #PID<0.406403.0> running PinchflatWeb.Endpoint (connection #PID<0.406402.0>, stream id 1) terminated Server: pinchflat.moozuk.net: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.406402.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_metadata_refresh", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48700}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406403.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], 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", "GIN7SvI80Ul5UKcAFQmi"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406402.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_metadata_refresh", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48700}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.406402.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_metadata_refresh", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48700}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406403.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/4/forc (truncated) 08:10:41.184 [info] GET /sources/3/force_metadata_refresh 08:10:41.184 [debug] QUERY OK source="settings" db=0.2ms idle=867.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 [] 08:10:41.184 [debug] QUERY OK source="settings" db=0.0ms idle=867.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 [] 08:10:41.184 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:10:41.184 [error] #PID<0.406405.0> running PinchflatWeb.Endpoint (connection #PID<0.406404.0>, stream id 1) terminated Server: pinchflat.moozuk.net: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.406404.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_metadata_refresh", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48704}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406405.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], 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", "GIN7SxA0OVh5mmEAFQnC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406404.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_metadata_refresh", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48704}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.406404.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_metadata_refresh", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48704}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406405.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/3/forc (truncated) 08:10:41.682 [info] GET /sources/4/sync_files_on_disk 08:10:41.683 [debug] QUERY OK source="settings" db=0.1ms idle=1001.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 [] 08:10:41.683 [debug] QUERY OK source="settings" db=0.0ms idle=1001.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 [] 08:10:41.683 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:10:41.683 [error] #PID<0.406407.0> running PinchflatWeb.Endpoint (connection #PID<0.406406.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /sources/4/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/4/sync_files_on_disk (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406406.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/sync_files_on_disk", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48708}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406407.0>, params: %{}, path_info: ["sources", "4", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/4/sync_files_on_disk", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIN7Sy3vhp7TBKEAFQni"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406406.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/sync_files_on_disk", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48708}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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/sync_files_on_disk (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406406.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/sync_files_on_disk", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48708}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406407.0>, params: %{}, path_info: ["sources", "4", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/4/sync_files_on_disk", resp_body (truncated) 08:10:42.183 [info] GET /sources/3/sync_files_on_disk 08:10:42.183 [debug] QUERY OK source="settings" db=0.1ms idle=999.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 [] 08:10:42.184 [debug] QUERY OK source="settings" db=0.2ms idle=999.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 [] 08:10:42.184 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:10:42.184 [error] #PID<0.406409.0> running PinchflatWeb.Endpoint (connection #PID<0.406408.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /sources/3/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/3/sync_files_on_disk (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406408.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/sync_files_on_disk", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48720}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406409.0>, params: %{}, path_info: ["sources", "3", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/3/sync_files_on_disk", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIN7S0vFPkfP9fMAFQoC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406408.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/sync_files_on_disk", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48720}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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/sync_files_on_disk (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406408.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/sync_files_on_disk", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48720}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406409.0>, params: %{}, path_info: ["sources", "3", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/3/sync_files_on_disk", resp_body (truncated) 08:10:42.684 [info] GET /sources/4/force_index 08:10:42.684 [debug] QUERY OK source="settings" db=0.1ms idle=1001.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 [] 08:10:42.685 [debug] QUERY OK source="settings" db=0.0ms idle=1001.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 [] 08:10:42.685 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:10:42.685 [error] #PID<0.406411.0> running PinchflatWeb.Endpoint (connection #PID<0.406410.0>, stream id 1) terminated Server: pinchflat.moozuk.net: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.406410.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_index", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48728}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406411.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/4/force_index", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIN7S2mjroTSqnkAFQoi"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406410.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_index", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48728}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.406410.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_index", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48728}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406411.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/4/force_index", resp_body: nil, resp_cookies: %{}, resp_headers: [ (truncated) 08:10:43.186 [info] GET /sources/3/force_index 08:10:43.187 [debug] QUERY OK source="settings" db=0.3ms idle=1002.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 [] 08:10:43.187 [debug] QUERY OK source="settings" db=0.1ms idle=1003.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 [] 08:10:43.187 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:10:43.187 [error] #PID<0.406413.0> running PinchflatWeb.Endpoint (connection #PID<0.406412.0>, stream id 1) terminated Server: pinchflat.moozuk.net: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.406412.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_index", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48744}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406413.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/3/force_index", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIN7S4eOQwYZ4zcAFQpC"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406412.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_index", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48744}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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_index (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406412.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_index", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 48744}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406413.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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/3/force_index", resp_body: nil, resp_cookies: %{}, resp_headers: [ (truncated) 08:11:00.465 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:11:03.058 [info] {"source":"oban","duration":533,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:11:33.059 [info] {"source":"oban","duration":552,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:11:42.361 [info] GET /sources/4 08:11:42.361 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"delete_files" => "true", "id" => "4"} Pipelines: [:browser] 08:11:42.361 [debug] QUERY OK source="sources" db=0.3ms idle=177.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] 08:11:42.362 [debug] QUERY OK source="media_profiles" db=0.2ms idle=42.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] 08:11:42.363 [debug] QUERY OK source="tasks" db=0.8ms idle=42.8ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [4, "executing", "available", "scheduled", "retryable"] 08:11:42.363 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=43.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" = ?) [2346] 08:11:42.363 [debug] QUERY OK source="settings" db=0.1ms idle=43.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 [] 08:11:42.363 [debug] QUERY OK source="settings" db=0.0ms idle=2.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:11:42.364 [debug] QUERY OK source="settings" db=0.0ms idle=1.8ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:11:42.364 [debug] QUERY OK source="sources" db=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" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:11:42.366 [debug] QUERY OK source="media_items" db=1.4ms idle=1.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")))) [4] 08:11:42.367 [debug] QUERY OK source="media_items" db=0.5ms idle=2.8ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [4, 10, 0] 08:11:42.367 [debug] QUERY OK source="sources" db=0.1ms idle=3.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:11:42.368 [debug] QUERY OK source="media_items" db=0.3ms idle=3.7ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [4] 08:11:42.368 [debug] QUERY OK source="media_items" db=0.5ms idle=3.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 ? [4, 10, 0] 08:11:42.369 [debug] QUERY OK source="sources" db=0.0ms idle=2.7ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [4] 08:11:42.369 [debug] QUERY OK source="media_items" db=0.1ms idle=2.2ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((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] 08:11:42.370 [debug] QUERY OK source="media_items" db=0.5ms idle=1.8ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_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] 08:11:42.370 [info] Sent 200 in 9ms 08:11:42.706 [info] GET /sources/new 08:11:42.707 [debug] Processing with PinchflatWeb.Sources.SourceController.new/2 Parameters: %{"template_id" => "3"} Pipelines: [:browser] 08:11:42.707 [debug] QUERY OK source="sources" db=0.3ms idle=338.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" = ?) [3] 08:11:42.707 [debug] QUERY OK source="media_profiles" db=0.1ms idle=338.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" [] 08:11:42.708 [debug] QUERY OK source="settings" db=0.1ms idle=338.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 [] 08:11:42.708 [debug] QUERY OK source="settings" db=0.2ms idle=338.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 [] 08:11:42.708 [debug] QUERY OK source="settings" db=0.0ms idle=338.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 [] 08:11:42.708 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:11:42.709 [debug] QUERY OK source="settings" db=0.1ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:11:42.710 [info] Sent 200 in 3ms 08:11:42.885 [info] GET /sources/3/force_download_pending 08:11:42.886 [debug] QUERY OK source="settings" db=0.1ms idle=178.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 [] 08:11:42.886 [debug] QUERY OK source="settings" db=0.0ms idle=177.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 [] 08:11:42.886 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:11:42.886 [error] #PID<0.406425.0> running PinchflatWeb.Endpoint (connection #PID<0.406424.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /sources/3/force_download_pending ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/3/force_download_pending (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406424.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_download_pending", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33516}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYQlZjSEJycGd6ZlNnMm1SVERuVkhrN0ZE.baqOrheq889Di3bx64Z2xWg_Zy_mto95f3S5YjqRS4U", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYQlZjSEJycGd6ZlNnMm1SVERuVkhrN0ZE.baqOrheq889Di3bx64Z2xWg_Zy_mto95f3S5YjqRS4U" }, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.406425.0>, params: %{}, path_info: ["sources", "3", "force_download_pending"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYQlZjSEJycGd6ZlNnMm1SVERuVkhrN0ZE.baqOrheq889Di3bx64Z2xWg_Zy_mto95f3S5YjqRS4U" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYQlZjSEJycGd6ZlNnMm1SVERuVkhrN0ZE.baqOrheq889Di3bx64Z2xWg_Zy_mto95f3S5YjqRS4U"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/3/force_download_pending", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIN7WW3qThR2LMcAFQri"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406424.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_download_pending", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33516}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYQlZjSEJycGd6ZlNnMm1SVERuVkhrN0ZE.baqOrheq889Di3bx64Z2xWg_Zy_mto95f3S5YjqRS4U", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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_download_pending (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406424.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_download_pending", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 33516}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYQlZjSEJycGd6ZlNnMm1SVERuVkhrN0ZE.baqOrheq889Di3bx64Z2xWg_Zy_mto95f3S5YjqRS4U", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYQlZjSEJycGd6ZlNnMm1SVERuVkhrN0ZE.baqOrheq889Di3bx64Z2xWg_Zy_mto95f3S5YjqRS4U" }, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.406425.0>, params: %{}, path_info: ["sources", "3", "force_download_pending"], path_params: %{}, port: 80, private: %{ (truncated) 08:11:43.406 [info] GET /sources/4/edit 08:11:43.406 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "4"} Pipelines: [:browser] 08:11:43.406 [debug] QUERY OK source="sources" db=0.1ms idle=697.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" = ?) [4] 08:11:43.406 [debug] QUERY OK source="media_profiles" db=0.0ms idle=697.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" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 08:11:43.407 [debug] QUERY OK source="settings" db=0.0ms idle=520.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 [] 08:11:43.407 [debug] QUERY OK source="settings" db=0.0ms idle=521.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 [] 08:11:43.407 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:11:43.408 [info] Sent 200 in 2ms 08:11:43.948 [info] GET /sources/3/edit 08:11:43.948 [debug] Processing with PinchflatWeb.Sources.SourceController.edit/2 Parameters: %{"id" => "3"} Pipelines: [:browser] 08:11:43.949 [debug] QUERY OK source="sources" db=0.1ms idle=542.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" = ?) [3] 08:11:43.949 [debug] QUERY OK source="media_profiles" db=0.0ms idle=542.3ms SELECT m0."id", m0."name", m0."redownload_delay_days", m0."output_path_template", m0."download_subs", m0."download_auto_subs", m0."embed_subs", m0."sub_langs", m0."download_thumbnail", m0."embed_thumbnail", m0."download_source_images", m0."download_metadata", m0."embed_metadata", m0."download_nfo", m0."sponsorblock_behaviour", m0."sponsorblock_categories", m0."shorts_behaviour", m0."livestream_behaviour", m0."audio_track", m0."preferred_resolution", m0."media_container", m0."marked_for_deletion_at", m0."inserted_at", m0."updated_at" FROM "media_profiles" AS m0 ORDER BY m0."name" [] 08:11:43.950 [debug] QUERY OK source="settings" db=0.4ms idle=542.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 [] 08:11:43.950 [debug] QUERY OK source="settings" db=0.0ms idle=542.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 [] 08:11:43.950 [debug] QUERY OK source="settings" db=0.1ms idle=542.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 [] 08:11:43.951 [info] Sent 200 in 3ms 08:11:44.414 [info] GET /sources/new 08:11:44.415 [debug] Processing with PinchflatWeb.Sources.SourceController.new/2 Parameters: %{} Pipelines: [:browser] 08:11:44.415 [debug] QUERY OK source="media_profiles" db=0.1ms idle=465.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" [] 08:11:44.415 [debug] QUERY OK source="settings" db=0.0ms idle=465.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 [] 08:11:44.415 [debug] QUERY OK source="settings" db=0.1ms idle=465.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 [] 08:11:44.416 [debug] QUERY OK source="settings" db=0.0ms idle=465.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 [] 08:11:44.416 [debug] QUERY OK source="settings" db=0.1ms idle=230.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 [] 08:11:44.416 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:11:44.417 [info] Sent 200 in 2ms 08:12:00.466 [info] {"source":"oban","duration":184,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:12:03.061 [info] {"source":"oban","duration":846,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:12:08.964 [info] GET /sources/3/media/1922/edit 08:12:08.965 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "1922", "source_id" => "3"} Pipelines: [:browser] 08:12:08.965 [debug] QUERY OK source="media_items" db=0.1ms idle=749.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" = ?) [1922] 08:12:08.965 [debug] QUERY OK source="settings" db=0.1ms idle=646.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 [] 08:12:08.966 [debug] QUERY OK source="settings" db=0.0ms idle=646.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 [] 08:12:08.966 [debug] QUERY OK source="settings" db=0.1ms idle=647.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 [] 08:12:08.967 [info] Sent 200 in 2ms 08:12:09.170 [info] GET /sources/4/media/2241/edit 08:12:09.170 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2241", "source_id" => "4"} Pipelines: [:browser] 08:12:09.170 [debug] QUERY OK source="media_items" db=0.1ms idle=851.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" = ?) [2241] 08:12:09.171 [debug] QUERY OK source="settings" db=0.1ms idle=205.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 [] 08:12:09.171 [debug] QUERY OK source="settings" db=0.0ms idle=205.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 [] 08:12:09.171 [debug] QUERY OK source="settings" db=0.1ms idle=205.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 [] 08:12:09.172 [info] Sent 200 in 1ms 08:12:09.634 [info] GET /sources/4/media/2246 08:12:09.634 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2246", "source_id" => "4"} Pipelines: [:browser] 08:12:09.634 [debug] QUERY OK source="media_items" db=0.1ms idle=463.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" = ?) [2246] 08:12:09.634 [debug] QUERY OK source="sources" db=0.1ms idle=463.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" = ?) [4] 08:12:09.635 [debug] QUERY OK source="tasks" db=0.3ms idle=463.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" [2246] 08:12:09.635 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=463.5ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)) [1929, 1944, 1958, 1973, 1987, 2002, 2016, 2031, 2045, 2058, 2072, 2085, 2099, 2114, 2133, 2151, 2165, 2182, 2196, 2212, 2225, 2239, 2254, 2268, 2282, 2297, 2311, 2327, 2343] 08:12:09.636 [debug] QUERY OK source="settings" db=0.0ms idle=419.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 [] 08:12:09.636 [debug] QUERY OK source="settings" db=0.0ms idle=1.6ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:12:09.636 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:12:09.636 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:12:09.637 [info] Sent 200 in 3ms 08:12:10.134 [info] GET /sources/3/media/8756/edit 08:12:10.134 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "8756", "source_id" => "3"} Pipelines: [:browser] 08:12:10.135 [debug] QUERY OK source="media_items" db=0.1ms idle=499.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" = ?) [8756] 08:12:10.135 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:12:10.135 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:12:10.136 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:12:10.136 [info] Sent 200 in 1ms 08:12:10.636 [info] GET /sources/3/media/9042/edit 08:12:10.637 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "9042", "source_id" => "3"} Pipelines: [:browser] 08:12:10.637 [debug] QUERY OK source="media_items" db=0.1ms idle=501.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" = ?) [9042] 08:12:10.637 [debug] QUERY OK source="settings" db=0.0ms idle=502.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 [] 08:12:10.637 [debug] QUERY OK source="settings" db=0.0ms idle=502.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 [] 08:12:10.638 [debug] QUERY OK source="settings" db=0.1ms idle=502.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 [] 08:12:10.638 [info] Sent 200 in 1ms 08:12:11.138 [info] GET /sources/4/media/7310/edit 08:12:11.139 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "7310", "source_id" => "4"} Pipelines: [:browser] 08:12:11.139 [debug] QUERY OK source="media_items" db=0.3ms idle=921.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" = ?) [7310] 08:12:11.140 [debug] QUERY OK source="settings" db=0.2ms idle=502.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:12:11.140 [debug] QUERY OK source="settings" db=0.0ms idle=502.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:12:11.140 [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 [] 08:12:11.141 [info] Sent 200 in 2ms 08:12:33.063 [info] {"source":"oban","duration":688,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:12:36.202 [info] GET /sources/4/media/2261 08:12:36.202 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2261", "source_id" => "4"} Pipelines: [:browser] 08:12:36.203 [debug] QUERY OK source="media_items" db=0.1ms idle=1882.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" = ?) [2261] 08:12:36.203 [debug] QUERY OK source="tasks" db=0.2ms idle=1883.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" [2261] 08:12:36.203 [debug] QUERY OK source="sources" db=0.3ms idle=1883.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" = ?) [4] 08:12:36.203 [debug] QUERY OK source="settings" db=0.0ms idle=1883.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 [] 08:12:36.203 [debug] QUERY OK source="settings" db=0.0ms idle=950.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 [] 08:12:36.204 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:12:36.204 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:12:36.205 [info] Sent 200 in 2ms 08:12:36.398 [info] GET /sources/4/media/2272/edit 08:12:36.398 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2272", "source_id" => "4"} Pipelines: [:browser] 08:12:36.399 [debug] QUERY OK source="media_items" db=0.2ms idle=195.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" = ?) [2272] 08:12:36.399 [debug] QUERY OK source="settings" db=0.0ms idle=195.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 [] 08:12:36.399 [debug] QUERY OK source="settings" db=0.0ms idle=195.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 [] 08:12:36.400 [debug] QUERY OK source="settings" db=0.0ms idle=195.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 [] 08:12:36.400 [info] Sent 200 in 2ms 08:12:36.585 [info] GET /sources/3/media/2897/edit 08:12:36.585 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2897", "source_id" => "3"} Pipelines: [:browser] 08:12:36.585 [debug] QUERY OK source="media_items" db=0.2ms idle=330.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" = ?) [2897] 08:12:36.585 [debug] QUERY OK source="settings" db=0.0ms idle=186.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 [] 08:12:36.586 [debug] QUERY OK source="settings" db=0.1ms idle=186.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 [] 08:12:36.586 [debug] QUERY OK source="settings" db=0.0ms idle=186.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 [] 08:12:36.586 [info] Sent 200 in 1ms 08:12:37.054 [info] GET /sources/4/media/2261/edit 08:12:37.054 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2261", "source_id" => "4"} Pipelines: [:browser] 08:12:37.055 [debug] QUERY OK source="media_items" db=0.1ms idle=654.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" = ?) [2261] 08:12:37.055 [debug] QUERY OK source="settings" db=0.0ms idle=469.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 [] 08:12:37.055 [debug] QUERY OK source="settings" db=0.0ms idle=469.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 [] 08:12:37.055 [debug] QUERY OK source="settings" db=0.0ms idle=469.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 [] 08:12:37.056 [info] Sent 200 in 1ms 08:12:37.557 [info] GET /sources/3/media/2896/edit 08:12:37.558 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2896", "source_id" => "3"} Pipelines: [:browser] 08:12:37.558 [debug] QUERY OK source="media_items" db=0.1ms idle=503.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" = ?) [2896] 08:12:37.558 [debug] QUERY OK source="settings" db=0.0ms idle=503.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 [] 08:12:37.559 [debug] QUERY OK source="settings" db=0.0ms idle=503.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 [] 08:12:37.559 [debug] QUERY OK source="settings" db=0.1ms idle=503.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 [] 08:12:37.559 [info] Sent 200 in 1ms 08:12:38.058 [info] GET /sources/4/media/7310 08:12:38.058 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "7310", "source_id" => "4"} Pipelines: [:browser] 08:12:38.059 [debug] QUERY OK source="media_items" db=0.1ms idle=803.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" = ?) [7310] 08:12:38.059 [debug] QUERY OK source="tasks" db=0.0ms idle=500.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" [7310] 08:12:38.059 [debug] QUERY OK source="sources" db=0.3ms idle=500.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] 08:12:38.059 [debug] QUERY OK source="settings" db=0.1ms 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 [] 08:12:38.060 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:12:38.060 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:12:38.060 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:12:38.061 [info] Sent 200 in 3ms 08:12:55.747 [info] GET /sources/4/media/2272 08:12:55.747 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2272", "source_id" => "4"} Pipelines: [:browser] 08:12:55.748 [debug] QUERY OK source="media_items" db=0.3ms idle=470.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" = ?) [2272] 08:12:55.748 [debug] QUERY OK source="tasks" db=0.1ms idle=427.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" [2272] 08:12:55.748 [debug] QUERY OK source="sources" db=0.2ms idle=427.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" = ?) [4] 08:12:55.749 [debug] QUERY OK source="settings" db=0.0ms idle=428.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 [] 08:12:55.749 [debug] QUERY OK source="settings" db=0.0ms idle=428.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 [] 08:12:55.749 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:12:55.749 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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] 08:12:55.750 [info] Sent 200 in 3ms 08:12:55.943 [info] GET /sources/3/media/9488 08:12:55.944 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9488", "source_id" => "3"} Pipelines: [:browser] 08:12:55.944 [debug] QUERY OK source="media_items" db=0.1ms idle=195.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" = ?) [9488] 08:12:55.944 [debug] QUERY OK source="tasks" db=0.1ms idle=195.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" [9488] 08:12:55.944 [debug] QUERY OK source="sources" db=0.1ms idle=195.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 08:12:55.945 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=195.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" IN (?,?,?)) [2103, 2128, 2146] 08:12:55.945 [debug] QUERY OK source="settings" db=0.0ms idle=195.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 [] 08:12:55.945 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:12:55.945 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:12:55.946 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:12:55.946 [info] Sent 200 in 3ms 08:12:56.283 [info] GET /sources/3/media/10322/edit 08:12:56.283 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "10322", "source_id" => "3"} Pipelines: [:browser] 08:12:56.284 [debug] QUERY OK source="media_items" db=0.1ms idle=338.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" = ?) [10322] 08:12:56.284 [debug] QUERY OK source="settings" db=0.0ms idle=338.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 [] 08:12:56.284 [debug] QUERY OK source="settings" db=0.1ms idle=338.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 [] 08:12:56.284 [debug] QUERY OK source="settings" db=0.0ms idle=338.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 [] 08:12:56.285 [info] Sent 200 in 1ms 08:12:56.783 [info] GET /sources/4/media/9007/edit 08:12:56.783 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "9007", "source_id" => "4"} Pipelines: [:browser] 08:12:56.783 [debug] QUERY OK source="media_items" db=0.1ms idle=505.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" = ?) [9007] 08:12:56.784 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:12:56.784 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:12:56.784 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:12:56.785 [info] Sent 200 in 1ms 08:12:57.284 [info] GET /sources/3/media/2898/edit 08:12:57.284 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2898", "source_id" => "3"} Pipelines: [:browser] 08:12:57.284 [debug] QUERY OK source="media_items" db=0.1ms idle=500.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" = ?) [2898] 08:12:57.284 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:12:57.285 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:12:57.285 [debug] QUERY OK source="settings" db=0.1ms idle=500.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 [] 08:12:57.285 [info] Sent 200 in 1ms 08:12:57.786 [info] GET /sources/3/media/2899/edit 08:12:57.787 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2899", "source_id" => "3"} Pipelines: [:browser] 08:12:57.787 [debug] QUERY OK source="media_items" db=0.1ms idle=507.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" = ?) [2899] 08:12:57.787 [debug] QUERY OK source="settings" db=0.0ms idle=503.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 [] 08:12:57.787 [debug] QUERY OK source="settings" db=0.0ms idle=502.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 [] 08:12:57.788 [debug] QUERY OK source="settings" db=0.0ms idle=503.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 [] 08:12:57.788 [info] Sent 200 in 1ms 08:13:00.467 [info] {"source":"oban","duration":215,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:13:03.064 [info] {"source":"oban","duration":541,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:13:10.745 [info] GET /sources/4/media/2246/edit 08:13:10.745 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2246", "source_id" => "4"} Pipelines: [:browser] 08:13:10.745 [debug] QUERY OK source="media_items" db=0.2ms idle=1424.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" = ?) [2246] 08:13:10.746 [debug] QUERY OK source="settings" db=0.0ms idle=1425.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 [] 08:13:10.746 [debug] QUERY OK source="settings" db=0.1ms idle=449.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 [] 08:13:10.746 [debug] QUERY OK source="settings" db=0.0ms idle=425.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 [] 08:13:10.747 [info] Sent 200 in 2ms 08:13:10.927 [info] GET /sources/3/media/2904 08:13:10.927 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2904", "source_id" => "3"} Pipelines: [:browser] 08:13:10.927 [debug] QUERY OK source="media_items" db=0.2ms idle=606.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" = ?) [2904] 08:13:10.928 [debug] QUERY OK source="tasks" db=0.1ms idle=182.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" [2904] 08:13:10.928 [debug] QUERY OK source="sources" db=0.2ms idle=181.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" = ?) [3] 08:13:10.928 [debug] QUERY OK source="settings" db=0.0ms idle=181.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 [] 08:13:10.928 [debug] QUERY OK source="settings" db=0.0ms idle=181.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 [] 08:13:10.928 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:10.929 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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] 08:13:10.930 [info] Sent 200 in 2ms 08:13:11.109 [info] GET /sources/3/media/2904/edit 08:13:11.109 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2904", "source_id" => "3"} Pipelines: [:browser] 08:13:11.109 [debug] QUERY OK source="media_items" db=0.1ms idle=181.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" = ?) [2904] 08:13:11.109 [debug] QUERY OK source="settings" db=0.0ms idle=181.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 [] 08:13:11.110 [debug] QUERY OK source="settings" db=0.0ms idle=181.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 [] 08:13:11.110 [debug] QUERY OK source="settings" db=0.1ms idle=181.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 [] 08:13:11.111 [info] Sent 200 in 2ms 08:13:11.573 [info] GET /sources/new 08:13:11.573 [debug] Processing with PinchflatWeb.Sources.SourceController.new/2 Parameters: %{"template_id" => "4"} Pipelines: [:browser] 08:13:11.573 [debug] QUERY OK source="sources" db=0.1ms idle=463.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] 08:13:11.574 [debug] QUERY OK source="media_profiles" db=0.1ms idle=464.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" [] 08:13:11.574 [debug] QUERY OK source="settings" db=0.0ms idle=464.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 [] 08:13:11.574 [debug] QUERY OK source="settings" db=0.0ms idle=463.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 [] 08:13:11.574 [debug] QUERY OK source="settings" db=0.0ms idle=277.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 [] 08:13:11.574 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:11.575 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:11.575 [info] Sent 200 in 2ms 08:13:12.074 [info] GET /sources/3 08:13:12.074 [debug] Processing with PinchflatWeb.Sources.SourceController.show/2 Parameters: %{"delete_files" => "true", "id" => "3"} Pipelines: [:browser] 08:13:12.075 [debug] QUERY OK source="sources" db=0.1ms idle=500.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" = ?) [3] 08:13:12.075 [debug] QUERY OK source="media_profiles" db=0.1ms idle=500.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] 08:13:12.076 [debug] QUERY OK source="tasks" db=0.4ms idle=501.1ms SELECT t0."id", t0."job_id", t0."source_id", t0."media_item_id", t0."inserted_at", t0."updated_at" FROM "tasks" AS t0 INNER JOIN "oban_jobs" AS o1 ON o1."id" = t0."job_id" WHERE (t0."source_id" = ?) AND (o1."state" IN (?,?,?,?)) [3, "executing", "available", "scheduled", "retryable"] 08:13:12.076 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=501.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" = ?) [2350] 08:13:12.076 [debug] QUERY OK source="settings" db=0.1ms idle=501.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 [] 08:13:12.076 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:12.077 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:12.077 [debug] QUERY OK source="sources" db=0.0ms idle=1.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] 08:13:12.079 [debug] QUERY OK source="media_items" db=1.2ms idle=1.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) [3] 08:13:12.080 [debug] QUERY OK source="media_items" db=0.7ms idle=2.7ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds")))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [3, 10, 0] 08:13:12.081 [debug] QUERY OK source="sources" db=0.1ms idle=4.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 08:13:12.081 [debug] QUERY OK source="media_items" db=0.1ms idle=4.0ms SELECT count(m0."id") FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) [3] 08:13:12.081 [debug] QUERY OK source="media_items" db=0.5ms idle=3.6ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 WHERE ((m0."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [3, 10, 0] 08:13:12.082 [debug] QUERY OK source="sources" db=0.0ms idle=3.1ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 08:13:12.083 [debug] QUERY OK source="media_items" db=0.4ms idle=2.4ms SELECT count(m0."id") FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((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] 08:13:12.083 [debug] QUERY OK source="media_items" db=0.7ms idle=2.1ms SELECT m0."id", m0."title", m0."uploaded_at", m0."prevent_download", m0."last_error" FROM "media_items" AS m0 INNER JOIN "sources" AS s1 ON s1."id" = m0."source_id" INNER JOIN "media_profiles" AS m2 ON m2."id" = s1."media_profile_id" WHERE ((m0."source_id" = ?) AND (NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (((((NOT (NOT (m0."media_filepath" IS NULL)) AND NOT (m0."prevent_download" = 1)) AND ((s1."download_cutoff_date" IS NULL) OR date(m0."uploaded_at") >= s1."download_cutoff_date")) AND CASE WHEN shorts_behaviour = 'only' AND livestream_behaviour = 'only' THEN livestream = true OR short_form_content = true WHEN shorts_behaviour = 'only' THEN short_form_content = true WHEN livestream_behaviour = 'only' THEN livestream = true WHEN shorts_behaviour = 'exclude' AND livestream_behaviour = 'exclude' THEN short_form_content = false AND livestream = false WHEN shorts_behaviour = 'exclude' THEN short_form_content = false WHEN livestream_behaviour = 'exclude' THEN livestream = false ELSE true END ) AND ((s1."title_filter_regex" IS NULL) OR regexp_like(m0."title", s1."title_filter_regex"))) AND (((s1."min_duration_seconds" IS NULL) OR duration_seconds >= s1."min_duration_seconds") AND ((s1."max_duration_seconds" IS NULL) OR duration_seconds <= s1."max_duration_seconds"))))) ORDER BY m0."uploaded_at" DESC LIMIT ? OFFSET ? [3, 10, 0] 08:13:12.084 [info] Sent 200 in 9ms 08:13:12.577 [info] GET /sources/4/force_download_pending 08:13:12.577 [debug] QUERY OK source="settings" db=0.3ms idle=495.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 [] 08:13:12.578 [debug] QUERY OK source="settings" db=0.2ms idle=495.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 [] 08:13:12.578 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:13:12.578 [error] #PID<0.406505.0> running PinchflatWeb.Endpoint (connection #PID<0.406504.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /sources/4/force_download_pending ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/4/force_download_pending (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406504.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_download_pending", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59498}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYV09oUXpMZngteXdPV0xpUHBNY25nU3M3.mz3JhyUYahTbGruj_Fdol23fXCMg7pFKP9IOKU81i_E", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYV09oUXpMZngteXdPV0xpUHBNY25nU3M3.mz3JhyUYahTbGruj_Fdol23fXCMg7pFKP9IOKU81i_E" }, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.406505.0>, params: %{}, path_info: ["sources", "4", "force_download_pending"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYV09oUXpMZngteXdPV0xpUHBNY25nU3M3.mz3JhyUYahTbGruj_Fdol23fXCMg7pFKP9IOKU81i_E" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYV09oUXpMZngteXdPV0xpUHBNY25nU3M3.mz3JhyUYahTbGruj_Fdol23fXCMg7pFKP9IOKU81i_E"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/4/force_download_pending", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIN7bk_vrdSKvCkAIJ3h"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406504.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_download_pending", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59498}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYV09oUXpMZngteXdPV0xpUHBNY25nU3M3.mz3JhyUYahTbGruj_Fdol23fXCMg7pFKP9IOKU81i_E", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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_download_pending (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406504.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_download_pending", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 59498}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYV09oUXpMZngteXdPV0xpUHBNY25nU3M3.mz3JhyUYahTbGruj_Fdol23fXCMg7pFKP9IOKU81i_E", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYV09oUXpMZngteXdPV0xpUHBNY25nU3M3.mz3JhyUYahTbGruj_Fdol23fXCMg7pFKP9IOKU81i_E" }, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.406505.0>, params: %{}, path_info: ["sources", "4", "force_download_pending"], path_params: %{}, port: 80, private: %{ (truncated) 08:13:33.065 [info] {"source":"oban","duration":553,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:13:33.797 [info] GET /sources/4/media/2270/edit 08:13:33.798 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2270", "source_id" => "4"} Pipelines: [:browser] 08:13:33.798 [debug] QUERY OK source="media_items" db=0.1ms idle=1477.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" = ?) [2270] 08:13:33.798 [debug] QUERY OK source="settings" db=0.1ms idle=1474.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 [] 08:13:33.798 [debug] QUERY OK source="settings" db=0.0ms idle=733.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 [] 08:13:33.799 [debug] QUERY OK source="settings" db=0.1ms idle=478.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 [] 08:13:33.799 [info] Sent 200 in 1ms 08:13:33.982 [info] GET /sources/4/media/2240/edit 08:13:33.982 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2240", "source_id" => "4"} Pipelines: [:browser] 08:13:33.983 [debug] QUERY OK source="media_items" db=0.1ms idle=657.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" = ?) [2240] 08:13:33.983 [debug] QUERY OK source="settings" db=0.0ms idle=184.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 [] 08:13:33.983 [debug] QUERY OK source="settings" db=0.0ms idle=184.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 [] 08:13:33.983 [debug] QUERY OK source="settings" db=0.0ms idle=184.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 [] 08:13:33.984 [info] Sent 200 in 1ms 08:13:34.401 [info] GET /sources/4/media/2259/edit 08:13:34.402 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2259", "source_id" => "4"} Pipelines: [:browser] 08:13:34.402 [debug] QUERY OK source="media_items" db=0.1ms idle=419.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" = ?) [2259] 08:13:34.402 [debug] QUERY OK source="settings" db=0.1ms idle=419.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 [] 08:13:34.403 [debug] QUERY OK source="settings" db=0.1ms idle=419.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 [] 08:13:34.403 [debug] QUERY OK source="settings" db=0.0ms idle=419.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:34.404 [info] Sent 200 in 2ms 08:13:34.902 [info] GET /sources/3/media/1922 08:13:34.902 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "1922", "source_id" => "3"} Pipelines: [:browser] 08:13:34.903 [debug] QUERY OK source="media_items" db=0.3ms idle=575.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" = ?) [1922] 08:13:34.903 [debug] QUERY OK source="tasks" db=0.1ms idle=500.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" [1922] 08:13:34.903 [debug] QUERY OK source="sources" db=0.2ms idle=500.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" = ?) [3] 08:13:34.903 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=500.5ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?,?)) [1754, 1933, 2119, 2315] 08:13:34.904 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:13:34.904 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:34.904 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:34.905 [debug] QUERY OK source="media_profiles" db=0.1ms 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] 08:13:34.905 [info] Sent 200 in 3ms 08:13:35.403 [info] GET /sources/3/media/2905/edit 08:13:35.403 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2905", "source_id" => "3"} Pipelines: [:browser] 08:13:35.403 [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" = ?) [2905] 08:13:35.403 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:13:35.404 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:13:35.404 [debug] QUERY OK source="settings" db=0.0ms idle=498.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 [] 08:13:35.404 [info] Sent 200 in 1ms 08:13:35.904 [info] GET /sources/4/media/9007 08:13:35.904 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9007", "source_id" => "4"} Pipelines: [:browser] 08:13:35.904 [debug] QUERY OK source="media_items" db=0.1ms idle=575.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" = ?) [9007] 08:13:35.904 [debug] QUERY OK source="tasks" db=0.1ms 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" [9007] 08:13:35.905 [debug] QUERY OK source="sources" db=0.1ms idle=500.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] 08:13:35.905 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=501.0ms 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" = ?) [2013] 08:13:35.905 [debug] QUERY OK source="settings" db=0.0ms idle=501.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 [] 08:13:35.905 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:35.905 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:35.906 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:13:35.907 [info] Sent 200 in 3ms 08:13:53.835 [info] GET /sources/3/media/10169 08:13:53.835 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10169", "prevent_download" => "true", "source_id" => "3"} Pipelines: [:browser] 08:13:53.836 [debug] QUERY OK source="media_items" db=0.2ms idle=514.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" = ?) [10169] 08:13:53.836 [debug] QUERY OK source="tasks" db=0.1ms idle=515.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" [10169] 08:13:53.836 [debug] QUERY OK source="sources" db=0.1ms idle=515.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" = ?) [3] 08:13:53.836 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=515.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" = ?) [2244] 08:13:53.837 [debug] QUERY OK source="settings" db=0.1ms idle=486.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 [] 08:13:53.837 [debug] QUERY OK source="settings" db=0.2ms 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 [] 08:13:53.837 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:53.838 [debug] QUERY OK source="media_profiles" db=0.2ms idle=1.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] 08:13:53.839 [info] Sent 200 in 4ms 08:13:54.072 [info] GET /sources/4/media/2240 08:13:54.073 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2240", "source_id" => "4"} Pipelines: [:browser] 08:13:54.073 [debug] QUERY OK source="media_items" db=0.2ms idle=236.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" = ?) [2240] 08:13:54.073 [debug] QUERY OK source="sources" db=0.1ms idle=236.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] 08:13:54.074 [debug] QUERY OK source="tasks" db=0.3ms idle=236.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" [2240] 08:13:54.074 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=236.3ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?,?)) [1761, 1941, 2130, 2324] 08:13:54.074 [debug] QUERY OK source="settings" db=0.0ms idle=236.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 [] 08:13:54.075 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:54.075 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:54.075 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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] 08:13:54.076 [info] Sent 200 in 3ms 08:13:54.314 [info] GET /sources/3/media/10623/edit 08:13:54.314 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "10623", "source_id" => "3"} Pipelines: [:browser] 08:13:54.315 [debug] QUERY OK source="media_items" db=0.1ms idle=240.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" = ?) [10623] 08:13:54.315 [debug] QUERY OK source="settings" db=0.0ms idle=240.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 [] 08:13:54.315 [debug] QUERY OK source="settings" db=0.0ms idle=240.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 [] 08:13:54.316 [debug] QUERY OK source="settings" db=0.0ms idle=240.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 [] 08:13:54.316 [info] Sent 200 in 2ms 08:13:54.814 [info] GET /sources/4/media/2255 08:13:54.814 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2255", "source_id" => "4"} Pipelines: [:browser] 08:13:54.815 [debug] QUERY OK source="media_items" db=0.2ms idle=499.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" = ?) [2255] 08:13:54.815 [debug] QUERY OK source="tasks" db=0.0ms idle=499.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" [2255] 08:13:54.816 [debug] QUERY OK source="sources" db=0.3ms 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] 08:13:54.816 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:13:54.816 [debug] QUERY OK source="settings" db=0.1ms idle=464.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 [] 08:13:54.816 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:13:54.817 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:13:54.817 [info] Sent 200 in 3ms 08:13:55.315 [info] GET /sources/4/media/9831/edit 08:13:55.315 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "9831", "source_id" => "4"} Pipelines: [:browser] 08:13:55.316 [debug] QUERY OK source="media_items" db=0.1ms idle=499.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" = ?) [9831] 08:13:55.316 [debug] QUERY OK source="settings" db=0.1ms idle=499.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 [] 08:13:55.316 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:13:55.316 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:13:55.317 [info] Sent 200 in 1ms 08:13:55.815 [info] GET /sources/3/media/7021/edit 08:13:55.815 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "7021", "source_id" => "3"} Pipelines: [:browser] 08:13:55.815 [debug] QUERY OK source="media_items" db=0.1ms idle=499.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" = ?) [7021] 08:13:55.816 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:13:55.816 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:13:55.816 [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 [] 08:13:55.817 [info] Sent 200 in 1ms 08:14:00.469 [info] {"source":"oban","duration":196,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:14:03.066 [info] {"source":"oban","duration":559,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:14:33.067 [info] {"source":"oban","duration":574,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:14:45.767 [info] GET /sources/3/media/10622/edit 08:14:45.767 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "10622", "source_id" => "3"} Pipelines: [:browser] 08:14:45.767 [debug] QUERY OK source="media_items" db=0.2ms idle=1446.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" = ?) [10622] 08:14:45.768 [debug] QUERY OK source="settings" db=0.2ms idle=1447.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 [] 08:14:45.768 [debug] QUERY OK source="settings" db=0.0ms idle=1349.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 [] 08:14:45.768 [debug] QUERY OK source="settings" db=0.0ms idle=447.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 [] 08:14:45.769 [info] Sent 200 in 2ms 08:14:45.956 [info] GET /sources/4/media/2248/edit 08:14:45.956 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2248", "source_id" => "4"} Pipelines: [:browser] 08:14:45.957 [debug] QUERY OK source="media_items" db=0.2ms idle=537.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" = ?) [2248] 08:14:45.957 [debug] QUERY OK source="settings" db=0.0ms idle=189.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 [] 08:14:45.957 [debug] QUERY OK source="settings" db=0.0ms idle=189.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:14:45.957 [debug] QUERY OK source="settings" db=0.1ms idle=189.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 [] 08:14:45.958 [info] Sent 200 in 2ms 08:14:46.297 [info] GET /sources/3/media/2902/edit 08:14:46.297 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2902", "source_id" => "3"} Pipelines: [:browser] 08:14:46.297 [debug] QUERY OK source="media_items" db=0.1ms idle=528.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" = ?) [2902] 08:14:46.298 [debug] QUERY OK source="settings" db=0.0ms idle=341.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 [] 08:14:46.298 [debug] QUERY OK source="settings" db=0.1ms idle=340.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:14:46.298 [debug] QUERY OK source="settings" db=0.0ms idle=341.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 [] 08:14:46.299 [info] Sent 200 in 1ms 08:14:46.799 [info] GET /sources/4/media/9449/edit 08:14:46.799 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "9449", "source_id" => "4"} Pipelines: [:browser] 08:14:46.800 [debug] QUERY OK source="media_items" db=0.1ms idle=502.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" = ?) [9449] 08:14:46.800 [debug] QUERY OK source="settings" db=0.0ms idle=502.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 [] 08:14:46.800 [debug] QUERY OK source="settings" db=0.0ms idle=502.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 [] 08:14:46.800 [debug] QUERY OK source="settings" db=0.0ms idle=502.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 [] 08:14:46.801 [info] Sent 200 in 1ms 08:14:47.309 [info] GET /sources/4/media/2259 08:14:47.309 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2259", "source_id" => "4"} Pipelines: [:browser] 08:14:47.309 [debug] QUERY OK source="media_items" db=0.2ms idle=889.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" = ?) [2259] 08:14:47.310 [debug] QUERY OK source="tasks" db=0.1ms idle=510.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" [2259] 08:14:47.310 [debug] QUERY OK source="sources" db=0.1ms idle=509.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] 08:14:47.310 [debug] QUERY OK source="settings" db=0.0ms idle=510.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 [] 08:14:47.310 [debug] QUERY OK source="settings" db=0.1ms idle=509.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 [] 08:14:47.311 [debug] QUERY OK source="settings" db=0.2ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:14:47.311 [debug] QUERY OK source="media_profiles" db=0.1ms 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] 08:14:47.312 [info] Sent 200 in 3ms 08:14:57.369 [info] GET /sources/3/media/9870 08:14:57.369 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9870", "source_id" => "3"} Pipelines: [:browser] 08:14:57.369 [debug] QUERY OK source="media_items" db=0.1ms idle=1048.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" = ?) [9870] 08:14:57.370 [debug] QUERY OK source="tasks" db=0.2ms idle=1048.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" [9870] 08:14:57.370 [debug] QUERY OK source="sources" db=0.2ms idle=1048.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" = ?) [3] 08:14:57.370 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=1049.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" = ?) [2186] 08:14:57.370 [debug] QUERY OK source="settings" db=0.0ms idle=937.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 [] 08:14:57.371 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:14:57.371 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:14:57.371 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:14:57.372 [info] Sent 200 in 3ms 08:14:57.561 [info] GET /sources/4/media/2234/edit 08:14:57.561 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2234", "source_id" => "4"} Pipelines: [:browser] 08:14:57.561 [debug] QUERY OK source="media_items" db=0.3ms idle=190.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" = ?) [2234] 08:14:57.562 [debug] QUERY OK source="settings" db=0.1ms idle=190.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 [] 08:14:57.562 [debug] QUERY OK source="settings" db=0.0ms idle=190.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 [] 08:14:57.562 [debug] QUERY OK source="settings" db=0.0ms idle=190.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 [] 08:14:57.563 [info] Sent 200 in 2ms 08:14:57.748 [info] GET /sources/4/media/2257/edit 08:14:57.748 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2257", "source_id" => "4"} Pipelines: [:browser] 08:14:57.748 [debug] QUERY OK source="media_items" db=0.1ms idle=314.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" = ?) [2257] 08:14:57.749 [debug] QUERY OK source="settings" db=0.0ms idle=187.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 [] 08:14:57.749 [debug] QUERY OK source="settings" db=0.0ms idle=187.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 [] 08:14:57.749 [debug] QUERY OK source="settings" db=0.0ms idle=187.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 [] 08:14:57.750 [info] Sent 200 in 1ms 08:14:58.175 [info] GET /sources/4/media/9979 08:14:58.176 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9979", "prevent_download" => "true", "source_id" => "4"} Pipelines: [:browser] 08:14:58.176 [debug] QUERY OK source="media_items" db=0.2ms idle=613.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" = ?) [9979] 08:14:58.176 [debug] QUERY OK source="tasks" db=0.1ms idle=428.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" [9979] 08:14:58.177 [debug] QUERY OK source="sources" db=0.2ms idle=427.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" = ?) [4] 08:14:58.177 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=428.0ms 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" = ?) [2209] 08:14:58.177 [debug] QUERY OK source="settings" db=0.0ms idle=427.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 [] 08:14:58.177 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:14:58.177 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:14:58.178 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:14:58.179 [info] Sent 200 in 3ms 08:14:58.676 [info] GET /sources/3/media/2899 08:14:58.676 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2899", "source_id" => "3"} Pipelines: [:browser] 08:14:58.676 [debug] QUERY OK source="media_items" db=0.1ms 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" = ?) [2899] 08:14:58.677 [debug] QUERY OK source="tasks" db=0.1ms 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" [2899] 08:14:58.677 [debug] QUERY OK source="sources" db=0.1ms idle=499.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" = ?) [3] 08:14:58.677 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:14:58.677 [debug] QUERY OK source="settings" db=0.0ms idle=242.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 [] 08:14:58.678 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:14:58.678 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:14:58.679 [info] Sent 200 in 2ms 08:15:00.470 [info] {"source":"oban","duration":101,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:15:03.068 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:15:21.364 [info] GET /sources/3/media/8548/edit 08:15:21.364 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "8548", "source_id" => "3"} Pipelines: [:browser] 08:15:21.364 [debug] QUERY OK source="media_items" db=0.1ms idle=1042.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" = ?) [8548] 08:15:21.365 [debug] QUERY OK source="settings" db=0.0ms idle=1043.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 [] 08:15:21.365 [debug] QUERY OK source="settings" db=0.0ms idle=1043.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 [] 08:15:21.365 [debug] QUERY OK source="settings" db=0.0ms idle=1043.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 [] 08:15:21.366 [info] Sent 200 in 1ms 08:15:21.551 [info] GET /sources/3/media/5378/edit 08:15:21.551 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "5378", "source_id" => "3"} Pipelines: [:browser] 08:15:21.551 [debug] QUERY OK source="media_items" db=0.1ms idle=186.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" = ?) [5378] 08:15:21.551 [debug] QUERY OK source="settings" db=0.0ms idle=186.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 [] 08:15:21.552 [debug] QUERY OK source="settings" db=0.0ms idle=186.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 [] 08:15:21.552 [debug] QUERY OK source="settings" db=0.0ms idle=186.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 [] 08:15:21.552 [info] Sent 200 in 1ms 08:15:21.842 [info] GET /sources/3/media/8898/edit 08:15:21.842 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "8898", "source_id" => "3"} Pipelines: [:browser] 08:15:21.843 [debug] QUERY OK source="media_items" db=0.2ms idle=376.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" = ?) [8898] 08:15:21.843 [debug] QUERY OK source="settings" db=0.0ms idle=292.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 [] 08:15:21.843 [debug] QUERY OK source="settings" db=0.1ms idle=291.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 [] 08:15:21.844 [debug] QUERY OK source="settings" db=0.0ms idle=292.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 [] 08:15:21.844 [info] Sent 200 in 2ms 08:15:22.340 [info] GET /sources/3/force_redownload 08:15:22.341 [debug] QUERY OK source="settings" db=0.1ms idle=788.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 [] 08:15:22.341 [debug] QUERY OK source="settings" db=0.1ms 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 [] 08:15:22.341 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:15:22.341 [error] #PID<0.406597.0> running PinchflatWeb.Endpoint (connection #PID<0.406596.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /sources/3/force_redownload ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/3/force_redownload (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406596.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_redownload", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 47274}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYdmdvUXc4MDRycWhieWF0N01qSmFBSlJa.5tBA6xKQpFJt-NuRK_KvtRxpJtzgj7RIqHp7bDo6jLU", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYdmdvUXc4MDRycWhieWF0N01qSmFBSlJa.5tBA6xKQpFJt-NuRK_KvtRxpJtzgj7RIqHp7bDo6jLU" }, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.406597.0>, params: %{}, path_info: ["sources", "3", "force_redownload"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYdmdvUXc4MDRycWhieWF0N01qSmFBSlJa.5tBA6xKQpFJt-NuRK_KvtRxpJtzgj7RIqHp7bDo6jLU" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYdmdvUXc4MDRycWhieWF0N01qSmFBSlJa.5tBA6xKQpFJt-NuRK_KvtRxpJtzgj7RIqHp7bDo6jLU"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/3/force_redownload", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIN7jIZ2XItJkvAAIKKh"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406596.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_redownload", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 47274}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYdmdvUXc4MDRycWhieWF0N01qSmFBSlJa.5tBA6xKQpFJt-NuRK_KvtRxpJtzgj7RIqHp7bDo6jLU", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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_redownload (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406596.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/force_redownload", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 47274}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYdmdvUXc4MDRycWhieWF0N01qSmFBSlJa.5tBA6xKQpFJt-NuRK_KvtRxpJtzgj7RIqHp7bDo6jLU", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYdmdvUXc4MDRycWhieWF0N01qSmFBSlJa.5tBA6xKQpFJt-NuRK_KvtRxpJtzgj7RIqHp7bDo6jLU" }, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.406597.0>, params: %{}, path_info: ["sources", "3", "force_redownload"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_f (truncated) 08:15:22.841 [info] GET /sources/4/media/2241 08:15:22.842 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2241", "source_id" => "4"} Pipelines: [:browser] 08:15:22.842 [debug] QUERY OK source="media_items" db=0.1ms idle=998.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" = ?) [2241] 08:15:22.842 [debug] QUERY OK source="tasks" db=0.1ms idle=998.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" [2241] 08:15:22.842 [debug] QUERY OK source="sources" db=0.1ms idle=501.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] 08:15:22.843 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=501.5ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?,?)) [1762, 1955, 2148, 2340] 08:15:22.843 [debug] QUERY OK source="settings" db=0.0ms idle=375.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 [] 08:15:22.843 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:15:22.844 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:15:22.844 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:15:22.845 [info] Sent 200 in 3ms 08:15:33.069 [info] {"source":"oban","duration":625,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:15:48.601 [info] GET /sources/4/media/2234 08:15:48.601 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2234", "source_id" => "4"} Pipelines: [:browser] 08:15:48.601 [debug] QUERY OK source="media_items" db=0.1ms idle=276.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" = ?) [2234] 08:15:48.602 [debug] QUERY OK source="sources" db=0.1ms idle=277.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] 08:15:48.602 [debug] QUERY OK source="tasks" db=0.1ms idle=277.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" [2234] 08:15:48.602 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=277.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" IN (?,?,?,?)) [1747, 1926, 2111, 2308] 08:15:48.602 [debug] QUERY OK source="settings" db=0.0ms idle=104.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 [] 08:15:48.602 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:15:48.603 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:15:48.603 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:15:48.604 [info] Sent 200 in 2ms 08:15:48.800 [info] GET /sources/4/media/2270 08:15:48.800 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2270", "source_id" => "4"} Pipelines: [:browser] 08:15:48.800 [debug] QUERY OK source="media_items" db=0.1ms idle=198.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" = ?) [2270] 08:15:48.801 [debug] QUERY OK source="tasks" db=0.1ms idle=198.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" [2270] 08:15:48.801 [debug] QUERY OK source="sources" db=0.1ms idle=198.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] 08:15:48.801 [debug] QUERY OK source="settings" db=0.1ms idle=198.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 [] 08:15:48.801 [debug] QUERY OK source="settings" db=0.1ms idle=198.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 [] 08:15:48.802 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:15:48.802 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:15:48.803 [info] Sent 200 in 2ms 08:15:48.984 [info] GET /sources/3/media/2905 08:15:48.984 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2905", "source_id" => "3"} Pipelines: [:browser] 08:15:48.984 [debug] QUERY OK source="media_items" db=0.1ms idle=183.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" = ?) [2905] 08:15:48.985 [debug] QUERY OK source="tasks" db=0.0ms idle=183.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" [2905] 08:15:48.985 [debug] QUERY OK source="sources" db=0.1ms idle=183.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" = ?) [3] 08:15:48.985 [debug] QUERY OK source="settings" db=0.0ms idle=183.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 [] 08:15:48.985 [debug] QUERY OK source="settings" db=0.0ms idle=183.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 [] 08:15:48.985 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:15:48.986 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:15:48.986 [info] Sent 200 in 2ms 08:15:49.422 [info] GET /sources/4/media/2249 08:15:49.422 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2249", "source_id" => "4"} Pipelines: [:browser] 08:15:49.422 [debug] QUERY OK source="media_items" db=0.1ms idle=437.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" = ?) [2249] 08:15:49.423 [debug] QUERY OK source="tasks" db=0.1ms idle=437.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" [2249] 08:15:49.423 [debug] QUERY OK source="sources" db=0.4ms idle=437.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] 08:15:49.424 [debug] QUERY OK source="oban_jobs" db=0.3ms idle=437.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" IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)) [1931, 1946, 1960, 1975, 1989, 2004, 2018, 2033, 2047, 2060, 2074, 2087, 2101, 2116, 2135, 2153, 2167, 2184, 2198, 2214, 2227, 2241, 2256, 2270, 2284, 2299, 2313, 2329, 2345] 08:15:49.424 [debug] QUERY OK source="settings" db=0.0ms idle=438.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 [] 08:15:49.424 [debug] QUERY OK source="settings" db=0.0ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:15:49.425 [debug] QUERY OK source="settings" db=0.0ms idle=1.7ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:15:49.425 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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] 08:15:49.426 [info] Sent 200 in 3ms 08:15:49.924 [info] GET /sources/4/media/2245/edit 08:15:49.924 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2245", "source_id" => "4"} Pipelines: [:browser] 08:15:49.924 [debug] QUERY OK source="media_items" db=0.1ms 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" = ?) [2245] 08:15:49.925 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:15:49.925 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:15:49.925 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:15:49.926 [info] Sent 200 in 1ms 08:16:00.145 [info] GET /sources/4/media/2262/edit 08:16:00.146 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2262", "source_id" => "4"} Pipelines: [:browser] 08:16:00.146 [debug] QUERY OK source="media_items" db=0.1ms idle=821.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" = ?) [2262] 08:16:00.146 [debug] QUERY OK source="settings" db=0.0ms idle=822.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 [] 08:16:00.146 [debug] QUERY OK source="settings" db=0.0ms idle=822.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 [] 08:16:00.147 [debug] QUERY OK source="settings" db=0.0ms idle=822.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 [] 08:16:00.147 [info] Sent 200 in 1ms 08:16:00.372 [info] GET /sources/4/media/9979/edit 08:16:00.373 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "9979", "source_id" => "4"} Pipelines: [:browser] 08:16:00.373 [debug] QUERY OK source="media_items" db=0.2ms idle=860.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" = ?) [9979] 08:16:00.373 [debug] QUERY OK source="settings" db=0.1ms idle=227.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 [] 08:16:00.373 [debug] QUERY OK source="settings" db=0.0ms idle=227.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 [] 08:16:00.374 [debug] QUERY OK source="settings" db=0.0ms idle=227.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 [] 08:16:00.374 [info] Sent 200 in 1ms 08:16:00.471 [info] {"source":"oban","duration":282,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:16:00.647 [info] GET /sources/3/media/7085 08:16:00.648 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "7085", "prevent_download" => "true", "source_id" => "3"} Pipelines: [:browser] 08:16:00.648 [debug] QUERY OK source="media_items" db=0.2ms idle=274.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" = ?) [7085] 08:16:00.648 [debug] QUERY OK source="tasks" db=0.1ms idle=274.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" [7085] 08:16:00.649 [debug] QUERY OK source="sources" db=0.2ms idle=274.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" = ?) [3] 08:16:00.649 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=177.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" IN (?,?,?)) [1794, 1977, 2171] 08:16:00.649 [debug] QUERY OK source="settings" db=0.0ms idle=136.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 [] 08:16:00.650 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:16:00.650 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:16:00.650 [debug] QUERY OK source="media_profiles" db=0.1ms 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] 08:16:00.651 [info] Sent 200 in 3ms 08:16:01.151 [info] GET /sources/4/force_redownload 08:16:01.152 [debug] QUERY OK source="settings" db=0.1ms idle=502.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:16:01.152 [debug] QUERY OK source="settings" db=0.0ms idle=502.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 [] 08:16:01.152 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:16:01.152 [error] #PID<0.406638.0> running PinchflatWeb.Endpoint (connection #PID<0.406637.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /sources/4/force_redownload ** (exit) an exception was raised: ** (KeyError) key :flash not found in: %{ reason: %Phoenix.Router.NoRouteError{ plug_status: 404, message: "no route found for GET /sources/4/force_redownload (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406637.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_redownload", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 50600}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYZWhNV2xrSnY0c0JoMHNnWXlKZjhnLXp6.RO6HeYd4ae6HifO5Bt0AIH-Gbp4VozdOLWwspgwpjqo", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYZWhNV2xrSnY0c0JoMHNnWXlKZjhnLXp6.RO6HeYd4ae6HifO5Bt0AIH-Gbp4VozdOLWwspgwpjqo" }, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.406638.0>, params: %{}, path_info: ["sources", "4", "force_redownload"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_fetch => #Function<1.49469887/1 in Plug.Session.fetch_session/1>, :before_send => [#Function<0.106864063/1 in Plug.Telemetry.call/2>], :phoenix_endpoint => PinchflatWeb.Endpoint, :phoenix_router_url => "https://pinchflat.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYZWhNV2xrSnY0c0JoMHNnWXlKZjhnLXp6.RO6HeYd4ae6HifO5Bt0AIH-Gbp4VozdOLWwspgwpjqo" }, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"cookie", "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYZWhNV2xrSnY0c0JoMHNnWXlKZjhnLXp6.RO6HeYd4ae6HifO5Bt0AIH-Gbp4VozdOLWwspgwpjqo"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/4/force_redownload", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIN7lY_CNFtXUgAAFREi"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406637.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_redownload", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 50600}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYZWhNV2xrSnY0c0JoMHNnWXlKZjhnLXp6.RO6HeYd4ae6HifO5Bt0AIH-Gbp4VozdOLWwspgwpjqo", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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_redownload (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406637.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/4/force_redownload", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 50600}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "cookie" => "_pinchflat_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYZWhNV2xrSnY0c0JoMHNnWXlKZjhnLXp6.RO6HeYd4ae6HifO5Bt0AIH-Gbp4VozdOLWwspgwpjqo", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, method: "GET", body_length: 0, path_info: :undefined, qs: "", streamid: 1, has_body: false, host_info: :undefined }}, assigns: %{}, body_params: %{}, cookies: %{ "_pinchflat_key" => "SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYZWhNV2xrSnY0c0JoMHNnWXlKZjhnLXp6.RO6HeYd4ae6HifO5Bt0AIH-Gbp4VozdOLWwspgwpjqo" }, halted: false, host: "pinchflat.moozuk.net", method: "GET", owner: #PID<0.406638.0>, params: %{}, path_info: ["sources", "4", "force_redownload"], path_params: %{}, port: 80, private: %{ PinchflatWeb.Router => [], :plug_session_f (truncated) 08:16:01.651 [info] GET /sources/3/media/10168 08:16:01.651 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10168", "prevent_download" => "true", "source_id" => "3"} Pipelines: [:browser] 08:16:01.651 [debug] QUERY OK source="media_items" db=0.1ms idle=1001.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" = ?) [10168] 08:16:01.652 [debug] QUERY OK source="tasks" db=0.1ms idle=1001.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" [10168] 08:16:01.652 [debug] QUERY OK source="sources" db=0.2ms idle=500.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" = ?) [3] 08:16:01.652 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=500.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" = ?) [2243] 08:16:01.652 [debug] QUERY OK source="settings" db=0.1ms 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 [] 08:16:01.653 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:16:01.653 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:16:01.653 [debug] QUERY OK source="media_profiles" db=0.1ms 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] 08:16:01.654 [info] Sent 200 in 3ms 08:16:03.071 [info] {"source":"oban","duration":747,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:16:25.667 [info] GET /sources/4/media/10281 08:16:25.667 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10281", "prevent_download" => "true", "source_id" => "4"} Pipelines: [:browser] 08:16:25.668 [debug] QUERY OK source="media_items" db=0.1ms idle=1126.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" = ?) [10281] 08:16:25.669 [debug] QUERY OK source="tasks" db=0.2ms idle=343.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" [10281] 08:16:25.669 [debug] QUERY OK source="sources" db=0.3ms idle=343.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] 08:16:25.669 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=343.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" IN (?,?)) [2265, 2292] 08:16:25.669 [debug] QUERY OK source="settings" db=0.0ms idle=127.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 [] 08:16:25.669 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:16:25.670 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:16:25.670 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:16:25.671 [info] Sent 200 in 3ms 08:16:26.013 [info] GET /sources/4/media/10433 08:16:26.013 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10433", "prevent_download" => "true", "source_id" => "4"} Pipelines: [:browser] 08:16:26.014 [debug] QUERY OK source="media_items" db=0.3ms idle=344.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" = ?) [10433] 08:16:26.014 [debug] QUERY OK source="tasks" db=0.1ms idle=344.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" [10433] 08:16:26.014 [debug] QUERY OK source="sources" db=0.2ms idle=344.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" = ?) [4] 08:16:26.015 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=344.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 (?,?)) [2294, 2322] 08:16:26.015 [debug] QUERY OK source="settings" db=0.0ms idle=344.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 [] 08:16:26.015 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:16:26.015 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:16:26.016 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:16:26.017 [info] Sent 200 in 3ms 08:16:26.193 [info] GET /sources/3/media/9564/edit 08:16:26.193 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "9564", "source_id" => "3"} Pipelines: [:browser] 08:16:26.194 [debug] QUERY OK source="media_items" db=0.2ms idle=179.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" = ?) [9564] 08:16:26.194 [debug] QUERY OK source="settings" db=0.1ms idle=179.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 [] 08:16:26.195 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:16:26.195 [debug] QUERY OK source="settings" db=0.0ms idle=179.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 [] 08:16:26.195 [info] Sent 200 in 2ms 08:16:26.668 [info] GET /sources/4/media/2257 08:16:26.668 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2257", "source_id" => "4"} Pipelines: [:browser] 08:16:26.668 [debug] QUERY OK source="media_items" db=0.1ms idle=474.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" = ?) [2257] 08:16:26.669 [debug] QUERY OK source="tasks" db=0.0ms idle=474.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" [2257] 08:16:26.669 [debug] QUERY OK source="sources" db=0.1ms idle=473.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] 08:16:26.669 [debug] QUERY OK source="settings" db=0.0ms idle=473.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 [] 08:16:26.669 [debug] QUERY OK source="settings" db=0.1ms idle=125.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 [] 08:16:26.670 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:16:26.670 [debug] QUERY OK source="media_profiles" db=0.1ms 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] 08:16:26.671 [info] Sent 200 in 3ms 08:16:27.170 [info] GET /sources/4/media/2243/edit 08:16:27.170 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2243", "source_id" => "4"} Pipelines: [:browser] 08:16:27.170 [debug] QUERY OK source="media_items" db=0.2ms idle=501.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" = ?) [2243] 08:16:27.171 [debug] QUERY OK source="settings" db=0.1ms idle=501.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 [] 08:16:27.171 [debug] QUERY OK source="settings" db=0.0ms idle=501.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 [] 08:16:27.171 [debug] QUERY OK source="settings" db=0.0ms idle=501.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 [] 08:16:27.172 [info] Sent 200 in 2ms 08:16:33.073 [info] {"source":"oban","duration":513,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:00.472 [info] {"source":"oban","duration":193,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:17:03.074 [info] {"source":"oban","duration":572,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:06.477 [info] GET /sources/3/media/4850 08:17:06.477 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "4850", "source_id" => "3"} Pipelines: [:browser] 08:17:06.477 [debug] QUERY OK source="media_items" db=0.3ms idle=887.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" = ?) [4850] 08:17:06.478 [debug] QUERY OK source="sources" db=0.2ms idle=152.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" = ?) [3] 08:17:06.478 [debug] QUERY OK source="tasks" db=0.2ms idle=152.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" [4850] 08:17:06.478 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=153.3ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)) [1934, 1948, 1963, 1978, 1992, 2006, 2021, 2035, 2049, 2062, 2076, 2089, 2104, 2120, 2138, 2156, 2172, 2187, 2200, 2216, 2230, 2245, 2258, 2273, 2286, 2301, 2316, 2333, 2347] 08:17:06.479 [debug] QUERY OK source="settings" db=0.0ms idle=154.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:06.479 [debug] QUERY OK source="settings" db=0.1ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:06.479 [debug] QUERY OK source="settings" db=0.2ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:06.480 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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] 08:17:06.481 [info] Sent 200 in 3ms 08:17:06.659 [info] GET /sources/4/media/2264/edit 08:17:06.659 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2264", "source_id" => "4"} Pipelines: [:browser] 08:17:06.659 [debug] QUERY OK source="media_items" db=0.1ms idle=180.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" = ?) [2264] 08:17:06.660 [debug] QUERY OK source="settings" db=0.1ms idle=180.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 [] 08:17:06.660 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:17:06.660 [debug] QUERY OK source="settings" db=0.0ms idle=180.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 [] 08:17:06.661 [info] Sent 200 in 1ms 08:17:06.998 [info] GET /sources/3/media/2901 08:17:06.998 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2901", "source_id" => "3"} Pipelines: [:browser] 08:17:06.998 [debug] QUERY OK source="media_items" db=0.1ms idle=406.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" = ?) [2901] 08:17:06.999 [debug] QUERY OK source="tasks" db=0.0ms idle=339.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" [2901] 08:17:06.999 [debug] QUERY OK source="sources" db=0.1ms idle=338.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" = ?) [3] 08:17:06.999 [debug] QUERY OK source="settings" db=0.0ms idle=339.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 [] 08:17:06.999 [debug] QUERY OK source="settings" db=0.0ms idle=338.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 [] 08:17:07.000 [debug] QUERY OK source="settings" db=0.2ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:07.000 [debug] QUERY OK source="media_profiles" db=0.1ms 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] 08:17:07.001 [info] Sent 200 in 2ms 08:17:07.498 [info] GET /sources/4/media/9153/edit 08:17:07.498 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "9153", "source_id" => "4"} Pipelines: [:browser] 08:17:07.498 [debug] QUERY OK source="media_items" db=0.2ms idle=499.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" = ?) [9153] 08:17:07.499 [debug] QUERY OK source="settings" db=0.1ms 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 [] 08:17:07.499 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:17:07.499 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:17:07.500 [info] Sent 200 in 2ms 08:17:07.997 [info] GET /sources/3/media/9564 08:17:07.998 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9564", "source_id" => "3"} Pipelines: [:browser] 08:17:07.998 [debug] QUERY OK source="media_items" db=0.1ms idle=499.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" = ?) [9564] 08:17:07.998 [debug] QUERY OK source="tasks" db=0.1ms 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" [9564] 08:17:07.999 [debug] QUERY OK source="sources" db=0.2ms idle=499.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" = ?) [3] 08:17:07.999 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=499.5ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?,?,?)) [2118, 2123, 2137, 2141, 2155] 08:17:07.999 [debug] QUERY OK source="settings" db=0.0ms idle=407.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 [] 08:17:07.999 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:08.000 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:08.000 [debug] QUERY OK source="media_profiles" db=0.1ms 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] 08:17:08.001 [info] Sent 200 in 3ms 08:17:12.497 [info] GET /sources/4/media/2264 08:17:12.498 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2264", "source_id" => "4"} Pipelines: [:browser] 08:17:12.498 [debug] QUERY OK source="media_items" db=0.1ms idle=1172.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" = ?) [2264] 08:17:12.498 [debug] QUERY OK source="tasks" db=0.2ms idle=1173.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" [2264] 08:17:12.498 [debug] QUERY OK source="sources" db=0.3ms idle=1173.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] 08:17:12.499 [debug] QUERY OK source="settings" db=0.1ms idle=1173.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 [] 08:17:12.499 [debug] QUERY OK source="settings" db=0.0ms idle=901.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 [] 08:17:12.499 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:12.500 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:17:12.500 [info] Sent 200 in 2ms 08:17:12.842 [info] GET /sources/4/media/2249/edit 08:17:12.842 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2249", "source_id" => "4"} Pipelines: [:browser] 08:17:12.843 [debug] QUERY OK source="media_items" db=0.1ms idle=343.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" = ?) [2249] 08:17:12.843 [debug] QUERY OK source="settings" db=0.1ms idle=344.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 [] 08:17:12.843 [debug] QUERY OK source="settings" db=0.0ms idle=344.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:12.844 [debug] QUERY OK source="settings" db=0.0ms idle=344.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 [] 08:17:12.844 [info] Sent 200 in 2ms 08:17:13.020 [info] GET /sources/3/media/2903 08:17:13.020 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2903", "source_id" => "3"} Pipelines: [:browser] 08:17:13.020 [debug] QUERY OK source="media_items" db=0.2ms idle=422.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" = ?) [2903] 08:17:13.021 [debug] QUERY OK source="sources" db=0.1ms idle=177.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" = ?) [3] 08:17:13.021 [debug] QUERY OK source="tasks" db=0.1ms idle=177.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" [2903] 08:17:13.021 [debug] QUERY OK source="settings" db=0.1ms idle=177.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 [] 08:17:13.021 [debug] QUERY OK source="settings" db=0.0ms idle=177.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:13.022 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:13.022 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:17:13.023 [info] Sent 200 in 2ms 08:17:13.502 [info] GET /sources/4/media/10433/edit 08:17:13.502 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "10433", "source_id" => "4"} Pipelines: [:browser] 08:17:13.503 [debug] QUERY OK source="media_items" db=0.3ms idle=481.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" = ?) [10433] 08:17:13.503 [debug] QUERY OK source="settings" db=0.1ms idle=481.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 [] 08:17:13.503 [debug] QUERY OK source="settings" db=0.0ms idle=481.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 [] 08:17:13.503 [debug] QUERY OK source="settings" db=0.0ms idle=481.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 [] 08:17:13.504 [info] Sent 200 in 1ms 08:17:14.001 [info] GET /sources/4/media/9449 08:17:14.001 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9449", "source_id" => "4"} Pipelines: [:browser] 08:17:14.002 [debug] QUERY OK source="media_items" db=0.1ms idle=498.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" = ?) [9449] 08:17:14.002 [debug] QUERY OK source="sources" db=0.1ms idle=498.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] 08:17:14.002 [debug] QUERY OK source="tasks" db=0.1ms 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" [9449] 08:17:14.002 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=498.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 (?,?,?)) [2096, 2127, 2145] 08:17:14.003 [debug] QUERY OK source="settings" db=0.0ms idle=403.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 [] 08:17:14.003 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:14.003 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:17:14.003 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:17:14.004 [info] Sent 200 in 3ms 08:17:33.075 [info] {"source":"oban","duration":547,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:17:59.470 [info] GET /sources/3/media/9042 08:17:59.470 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9042", "prevent_download" => "true", "source_id" => "3"} Pipelines: [:browser] 08:17:59.471 [debug] QUERY OK source="media_items" db=0.2ms idle=1145.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" = ?) [9042] 08:17:59.471 [debug] QUERY OK source="tasks" db=0.1ms idle=823.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" [9042] 08:17:59.471 [debug] QUERY OK source="sources" db=0.2ms idle=146.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" = ?) [3] 08:17:59.472 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=147.0ms 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 (?,?)) [2020, 2229] 08:17:59.472 [debug] QUERY OK source="settings" db=0.0ms idle=147.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 [] 08:17:59.472 [debug] QUERY OK source="settings" db=0.1ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:59.473 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:17:59.473 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:17:59.474 [info] Sent 200 in 3ms 08:17:59.648 [info] GET /sources/3/media/9488/edit 08:17:59.649 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "9488", "source_id" => "3"} Pipelines: [:browser] 08:17:59.649 [debug] QUERY OK source="media_items" db=0.1ms idle=176.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" = ?) [9488] 08:17:59.650 [debug] QUERY OK source="settings" db=0.1ms idle=177.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 [] 08:17:59.650 [debug] QUERY OK source="settings" db=0.0ms idle=177.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 [] 08:17:59.650 [debug] QUERY OK source="settings" db=0.1ms idle=177.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 [] 08:17:59.651 [info] Sent 200 in 2ms 08:17:59.947 [info] GET /sources/3/media/2900/edit 08:17:59.947 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2900", "source_id" => "3"} Pipelines: [:browser] 08:17:59.948 [debug] QUERY OK source="media_items" db=0.1ms idle=298.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" = ?) [2900] 08:17:59.948 [debug] QUERY OK source="settings" db=0.1ms idle=298.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 [] 08:17:59.948 [debug] QUERY OK source="settings" db=0.0ms idle=298.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 [] 08:17:59.949 [debug] QUERY OK source="settings" db=0.0ms idle=298.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 [] 08:17:59.949 [info] Sent 200 in 1ms 08:18:00.451 [info] GET /sources/4/media/2255/edit 08:18:00.451 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2255", "source_id" => "4"} Pipelines: [:browser] 08:18:00.451 [debug] QUERY OK source="media_items" db=0.1ms idle=800.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" = ?) [2255] 08:18:00.452 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:18:00.452 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:18:00.452 [debug] QUERY OK source="settings" db=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 [] 08:18:00.453 [info] Sent 200 in 2ms 08:18:00.473 [info] {"source":"oban","duration":201,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:18:00.951 [info] GET /sources/3/media/2898 08:18:00.951 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2898", "source_id" => "3"} Pipelines: [:browser] 08:18:00.952 [debug] QUERY OK source="media_items" db=0.1ms idle=499.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" = ?) [2898] 08:18:00.952 [debug] QUERY OK source="tasks" db=0.1ms idle=500.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" [2898] 08:18:00.952 [debug] QUERY OK source="sources" db=0.1ms idle=499.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" = ?) [3] 08:18:00.952 [debug] QUERY OK source="settings" db=0.0ms idle=479.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 [] 08:18:00.952 [debug] QUERY OK source="settings" db=0.0ms idle=301.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 [] 08:18:00.953 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:18:00.953 [debug] QUERY OK source="media_profiles" db=0.0ms idle=0.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] 08:18:00.954 [info] Sent 200 in 2ms 08:18:03.077 [info] {"source":"oban","duration":567,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:18:33.078 [info] {"source":"oban","duration":604,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:18:35.155 [info] GET /sources/4/media/2268 08:18:35.155 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2268", "source_id" => "4"} Pipelines: [:browser] 08:18:35.155 [debug] QUERY OK source="media_items" db=0.3ms idle=830.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" = ?) [2268] 08:18:35.156 [debug] QUERY OK source="tasks" db=0.0ms idle=830.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" [2268] 08:18:35.156 [debug] QUERY OK source="sources" db=0.1ms idle=830.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" = ?) [4] 08:18:35.156 [debug] QUERY OK source="settings" db=0.0ms idle=831.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 [] 08:18:35.156 [debug] QUERY OK source="settings" db=0.0ms idle=463.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 [] 08:18:35.156 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:18:35.157 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:18:35.157 [info] Sent 200 in 2ms 08:18:35.348 [info] GET /sources/3/media/2897 08:18:35.349 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2897", "source_id" => "3"} Pipelines: [:browser] 08:18:35.349 [debug] QUERY OK source="media_items" db=0.2ms idle=193.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" = ?) [2897] 08:18:35.350 [debug] QUERY OK source="tasks" db=0.2ms idle=193.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" [2897] 08:18:35.350 [debug] QUERY OK source="sources" db=0.3ms idle=193.0ms SELECT s0."id", s0."enabled", s0."uuid", s0."custom_name", s0."description", s0."collection_name", s0."collection_id", s0."collection_type", s0."index_frequency_minutes", s0."fast_index", s0."cookie_behaviour", s0."download_media", s0."last_indexed_at", s0."download_cutoff_date", s0."retention_period_days", s0."original_url", s0."title_filter_regex", s0."output_path_template_override", s0."min_duration_seconds", s0."max_duration_seconds", s0."series_directory", s0."nfo_filepath", s0."poster_filepath", s0."fanart_filepath", s0."banner_filepath", s0."marked_for_deletion_at", s0."media_profile_id", s0."inserted_at", s0."updated_at", s0."id" FROM "sources" AS s0 WHERE (s0."id" = ?) [3] 08:18:35.350 [debug] QUERY OK source="settings" db=0.0ms idle=193.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 [] 08:18:35.350 [debug] QUERY OK source="settings" db=0.0ms idle=193.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 [] 08:18:35.350 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:18:35.351 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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] 08:18:35.351 [info] Sent 200 in 2ms 08:18:35.742 [info] GET /sources/3/media/7085/edit 08:18:35.742 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "7085", "source_id" => "3"} Pipelines: [:browser] 08:18:35.743 [debug] QUERY OK source="media_items" db=0.1ms idle=392.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" = ?) [7085] 08:18:35.743 [debug] QUERY OK source="settings" db=0.1ms idle=392.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 [] 08:18:35.743 [debug] QUERY OK source="settings" db=0.1ms idle=392.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 [] 08:18:35.743 [debug] QUERY OK source="settings" db=0.0ms idle=392.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 [] 08:18:35.744 [info] Sent 200 in 2ms 08:18:36.243 [info] GET /sources/3/media/10322 08:18:36.243 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10322", "prevent_download" => "true", "source_id" => "3"} Pipelines: [:browser] 08:18:36.243 [debug] QUERY OK source="media_items" db=0.1ms idle=550.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" = ?) [10322] 08:18:36.244 [debug] QUERY OK source="tasks" db=0.1ms idle=501.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" [10322] 08:18:36.244 [debug] QUERY OK source="sources" db=0.2ms 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" = ?) [3] 08:18:36.244 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=500.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" = ?) [2272] 08:18:36.244 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:18:36.245 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:18:36.245 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:18:36.245 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:18:36.246 [info] Sent 200 in 3ms 08:18:36.744 [info] GET /sources/4/media/2268/edit 08:18:36.744 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2268", "source_id" => "4"} Pipelines: [:browser] 08:18:36.745 [debug] QUERY OK source="media_items" db=0.1ms 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" = ?) [2268] 08:18:36.745 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:18:36.745 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:18:36.746 [debug] QUERY OK source="settings" db=0.1ms idle=500.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 [] 08:18:36.746 [info] Sent 200 in 2ms 08:19:00.474 [info] {"source":"oban","duration":178,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:19:03.079 [info] {"source":"oban","duration":530,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:19:22.028 [info] GET /sources/4/media/2248 08:19:22.029 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2248", "source_id" => "4"} Pipelines: [:browser] 08:19:22.029 [debug] QUERY OK source="media_items" db=0.1ms idle=1703.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" = ?) [2248] 08:19:22.029 [debug] QUERY OK source="tasks" db=0.2ms idle=1703.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" [2248] 08:19:22.030 [debug] QUERY OK source="sources" db=0.3ms idle=1703.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" = ?) [4] 08:19:22.030 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=1285.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 (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)) [1930, 1945, 1959, 1974, 1988, 2003, 2017, 2032, 2046, 2059, 2073, 2086, 2100, 2115, 2134, 2152, 2166, 2183, 2197, 2213, 2226, 2240, 2255, 2269, 2283, 2298, 2312, 2328, 2344] 08:19:22.031 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:19:22.031 [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 [] 08:19:22.031 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:22.031 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:19:22.032 [info] Sent 200 in 3ms 08:19:22.208 [info] GET /sources/3/media/2902 08:19:22.208 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2902", "source_id" => "3"} Pipelines: [:browser] 08:19:22.208 [debug] QUERY OK source="media_items" db=0.1ms idle=178.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" = ?) [2902] 08:19:22.209 [debug] QUERY OK source="tasks" db=0.1ms idle=177.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" [2902] 08:19:22.209 [debug] QUERY OK source="sources" db=0.1ms idle=177.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" = ?) [3] 08:19:22.209 [debug] QUERY OK source="settings" db=0.0ms idle=177.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 [] 08:19:22.209 [debug] QUERY OK source="settings" db=0.0ms idle=177.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 [] 08:19:22.210 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:22.210 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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] 08:19:22.211 [info] Sent 200 in 2ms 08:19:22.386 [info] GET /sources/4/media/2262 08:19:22.386 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2262", "source_id" => "4"} Pipelines: [:browser] 08:19:22.387 [debug] QUERY OK source="media_items" db=0.1ms idle=177.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" = ?) [2262] 08:19:22.387 [debug] QUERY OK source="tasks" db=0.0ms idle=177.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" [2262] 08:19:22.387 [debug] QUERY OK source="sources" db=0.1ms idle=177.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] 08:19:22.388 [debug] QUERY OK source="settings" db=0.1ms idle=177.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 [] 08:19:22.388 [debug] QUERY OK source="settings" db=0.0ms idle=177.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 [] 08:19:22.388 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:22.388 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:19:22.389 [info] Sent 200 in 2ms 08:19:22.812 [info] GET /sources/4/media/2245 08:19:22.812 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2245", "source_id" => "4"} Pipelines: [:browser] 08:19:22.812 [debug] QUERY OK source="media_items" db=0.1ms idle=424.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" = ?) [2245] 08:19:22.812 [debug] QUERY OK source="sources" db=0.1ms idle=424.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" = ?) [4] 08:19:22.812 [debug] QUERY OK source="tasks" db=0.1ms idle=424.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" [2245] 08:19:22.813 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=424.3ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)) [1928, 1943, 1957, 1972, 1986, 2001, 2015, 2030, 2044, 2057, 2071, 2084, 2098, 2113, 2132, 2150, 2164, 2181, 2195, 2211, 2224, 2238, 2253, 2267, 2281, 2296, 2310, 2326, 2342] 08:19:22.813 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:19:22.814 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:22.814 [debug] QUERY OK source="settings" db=0.0ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:22.814 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:19:22.815 [info] Sent 200 in 3ms 08:19:23.313 [info] GET /sources/3/media/10169/edit 08:19:23.313 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "10169", "source_id" => "3"} Pipelines: [:browser] 08:19:23.313 [debug] QUERY OK source="media_items" db=0.2ms 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" = ?) [10169] 08:19:23.314 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:19:23.314 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:19:23.314 [debug] QUERY OK source="settings" db=0.1ms idle=500.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 [] 08:19:23.315 [info] Sent 200 in 1ms 08:19:33.080 [info] {"source":"oban","duration":811,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:19:38.156 [info] GET /sources/3/media/5378 08:19:38.156 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "5378", "source_id" => "3"} Pipelines: [:browser] 08:19:38.157 [debug] QUERY OK source="media_items" db=0.2ms idle=1830.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" = ?) [5378] 08:19:38.157 [debug] QUERY OK source="tasks" db=0.1ms idle=1831.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" [5378] 08:19:38.157 [debug] QUERY OK source="sources" db=0.1ms idle=1831.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" = ?) [3] 08:19:38.158 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=1394.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 (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)) [1935, 1949, 1964, 1979, 1993, 2007, 2022, 2036, 2050, 2063, 2077, 2090, 2105, 2121, 2139, 2157, 2173, 2188, 2201, 2217, 2231, 2246, 2259, 2274, 2287, 2302, 2317, 2334, 2348] 08:19:38.158 [debug] QUERY OK source="settings" db=0.0ms idle=393.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 [] 08:19:38.158 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:38.158 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:38.159 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:19:38.160 [info] Sent 200 in 3ms 08:19:38.341 [info] GET /sources/3/media/10168/edit 08:19:38.341 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "10168", "source_id" => "3"} Pipelines: [:browser] 08:19:38.341 [debug] QUERY OK source="media_items" db=0.1ms idle=183.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" = ?) [10168] 08:19:38.341 [debug] QUERY OK source="settings" db=0.0ms idle=183.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 [] 08:19:38.341 [debug] QUERY OK source="settings" db=0.0ms idle=183.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 [] 08:19:38.342 [debug] QUERY OK source="settings" db=0.0ms idle=183.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 [] 08:19:38.342 [info] Sent 200 in 1ms 08:19:38.741 [info] GET /sources/4/media/2243 08:19:38.742 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2243", "source_id" => "4"} Pipelines: [:browser] 08:19:38.742 [debug] QUERY OK source="media_items" db=0.1ms idle=582.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" = ?) [2243] 08:19:38.743 [debug] QUERY OK source="sources" db=0.2ms idle=401.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" = ?) [4] 08:19:38.743 [debug] QUERY OK source="tasks" db=0.3ms idle=401.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" [2243] 08:19:38.743 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=401.3ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)) [1927, 1942, 1956, 1971, 1985, 2000, 2014, 2029, 2043, 2056, 2070, 2083, 2097, 2112, 2131, 2149, 2163, 2180, 2194, 2210, 2223, 2237, 2252, 2266, 2280, 2295, 2309, 2325, 2341] 08:19:38.743 [debug] QUERY OK source="settings" db=0.0ms idle=401.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 [] 08:19:38.744 [debug] QUERY OK source="settings" db=0.0ms idle=1.4ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:38.744 [debug] QUERY OK source="settings" db=0.0ms idle=1.2ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:38.744 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:19:38.745 [info] Sent 200 in 3ms 08:19:39.242 [info] GET /sources/4/media/7975 08:19:39.242 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "7975", "source_id" => "4"} Pipelines: [:browser] 08:19:39.242 [debug] QUERY OK source="media_items" db=0.2ms idle=498.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" = ?) [7975] 08:19:39.243 [debug] QUERY OK source="tasks" db=0.0ms idle=499.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" [7975] 08:19:39.243 [debug] QUERY OK source="sources" db=0.1ms idle=498.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] 08:19:39.243 [debug] QUERY OK source="settings" db=0.0ms idle=498.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 [] 08:19:39.243 [debug] QUERY OK source="settings" db=0.0ms idle=478.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 [] 08:19:39.243 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:39.244 [debug] QUERY OK source="media_profiles" db=0.0ms idle=0.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] 08:19:39.245 [info] Sent 200 in 2ms 08:19:39.742 [info] GET /sources/3/media/2896 08:19:39.743 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2896", "source_id" => "3"} Pipelines: [:browser] 08:19:39.743 [debug] QUERY OK source="media_items" db=0.2ms idle=499.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" = ?) [2896] 08:19:39.743 [debug] QUERY OK source="sources" db=0.2ms idle=500.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" = ?) [3] 08:19:39.744 [debug] QUERY OK source="tasks" db=0.4ms idle=500.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" [2896] 08:19:39.744 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:19:39.744 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:19:39.744 [debug] QUERY OK source="settings" db=0.1ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:19:39.745 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:19:39.745 [info] Sent 200 in 2ms 08:20:00.475 [info] {"source":"oban","duration":257,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:20:03.082 [info] {"source":"oban","duration":479,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:20:03.886 [info] GET /sources/4/media/10281/edit 08:20:03.886 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "10281", "source_id" => "4"} Pipelines: [:browser] 08:20:03.886 [debug] QUERY OK source="media_items" db=0.1ms idle=1092.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" = ?) [10281] 08:20:03.886 [debug] QUERY OK source="settings" db=0.0ms idle=804.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 [] 08:20:03.886 [debug] QUERY OK source="settings" db=0.0ms idle=560.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 [] 08:20:03.887 [debug] QUERY OK source="settings" db=0.0ms idle=561.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 [] 08:20:03.887 [info] Sent 200 in 1ms 08:20:04.078 [info] GET /sources/4/media/7975/edit 08:20:04.078 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "7975", "source_id" => "4"} Pipelines: [:browser] 08:20:04.078 [debug] QUERY OK source="media_items" db=0.1ms idle=284.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" = ?) [7975] 08:20:04.079 [debug] QUERY OK source="settings" db=0.0ms idle=192.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 [] 08:20:04.079 [debug] QUERY OK source="settings" db=0.0ms idle=192.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 [] 08:20:04.079 [debug] QUERY OK source="settings" db=0.1ms idle=192.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 [] 08:20:04.080 [info] Sent 200 in 1ms 08:20:04.378 [info] GET /sources/3/media/2900 08:20:04.378 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2900", "source_id" => "3"} Pipelines: [:browser] 08:20:04.378 [debug] QUERY OK source="media_items" db=0.1ms idle=491.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" = ?) [2900] 08:20:04.379 [debug] QUERY OK source="tasks" db=0.1ms idle=299.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" [2900] 08:20:04.379 [debug] QUERY OK source="sources" db=0.1ms idle=299.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" = ?) [3] 08:20:04.379 [debug] QUERY OK source="settings" db=0.1ms idle=299.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 [] 08:20:04.379 [debug] QUERY OK source="settings" db=0.0ms idle=299.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 [] 08:20:04.379 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:04.380 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:20:04.380 [info] Sent 200 in 2ms 08:20:04.878 [info] GET /sources/4/media/9831 08:20:04.878 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9831", "source_id" => "4"} Pipelines: [:browser] 08:20:04.879 [debug] QUERY OK source="media_items" db=0.1ms idle=499.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" = ?) [9831] 08:20:04.879 [debug] QUERY OK source="tasks" db=0.1ms idle=499.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" [9831] 08:20:04.879 [debug] QUERY OK source="sources" db=0.1ms idle=499.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" = ?) [4] 08:20:04.880 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=499.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" IN (?,?)) [2179, 2207] 08:20:04.880 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:20:04.880 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:04.880 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:20:04.880 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:20:04.881 [info] Sent 200 in 3ms 08:20:05.379 [info] GET /sources/3/media/8548 08:20:05.379 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "8548", "source_id" => "3"} Pipelines: [:browser] 08:20:05.380 [debug] QUERY OK source="media_items" db=0.2ms idle=499.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" = ?) [8548] 08:20:05.380 [debug] QUERY OK source="tasks" db=0.1ms idle=500.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" [8548] 08:20:05.380 [debug] QUERY OK source="sources" db=0.1ms idle=500.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" = ?) [3] 08:20:05.380 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:20:05.381 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:20:05.381 [debug] QUERY OK source="settings" db=0.1ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:05.381 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:20:05.382 [info] Sent 200 in 3ms 08:20:33.083 [info] {"source":"oban","duration":823,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:20:51.290 [info] GET /sources/3/media/10622 08:20:51.290 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10622", "prevent_download" => "true", "source_id" => "3"} Pipelines: [:browser] 08:20:51.291 [debug] QUERY OK source="media_items" db=0.1ms idle=1964.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" = ?) [10622] 08:20:51.291 [debug] QUERY OK source="tasks" db=0.1ms idle=1440.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" [10622] 08:20:51.291 [debug] QUERY OK source="sources" db=0.2ms idle=1965.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" = ?) [3] 08:20:51.291 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=965.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" = ?) [2331] 08:20:51.292 [debug] QUERY OK source="settings" db=0.0ms idle=440.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 [] 08:20:51.292 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:51.292 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:51.292 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:20:51.293 [info] Sent 200 in 3ms 08:20:51.482 [info] GET /sources/4/media/9153 08:20:51.483 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9153", "source_id" => "4"} Pipelines: [:browser] 08:20:51.483 [debug] QUERY OK source="media_items" db=0.1ms idle=191.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" = ?) [9153] 08:20:51.483 [debug] QUERY OK source="tasks" db=0.1ms idle=191.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" [9153] 08:20:51.483 [debug] QUERY OK source="sources" db=0.2ms idle=191.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] 08:20:51.484 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=191.5ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?)) [2042, 2068] 08:20:51.484 [debug] QUERY OK source="settings" db=0.0ms idle=191.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 [] 08:20:51.484 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:51.484 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:20:51.485 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:20:51.485 [info] Sent 200 in 2ms 08:20:51.934 [info] GET /sources/3/media/7021 08:20:51.934 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "7021", "source_id" => "3"} Pipelines: [:browser] 08:20:51.934 [debug] QUERY OK source="media_items" db=0.2ms idle=450.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" = ?) [7021] 08:20:51.935 [debug] QUERY OK source="tasks" db=0.2ms idle=450.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" [7021] 08:20:51.935 [debug] QUERY OK source="sources" db=0.3ms idle=450.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" = ?) [3] 08:20:51.935 [debug] QUERY OK source="oban_jobs" db=0.2ms idle=450.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" IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)) [1936, 1950, 1965, 1980, 1994, 2008, 2023, 2037, 2051, 2064, 2078, 2091, 2106, 2122, 2140, 2158, 2174, 2189, 2202, 2218, 2232, 2247, 2260, 2275, 2288, 2303, 2318, 2335, 2349] 08:20:51.936 [debug] QUERY OK source="settings" db=0.0ms idle=82.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 [] 08:20:51.936 [debug] QUERY OK source="settings" db=0.0ms idle=1.5ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:51.936 [debug] QUERY OK source="settings" db=0.1ms idle=1.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:51.937 [debug] QUERY OK source="media_profiles" db=0.1ms idle=1.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] 08:20:51.938 [info] Sent 200 in 3ms 08:20:52.435 [info] GET /sources/4/media/2266/edit 08:20:52.435 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "2266", "source_id" => "4"} Pipelines: [:browser] 08:20:52.436 [debug] QUERY OK source="media_items" db=0.1ms idle=499.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" = ?) [2266] 08:20:52.436 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:20:52.436 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:20:52.436 [debug] QUERY OK source="settings" db=0.0ms idle=499.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 [] 08:20:52.437 [info] Sent 200 in 1ms 08:20:52.936 [info] GET /sources/3/media/9791 08:20:52.936 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9791", "source_id" => "3"} Pipelines: [:browser] 08:20:52.936 [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" = ?) [9791] 08:20:52.937 [debug] QUERY OK source="sources" db=0.1ms idle=500.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" = ?) [3] 08:20:52.937 [debug] QUERY OK source="tasks" db=0.1ms idle=500.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" [9791] 08:20:52.937 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=500.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" = ?) [2170] 08:20:52.937 [debug] QUERY OK source="settings" db=0.0ms idle=81.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 [] 08:20:52.937 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:52.937 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:20:52.938 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:20:52.939 [info] Sent 200 in 3ms 08:20:59.728 [info] GET /sources/3/media/10623 08:20:59.728 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "10623", "prevent_download" => "true", "source_id" => "3"} Pipelines: [:browser] 08:20:59.729 [debug] QUERY OK source="media_items" db=0.2ms idle=1402.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" = ?) [10623] 08:20:59.729 [debug] QUERY OK source="tasks" db=0.1ms idle=1403.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" [10623] 08:20:59.729 [debug] QUERY OK source="sources" db=0.1ms idle=1403.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" = ?) [3] 08:20:59.729 [debug] QUERY OK source="oban_jobs" db=0.0ms idle=1403.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" = ?) [2332] 08:20:59.729 [debug] QUERY OK source="settings" db=0.0ms idle=866.3ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:59.730 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:59.730 [debug] QUERY OK source="settings" db=0.1ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:59.730 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:20:59.731 [info] Sent 200 in 3ms 08:20:59.919 [info] GET /sources/4/media/2266 08:20:59.919 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "2266", "source_id" => "4"} Pipelines: [:browser] 08:20:59.919 [debug] QUERY OK source="media_items" db=0.1ms idle=189.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" = ?) [2266] 08:20:59.920 [debug] QUERY OK source="tasks" db=0.1ms idle=189.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" [2266] 08:20:59.920 [debug] QUERY OK source="sources" db=0.1ms idle=189.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] 08:20:59.920 [debug] QUERY OK source="settings" db=0.0ms idle=189.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 [] 08:20:59.920 [debug] QUERY OK source="settings" db=0.0ms idle=55.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 [] 08:20:59.920 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:20:59.921 [debug] QUERY OK source="media_profiles" db=0.0ms idle=0.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] 08:20:59.921 [info] Sent 200 in 2ms 08:21:00.399 [info] GET /sources/3/media/9790 08:21:00.400 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "9790", "source_id" => "3"} Pipelines: [:browser] 08:21:00.400 [debug] QUERY OK source="media_items" db=0.1ms idle=480.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" = ?) [9790] 08:21:00.400 [debug] QUERY OK source="tasks" db=0.2ms idle=480.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" [9790] 08:21:00.400 [debug] QUERY OK source="sources" db=0.2ms idle=480.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" = ?) [3] 08:21:00.401 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=480.3ms SELECT o0."id", o0."state", o0."queue", o0."worker", o0."args", o0."meta", o0."tags", o0."errors", o0."attempt", o0."attempted_by", o0."max_attempts", o0."priority", o0."attempted_at", o0."cancelled_at", o0."completed_at", o0."discarded_at", o0."inserted_at", o0."scheduled_at", o0."id" FROM "oban_jobs" AS o0 WHERE (o0."id" IN (?,?)) [2169, 2206] 08:21:00.401 [debug] QUERY OK source="settings" db=0.0ms idle=480.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 [] 08:21:00.401 [debug] QUERY OK source="settings" db=0.0ms idle=1.1ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:21:00.401 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:21:00.402 [debug] QUERY OK source="media_profiles" db=0.0ms 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] 08:21:00.403 [info] Sent 200 in 3ms 08:21:00.476 [info] {"source":"oban","duration":180,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:21:00.895 [info] GET /sources/4/media/8793/edit 08:21:00.895 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "8793", "source_id" => "4"} Pipelines: [:browser] 08:21:00.896 [debug] QUERY OK source="media_items" db=0.1ms idle=494.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" = ?) [8793] 08:21:00.896 [debug] QUERY OK source="settings" db=0.2ms 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 [] 08:21:00.896 [debug] QUERY OK source="settings" db=0.0ms 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 [] 08:21:00.897 [debug] QUERY OK source="settings" db=0.1ms idle=420.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 [] 08:21:00.897 [info] Sent 200 in 2ms 08:21:01.396 [info] GET /sources/3/media/8898 08:21:01.396 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.show/2 Parameters: %{"id" => "8898", "source_id" => "3"} Pipelines: [:browser] 08:21:01.396 [debug] QUERY OK source="media_items" db=0.1ms idle=530.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" = ?) [8898] 08:21:01.397 [debug] QUERY OK source="tasks" db=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" [8898] 08:21:01.397 [debug] QUERY OK source="sources" db=0.1ms idle=500.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" = ?) [3] 08:21:01.397 [debug] QUERY OK source="oban_jobs" db=0.1ms idle=500.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" IN (?,?)) [1991, 2027] 08:21:01.397 [debug] QUERY OK source="settings" db=0.0ms idle=500.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 [] 08:21:01.397 [debug] QUERY OK source="settings" db=0.0ms idle=1.0ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:21:01.397 [debug] QUERY OK source="settings" db=0.0ms idle=0.9ms SELECT s0."id", s0."onboarding", s0."pro_enabled", s0."yt_dlp_version", s0."apprise_version", s0."apprise_server", s0."youtube_api_key", s0."route_token", s0."extractor_sleep_interval_seconds", s0."download_throughput_limit", s0."restrict_filenames", s0."video_codec_preference", s0."audio_codec_preference" FROM "settings" AS s0 LIMIT 1 [] 08:21:01.398 [debug] QUERY OK source="media_profiles" db=0.0ms idle=1.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] 08:21:01.399 [info] Sent 200 in 3ms 08:21:03.085 [info] {"source":"oban","duration":539,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:21:33.086 [info] {"source":"oban","duration":735,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:21:59.261 [info] GET /media/d924c58e-5a1c-44bd-906a-7a2d52d78811/stream 08:21:59.261 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.stream/2 Parameters: %{"uuid" => "d924c58e-5a1c-44bd-906a-7a2d52d78811"} Pipelines: [:maybe_basic_auth] 08:21:59.261 [debug] QUERY OK source="media_items" db=0.3ms idle=1934.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."uuid" = ?) ["d924c58e-5a1c-44bd-906a-7a2d52d78811"] 08:21:59.262 [debug] Invalid range request for media item: d924c58e-5a1c-44bd-906a-7a2d52d78811 - serving full file 08:21:59.262 [info] Sent 200 in 970µs 08:22:00.477 [info] {"source":"oban","duration":154,"event":"plugin:stop","jobs":[],"plugin":"Oban.Plugins.Cron"} 08:22:02.024 [info] GET /media/1d504469-9fdf-42b2-8b0a-34e4eca2cf4d/stream 08:22:02.024 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.stream/2 Parameters: %{"uuid" => "1d504469-9fdf-42b2-8b0a-34e4eca2cf4d"} Pipelines: [:maybe_basic_auth] 08:22:02.024 [debug] QUERY OK source="media_items" db=0.2ms idle=1683.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."uuid" = ?) ["1d504469-9fdf-42b2-8b0a-34e4eca2cf4d"] 08:22:02.024 [debug] Invalid range request for media item: 1d504469-9fdf-42b2-8b0a-34e4eca2cf4d - serving full file 08:22:02.025 [info] Sent 200 in 849µs 08:22:03.088 [info] {"source":"oban","duration":525,"event":"plugin:stop","plugin":"Oban.Plugins.Pruner","pruned_count":0} 08:22:04.252 [info] GET /sources/3/media/9042/force_download 08:22:04.252 [debug] QUERY OK source="settings" db=0.1ms idle=1911.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 [] 08:22:04.252 [debug] QUERY OK source="settings" db=0.0ms idle=1911.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 [] 08:22:04.252 [debug] Converted error Phoenix.Router.NoRouteError to 404 response 08:22:04.253 [error] #PID<0.406881.0> running PinchflatWeb.Endpoint (connection #PID<0.406880.0>, stream id 1) terminated Server: pinchflat.moozuk.net:80 (http) Request: GET /sources/3/media/9042/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/3/media/9042/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406880.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/media/9042/force_download", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57234}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406881.0>, params: %{}, path_info: ["sources", "3", "media", "9042", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], request_path: "/sources/3/media/9042/force_download", resp_body: nil, resp_cookies: %{}, resp_headers: [ {"cache-control", "max-age=0, private, must-revalidate"}, {"x-request-id", "GIN76ho-dTPILMIAFRli"} ], scheme: :http, script_name: [], secret_key_base: :..., state: :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.406880.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/media/9042/force_download", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57234}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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/media/9042/force_download (PinchflatWeb.Router)", conn: %Plug.Conn{ adapter: {Plug.Cowboy.Conn, %{ pid: #PID<0.406880.0>, port: 80, scheme: "http", version: :"HTTP/1.1", path: "/sources/3/media/9042/force_download", host: "pinchflat.moozuk.net", peer: {{192, 168, 35, 254}, 57234}, bindings: %{}, sock: {{172, 16, 6, 2}, 8945}, ref: PinchflatWeb.Endpoint.HTTP, cert: :undefined, headers: %{ "accept" => "*/*", "accept-encoding" => "gzip, br, zstd, deflate", "host" => "pinchflat.moozuk.net", "user-agent" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)", "x-forwarded-for" => "216.73.216.155", "x-forwarded-proto" => "https", "x-forwarded-scheme" => "https", "x-real-ip" => "216.73.216.155" }, 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.moozuk.net", method: "GET", owner: #PID<0.406881.0>, params: %{}, path_info: ["sources", "3", "media", "9042", "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.moozuk.net", :phoenix_router => PinchflatWeb.Router, :phoenix_request_logger => {"request_logger", "request_logger"} }, query_params: %{}, query_string: "", remote_ip: {192, 168, 35, 254}, req_cookies: %{}, req_headers: [ {"accept", "*/*"}, {"accept-encoding", "gzip, br, zstd, deflate"}, {"host", "pinchflat.moozuk.net"}, {"user-agent", "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"}, {"x-forwarded-for", "216.73.216.155"}, {"x-forwarded-proto", "https"}, {"x-forwarded-scheme", "https"}, {"x-real-ip", "216.73.216.155"} ], (truncated) 08:22:04.569 [info] GET /sources/f0fbd86f-d345-4e9d-aa0f-6307fca1dad4/feed.xml 08:22:04.569 [debug] Processing with PinchflatWeb.Podcasts.PodcastController.rss_feed/2 Parameters: %{"uuid" => "f0fbd86f-d345-4e9d-aa0f-6307fca1dad4"} Pipelines: [:maybe_basic_auth] 08:22:04.570 [debug] QUERY OK source="sources" db=0.1ms idle=622.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."uuid" = ?) ["f0fbd86f-d345-4e9d-aa0f-6307fca1dad4"] 08:22:04.572 [debug] QUERY OK source="media_items" db=1.9ms idle=317.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."source_id" = ?) AND NOT (m0."media_filepath" IS NULL)) ORDER BY m0."uploaded_at" DESC LIMIT ? [4, 2000] 08:22:04.578 [debug] QUERY OK source="source_metadata" db=0.0ms idle=325.7ms SELECT s0."id", s0."metadata_filepath", s0."fanart_filepath", s0."poster_filepath", s0."banner_filepath", s0."source_id", s0."inserted_at", s0."updated_at", s0."source_id" FROM "source_metadata" AS s0 WHERE (s0."source_id" = ?) [4] 08:22:04.578 [debug] QUERY OK source="media_metadata" db=0.1ms idle=237.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" = ?) [10433] 08:22:04.579 [info] Sent 200 in 9ms 08:22:06.072 [info] GET /sources/3/media/9790/edit 08:22:06.072 [debug] Processing with PinchflatWeb.MediaItems.MediaItemController.edit/2 Parameters: %{"id" => "9790", "source_id" => "3"} Pipelines: [:browser] 08:22:06.073 [debug] QUERY OK source="media_items" db=0.1ms idle=1500.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" = ?) [9790] 08:22:06.073 [debug] QUERY OK source="settings" db=0.0ms idle=1494.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 [] 08:22:06.073 [debug] QUERY OK source="settings" db=0.2ms idle=1494.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 [] 08:22:06.074 [debug] QUERY OK source="settings" db=0.2ms idle=1125.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 [] 08:22:06.074 [info] Sent 200 in 2ms