2026-01-12T17:54:03.352312686Z [migrations] started
2026-01-12T17:54:03.352363649Z [migrations] no migrations found
2026-01-12T17:54:03.372749368Z usermod: no changes
2026-01-12T17:54:03.378095734Z ───────────────────────────────────────
2026-01-12T17:54:03.378123320Z 
2026-01-12T17:54:03.378127288Z       ██╗     ███████╗██╗ ██████╗
2026-01-12T17:54:03.378131336Z       ██║     ██╔════╝██║██╔═══██╗
2026-01-12T17:54:03.378135184Z       ██║     ███████╗██║██║   ██║
2026-01-12T17:54:03.378138741Z       ██║     ╚════██║██║██║   ██║
2026-01-12T17:54:03.378142288Z       ███████╗███████║██║╚██████╔╝
2026-01-12T17:54:03.378145935Z       ╚══════╝╚══════╝╚═╝ ╚═════╝
2026-01-12T17:54:03.378149553Z 
2026-01-12T17:54:03.378152889Z    Brought to you by linuxserver.io
2026-01-12T17:54:03.378156326Z ───────────────────────────────────────
2026-01-12T17:54:03.378447603Z 
2026-01-12T17:54:03.378459036Z To support LSIO projects visit:
2026-01-12T17:54:03.378465729Z https://www.linuxserver.io/donate/
2026-01-12T17:54:03.378472242Z 
2026-01-12T17:54:03.378478615Z ───────────────────────────────────────
2026-01-12T17:54:03.378486381Z GID/UID
2026-01-12T17:54:03.378492774Z ───────────────────────────────────────
2026-01-12T17:54:03.382925269Z 
2026-01-12T17:54:03.382938365Z User UID:    911
2026-01-12T17:54:03.382942654Z User GID:    911
2026-01-12T17:54:03.382946532Z ───────────────────────────────────────
2026-01-12T17:54:03.384557506Z Linuxserver.io version: 0.52.1-ls254
2026-01-12T17:54:03.384820215Z Build-date: 2026-01-12T17:48:29+00:00
2026-01-12T17:54:03.384833121Z ───────────────────────────────────────
2026-01-12T17:54:03.384838963Z     
2026-01-12T17:54:03.430104432Z [custom-init] No custom files found, skipping...
2026-01-12T17:54:03.713299917Z /app/changedetection/changedetectionio/html_tools.py:530: SyntaxWarning: invalid escape sequence '\['
2026-01-12T17:54:03.713349437Z   pattern = '<!\[CDATA\[(\s*(?:.(?<!\]\]>)\s*)*)\]\]>'
2026-01-12T17:54:03.713593749Z /app/changedetection/changedetectionio/html_tools.py:594: SyntaxWarning: invalid escape sequence '\s'
2026-01-12T17:54:03.713652818Z   content = re.sub('<!--\s+-->', '', content)
2026-01-12T17:54:03.975896885Z 2026-01-12 17:54:03.975 | DEBUG    | changedetectionio.queue_handlers:__init__:53 - RecheckPriorityQueue initialized successfully
2026-01-12T17:54:03.975939561Z 2026-01-12 17:54:03.975 | DEBUG    | changedetectionio.queue_handlers:__init__:358 - NotificationQueue initialized successfully
2026-01-12T17:54:04.027695850Z 2026-01-12 17:54:04.027 | DEBUG    | changedetectionio.pluggy_interface:get_plugin_template_paths:439 - Added base processors template path: /app/changedetection/changedetectionio/processors/templates
2026-01-12T17:54:04.039155125Z 2026-01-12 17:54:04.038 | DEBUG    | changedetectionio.content_fetchers:<module>:104 - Falling back to selenium as fetcher
2026-01-12T17:54:04.113723970Z 2026-01-12 17:54:04.113 | DEBUG    | changedetectionio.pluggy_interface:get_plugin_template_paths:454 - Added processor template path: /app/changedetection/changedetectionio/processors/image_ssim_diff/templates
2026-01-12T17:54:04.113882109Z 2026-01-12 17:54:04.113 | INFO     | changedetectionio.flask_app:_configure_plugin_templates:108 - Configured Jinja2 to search 2 plugin template directories
2026-01-12T17:54:04.113990948Z 2026-01-12 17:54:04.113 | INFO     | changedetectionio.flask_app:<module>:118 - System locale default is (None, None)
2026-01-12T17:54:04.114768393Z 2026-01-12 17:54:04.114 | DEBUG    | changedetectionio:<module>:70 - Set multiprocessing default to 'spawn' for thread safety (explicit contexts used everywhere)
2026-01-12T17:54:04.114816079Z 2026-01-12 17:54:04.114 | SUCCESS  | changedetectionio:main:191 - changedetection.io version 0.52.1 starting.
2026-01-12T17:54:04.126818969Z 2026-01-12 17:54:04.126 | INFO     | changedetectionio.store:reload_state:82 - Datastore path is '/config'
2026-01-12T17:54:04.127151478Z 2026-01-12 17:54:04.127 | CRITICAL | changedetectionio.store:reload_state:141 - No JSON DB found at /config/url-watches.json, creating JSON store at /config
2026-01-12T17:54:04.182632397Z 2026-01-12 17:54:04.182 | DEBUG    | changedetectionio.store:add_tag:651 - >>> Adding new tag - 'tech news'
2026-01-12T17:54:04.183534153Z 2026-01-12 17:54:04.183 | DEBUG    | changedetectionio.store:add_watch:417 - Adding URL 'https://news.ycombinator.com/' - 63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:04.183559214Z 2026-01-12 17:54:04.183 | DEBUG    | changedetectionio.model.Watch:ensure_data_dir_exists:188 - > Creating data dir /config/63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:04.183718484Z 2026-01-12 17:54:04.183 | INFO     | changedetectionio.store:sync_to_json:447 - Saving JSON..
2026-01-12T17:54:04.184233722Z 2026-01-12 17:54:04.184 | DEBUG    | changedetectionio.store:add_watch:433 - Added 'https://news.ycombinator.com/'
2026-01-12T17:54:04.184842718Z 2026-01-12 17:54:04.184 | DEBUG    | changedetectionio.store:add_tag:651 - >>> Adding new tag - 'changedetection.io'
2026-01-12T17:54:04.185257583Z 2026-01-12 17:54:04.185 | DEBUG    | changedetectionio.store:add_watch:417 - Adding URL 'https://changedetection.io/CHANGELOG.txt' - 392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:04.185267503Z 2026-01-12 17:54:04.185 | DEBUG    | changedetectionio.model.Watch:ensure_data_dir_exists:188 - > Creating data dir /config/392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:04.185416153Z 2026-01-12 17:54:04.185 | INFO     | changedetectionio.store:sync_to_json:447 - Saving JSON..
2026-01-12T17:54:04.186177416Z 2026-01-12 17:54:04.186 | DEBUG    | changedetectionio.store:add_watch:433 - Added 'https://changedetection.io/CHANGELOG.txt'
2026-01-12T17:54:04.187050173Z 2026-01-12 17:54:04.186 | INFO     | changedetectionio.store:sync_to_json:447 - Saving JSON..
2026-01-12T17:54:04.247527584Z /app/changedetection/changedetectionio/blueprint/backups/__init__.py:125: SyntaxWarning: invalid escape sequence '\d'
2026-01-12T17:54:04.247556622Z   backup_filename_regex = BACKUP_FILENAME_FORMAT.format("\d+")
2026-01-12T17:54:04.328234879Z 2026-01-12 17:54:04.328 | INFO     | changedetectionio.realtime.socket_server:init_socketio:230 - SOCKETIO_MODE=threading: Using threading mode for Socket.IO
2026-01-12T17:54:04.328267615Z 2026-01-12 17:54:04.328 | INFO     | changedetectionio.realtime.socket_server:init_socketio:237 - Platform: linux, Python: 3.12, Socket.IO mode: threading
2026-01-12T17:54:04.358658903Z 2026-01-12 17:54:04.358 | INFO     | changedetectionio.realtime.socket_server:init_socketio:249 - Socket.IO: Registering connect event handler
2026-01-12T17:54:04.358778794Z 2026-01-12 17:54:04.358 | INFO     | changedetectionio.realtime.socket_server:__init__:43 - SignalHandler: Connected to notification_event signal
2026-01-12T17:54:04.360569259Z 2026-01-12 17:54:04.360 | INFO     | changedetectionio.realtime.socket_server:init_socketio:335 - Socket.IO initialized and attached to main Flask app
2026-01-12T17:54:04.360583268Z 2026-01-12 17:54:04.360 | INFO     | changedetectionio.realtime.socket_server:init_socketio:336 - Socket.IO: Registered event handlers: []
2026-01-12T17:54:04.360630392Z 2026-01-12 17:54:04.360 | INFO     | changedetectionio.flask_app:changedetection_app:772 - Socket.IO server initialized
2026-01-12T17:54:04.361861061Z 2026-01-12 17:54:04.361 | INFO     | changedetectionio.flask_app:changedetection_app:862 - Starting 10 workers during app initialization
2026-01-12T17:54:04.362261868Z 2026-01-12 17:54:04.362 | INFO     | changedetectionio.worker_handler:start_async_event_loop:29 - Starting async event loop for workers
2026-01-12T17:54:04.362592934Z 2026-01-12 17:54:04.362 | DEBUG    | changedetectionio.worker_handler:start_async_event_loop:37 - Event loop created and set: <_UnixSelectorEventLoop running=False closed=False debug=False>
2026-01-12T17:54:04.662754524Z 2026-01-12 17:54:04.662 | INFO     | changedetectionio.worker_handler:start_async_workers:76 - Starting 10 async workers
2026-01-12T17:54:04.663560978Z 2026-01-12 17:54:04.663 | DEBUG    | changedetectionio.flask_app:ticker_thread_check_time_launch_checks:967 - System env MINIMUM_SECONDS_RECHECK_TIME 3
2026-01-12T17:54:04.666552301Z Werkzeug appears to be used in a production deployment. Consider switching to a production web server instead.
2026-01-12T17:54:04.666774569Z  * Serving Flask app 'changedetectionio.flask_app'
2026-01-12T17:54:04.666791182Z  * Debug mode: off
2026-01-12T17:54:04.667631234Z 2026-01-12 17:54:04.667 | DEBUG    | changedetectionio.realtime.socket_server:handle_queue_length:109 - SignalHandler: Queue length update received: 1
2026-01-12T17:54:04.688166174Z 2026-01-12 17:54:04.688 | DEBUG    | changedetectionio.queue_handlers:put:72 - Successfully queued item: 63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:04.688226866Z 2026-01-12 17:54:04.688 | DEBUG    | changedetectionio.worker_handler:queue_item_async_safe:227 - Successfully queued item: 63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:04.688335224Z 2026-01-12 17:54:04.688 | DEBUG    | changedetectionio.flask_app:ticker_thread_check_time_launch_checks:1098 - > Queued watch UUID 63ffb541-8d77-4e0e-bdcf-78e0ee11c089 last checked at 0 queued at 1768240444.66 priority 1768240444 jitter 0.00s, 1768240444.66s since last checked
2026-01-12T17:54:04.689297943Z 2026-01-12 17:54:04.689 | INFO     | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 0
2026-01-12T17:54:04.689433596Z 2026-01-12 17:54:04.689 | INFO     | changedetectionio.async_update_worker:async_update_worker:36 - Starting async worker 0
2026-01-12T17:54:04.689663028Z 2026-01-12 17:54:04.689 | DEBUG    | changedetectionio.realtime.socket_server:handle_queue_length:109 - SignalHandler: Queue length update received: 1
2026-01-12T17:54:04.689790475Z 2026-01-12 17:54:04.689 | DEBUG    | changedetectionio.queue_handlers:async_get:155 - Successfully async retrieved item: 63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:04.689929385Z 2026-01-12 17:54:04.689 | DEBUG    | changedetectionio.worker_handler:set_uuid_processing:179 - Worker 0 started processing UUID: 63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:04.690090980Z 2026-01-12 17:54:04.689 | INFO     | changedetectionio.async_update_worker:async_update_worker:98 - Worker 0 processing watch UUID 63ffb541-8d77-4e0e-bdcf-78e0ee11c089 Priority 1768240444 URL https://news.ycombinator.com/
2026-01-12T17:54:04.690657471Z 2026-01-12 17:54:04.690 | DEBUG    | changedetectionio.realtime.socket_server:handle_queue_length:109 - SignalHandler: Queue length update received: 1
2026-01-12T17:54:04.690745398Z 2026-01-12 17:54:04.690 | DEBUG    | changedetectionio.queue_handlers:put:72 - Successfully queued item: 392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:04.690811261Z 2026-01-12 17:54:04.690 | DEBUG    | changedetectionio.worker_handler:queue_item_async_safe:227 - Successfully queued item: 392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:04.690892274Z 2026-01-12 17:54:04.690 | DEBUG    | changedetectionio.flask_app:ticker_thread_check_time_launch_checks:1098 - > Queued watch UUID 392a5c23-bbe8-4d1c-9863-38073673d1e6 last checked at 0 queued at 1768240444.69 priority 1768240444 jitter 0.00s, 1768240444.69s since last checked
2026-01-12T17:54:04.691639028Z WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
2026-01-12T17:54:04.691651663Z  * Running on all addresses (0.0.0.0)
2026-01-12T17:54:04.691661613Z  * Running on http://127.0.0.1:5000
2026-01-12T17:54:04.691672154Z  * Running on http://172.17.0.4:5000
2026-01-12T17:54:04.691683407Z Press CTRL+C to quit
2026-01-12T17:54:04.694741675Z 2026-01-12 17:54:04.694 | DEBUG    | changedetectionio.realtime.socket_server:handle_watch_small_status_update:52 - Socket.IO: Received watch small status update 'Fetching page..' for UUID 63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:04.695094225Z 2026-01-12 17:54:04.694 | DEBUG    | changedetectionio.processors.base:call_browser:96 - Using proxy 'None' for 63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:04.698651458Z 2026-01-12 17:54:04.698 | INFO     | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 1
2026-01-12T17:54:04.698723984Z 2026-01-12 17:54:04.698 | INFO     | changedetectionio.async_update_worker:async_update_worker:36 - Starting async worker 1
2026-01-12T17:54:04.698911933Z 2026-01-12 17:54:04.698 | DEBUG    | changedetectionio.realtime.socket_server:handle_queue_length:109 - SignalHandler: Queue length update received: 0
2026-01-12T17:54:04.699027425Z 2026-01-12 17:54:04.698 | DEBUG    | changedetectionio.queue_handlers:async_get:155 - Successfully async retrieved item: 392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:04.699152868Z 2026-01-12 17:54:04.699 | DEBUG    | changedetectionio.worker_handler:set_uuid_processing:179 - Worker 1 started processing UUID: 392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:04.699308732Z 2026-01-12 17:54:04.699 | INFO     | changedetectionio.async_update_worker:async_update_worker:98 - Worker 1 processing watch UUID 392a5c23-bbe8-4d1c-9863-38073673d1e6 Priority 1768240444 URL https://changedetection.io/CHANGELOG.txt
2026-01-12T17:54:04.700283695Z 2026-01-12 17:54:04.700 | DEBUG    | changedetectionio.realtime.socket_server:handle_watch_small_status_update:52 - Socket.IO: Received watch small status update 'Fetching page..' for UUID 392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:04.700496363Z 2026-01-12 17:54:04.700 | DEBUG    | changedetectionio.processors.base:call_browser:96 - Using proxy 'None' for 392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:04.703509040Z 2026-01-12 17:54:04.703 | INFO     | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 2
2026-01-12T17:54:04.703545483Z 2026-01-12 17:54:04.703 | INFO     | changedetectionio.async_update_worker:async_update_worker:36 - Starting async worker 2
2026-01-12T17:54:04.703635354Z 2026-01-12 17:54:04.703 | INFO     | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 3
2026-01-12T17:54:04.703669112Z 2026-01-12 17:54:04.703 | INFO     | changedetectionio.async_update_worker:async_update_worker:36 - Starting async worker 3
2026-01-12T17:54:04.703735085Z 2026-01-12 17:54:04.703 | INFO     | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 4
2026-01-12T17:54:04.703767640Z 2026-01-12 17:54:04.703 | INFO     | changedetectionio.async_update_worker:async_update_worker:36 - Starting async worker 4
2026-01-12T17:54:04.703837832Z 2026-01-12 17:54:04.703 | INFO     | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 5
2026-01-12T17:54:04.703885878Z 2026-01-12 17:54:04.703 | INFO     | changedetectionio.async_update_worker:async_update_worker:36 - Starting async worker 5
2026-01-12T17:54:04.703952974Z 2026-01-12 17:54:04.703 | INFO     | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 6
2026-01-12T17:54:04.703999006Z 2026-01-12 17:54:04.703 | INFO     | changedetectionio.async_update_worker:async_update_worker:36 - Starting async worker 6
2026-01-12T17:54:04.704075560Z 2026-01-12 17:54:04.704 | INFO     | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 7
2026-01-12T17:54:04.704096202Z 2026-01-12 17:54:04.704 | INFO     | changedetectionio.async_update_worker:async_update_worker:36 - Starting async worker 7
2026-01-12T17:54:04.704163267Z 2026-01-12 17:54:04.704 | INFO     | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 8
2026-01-12T17:54:04.704192606Z 2026-01-12 17:54:04.704 | INFO     | changedetectionio.async_update_worker:async_update_worker:36 - Starting async worker 8
2026-01-12T17:54:04.704253439Z 2026-01-12 17:54:04.704 | INFO     | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 9
2026-01-12T17:54:04.704282677Z 2026-01-12 17:54:04.704 | INFO     | changedetectionio.async_update_worker:async_update_worker:36 - Starting async worker 9
2026-01-12T17:54:05.450854700Z 2026-01-12 17:54:05.450 | WARNING  | changedetectionio.processors.magic:__init__:91 - Error getting a more precise mime type from 'puremagic' library (Could not identify file), using content-based detection
2026-01-12T17:54:05.454311190Z Connection to localhost (127.0.0.1) 5000 port [tcp/*] succeeded!
2026-01-12T17:54:05.472672583Z [ls.io-init] done.
2026-01-12T17:54:05.511127899Z 2026-01-12 17:54:05.510 | DEBUG    | changedetectionio.processors.text_json_diff.processor:run_changedetection:550 - Watch UUID 392a5c23-bbe8-4d1c-9863-38073673d1e6 content check - Previous MD5: 386a90e070ab376011a3f312c2d6f3d1, Fetched MD5 386a90e070ab376011a3f312c2d6f3d1
2026-01-12T17:54:05.511433414Z 2026-01-12 17:54:05.511 | DEBUG    | changedetectionio.async_update_worker:async_update_worker:331 - Processing watch UUID: 392a5c23-bbe8-4d1c-9863-38073673d1e6 - xpath_data length returned empty.
2026-01-12T17:54:05.789697650Z /app/changedetection/changedetectionio/html_tools.py:530: SyntaxWarning: invalid escape sequence '\['
2026-01-12T17:54:05.789731137Z   pattern = '<!\[CDATA\[(\s*(?:.(?<!\]\]>)\s*)*)\]\]>'
2026-01-12T17:54:05.789999147Z /app/changedetection/changedetectionio/html_tools.py:594: SyntaxWarning: invalid escape sequence '\s'
2026-01-12T17:54:05.790022254Z   content = re.sub('<!--\s+-->', '', content)
2026-01-12T17:54:06.051389586Z 2026-01-12 17:54:06.051 | DEBUG    | changedetectionio.queue_handlers:__init__:53 - RecheckPriorityQueue initialized successfully
2026-01-12T17:54:06.051420919Z 2026-01-12 17:54:06.051 | DEBUG    | changedetectionio.queue_handlers:__init__:358 - NotificationQueue initialized successfully
2026-01-12T17:54:06.098142619Z 2026-01-12 17:54:06.098 | DEBUG    | changedetectionio.pluggy_interface:get_plugin_template_paths:439 - Added base processors template path: /app/changedetection/changedetectionio/processors/templates
2026-01-12T17:54:06.108974271Z 2026-01-12 17:54:06.108 | DEBUG    | changedetectionio.content_fetchers:<module>:104 - Falling back to selenium as fetcher
2026-01-12T17:54:06.180344686Z 2026-01-12 17:54:06.180 | DEBUG    | changedetectionio.pluggy_interface:get_plugin_template_paths:454 - Added processor template path: /app/changedetection/changedetectionio/processors/image_ssim_diff/templates
2026-01-12T17:54:06.180508235Z 2026-01-12 17:54:06.180 | INFO     | changedetectionio.flask_app:_configure_plugin_templates:108 - Configured Jinja2 to search 2 plugin template directories
2026-01-12T17:54:06.180545911Z 2026-01-12 17:54:06.180 | INFO     | changedetectionio.flask_app:<module>:118 - System locale default is (None, None)
2026-01-12T17:54:06.701050984Z /app/changedetection/changedetectionio/html_tools.py:530: SyntaxWarning: invalid escape sequence '\['
2026-01-12T17:54:06.701095204Z   pattern = '<!\[CDATA\[(\s*(?:.(?<!\]\]>)\s*)*)\]\]>'
2026-01-12T17:54:06.701327511Z /app/changedetection/changedetectionio/html_tools.py:594: SyntaxWarning: invalid escape sequence '\s'
2026-01-12T17:54:06.701350508Z   content = re.sub('<!--\s+-->', '', content)
2026-01-12T17:54:06.960763705Z 2026-01-12 17:54:06.960 | DEBUG    | changedetectionio.queue_handlers:__init__:53 - RecheckPriorityQueue initialized successfully
2026-01-12T17:54:06.960802122Z 2026-01-12 17:54:06.960 | DEBUG    | changedetectionio.queue_handlers:__init__:358 - NotificationQueue initialized successfully
2026-01-12T17:54:07.007454794Z 2026-01-12 17:54:07.007 | DEBUG    | changedetectionio.pluggy_interface:get_plugin_template_paths:439 - Added base processors template path: /app/changedetection/changedetectionio/processors/templates
2026-01-12T17:54:07.018883357Z 2026-01-12 17:54:07.018 | DEBUG    | changedetectionio.content_fetchers:<module>:104 - Falling back to selenium as fetcher
2026-01-12T17:54:07.091123533Z 2026-01-12 17:54:07.090 | DEBUG    | changedetectionio.pluggy_interface:get_plugin_template_paths:454 - Added processor template path: /app/changedetection/changedetectionio/processors/image_ssim_diff/templates
2026-01-12T17:54:07.091283174Z 2026-01-12 17:54:07.091 | INFO     | changedetectionio.flask_app:_configure_plugin_templates:108 - Configured Jinja2 to search 2 plugin template directories
2026-01-12T17:54:07.091395631Z 2026-01-12 17:54:07.091 | INFO     | changedetectionio.flask_app:<module>:118 - System locale default is (None, None)
2026-01-12T17:54:07.118443275Z 2026-01-12 17:54:07.118 | INFO     | changedetectionio.processors:available_processors:116 - ALLOWED_PROCESSORS set, filtering to: ['text_json_diff', 'restock_diff']
2026-01-12T17:54:07.118460119Z 2026-01-12 17:54:07.118 | DEBUG    | changedetectionio.processors:available_processors:122 - Skipping processor 'image_ssim_diff' (not in ALLOWED_PROCESSORS)
2026-01-12T17:54:07.321853752Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET / HTTP/1.1" 200 -
2026-01-12T17:54:07.333548000Z 2026-01-12 17:54:07.333 | INFO     | changedetectionio.processors:available_processors:116 - ALLOWED_PROCESSORS set, filtering to: ['text_json_diff', 'restock_diff']
2026-01-12T17:54:07.333572400Z 2026-01-12 17:54:07.333 | DEBUG    | changedetectionio.processors:available_processors:122 - Skipping processor 'image_ssim_diff' (not in ALLOWED_PROCESSORS)
2026-01-12T17:54:07.344497399Z 2026-01-12 17:54:07.344 | DEBUG    | changedetectionio.model.Watch:history:339 - Reading watch history index for 392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:07.344999099Z 2026-01-12 17:54:07.344 | DEBUG    | changedetectionio.async_update_worker:async_update_worker:406 - Cleared fetcher content for UUID 392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:07.345163871Z 2026-01-12 17:54:07.345 | DEBUG    | changedetectionio.worker_handler:set_uuid_processing:182 - Worker 1 finished processing UUID: 392a5c23-bbe8-4d1c-9863-38073673d1e6
2026-01-12T17:54:07.346456263Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET / HTTP/1.1" 200 -
2026-01-12T17:54:07.386757275Z 2026-01-12 17:54:07.386 | DEBUG    | changedetectionio.async_update_worker:async_update_worker:460 - Worker 1 completed watch 392a5c23-bbe8-4d1c-9863-38073673d1e6 in 2.39s
2026-01-12T17:54:07.390477937Z 2026-01-12 17:54:07.390 | DEBUG    | changedetectionio.processors.magic:__init__:80 - Guessing mime type, original content_type 'text/html; charset=utf-8', mime type detected 'text/html'
2026-01-12T17:54:07.394829981Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/styles/styles.css?v=0.52.1 HTTP/1.1" 200 -
2026-01-12T17:54:07.396697631Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/styles/flag-icons.min.css HTTP/1.1" 200 -
2026-01-12T17:54:07.396843535Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/styles/pure-min.css HTTP/1.1" 200 -
2026-01-12T17:54:07.399118045Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/jquery-3.6.0.min.js HTTP/1.1" 200 -
2026-01-12T17:54:07.399710648Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/socket.io.min.js HTTP/1.1" 200 -
2026-01-12T17:54:07.400830644Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/images/google-chrome-icon.png HTTP/1.1" 200 -
2026-01-12T17:54:07.406594210Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/modal.js HTTP/1.1" 200 -
2026-01-12T17:54:07.409096879Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/images/spread-white.svg HTTP/1.1" 200 -
2026-01-12T17:54:07.421514764Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/images/pause.svg HTTP/1.1" 200 -
2026-01-12T17:54:07.422374886Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/images/play.svg HTTP/1.1" 200 -
2026-01-12T17:54:07.446705800Z 2026-01-12 17:54:07.446 | DEBUG    | changedetectionio.processors.text_json_diff.processor:run_changedetection:550 - Watch UUID 63ffb541-8d77-4e0e-bdcf-78e0ee11c089 content check - Previous MD5: 7b46ab7c4d1edf5f107c54187fcefe06, Fetched MD5 7b46ab7c4d1edf5f107c54187fcefe06
2026-01-12T17:54:07.446853017Z 2026-01-12 17:54:07.446 | DEBUG    | changedetectionio.async_update_worker:async_update_worker:331 - Processing watch UUID: 63ffb541-8d77-4e0e-bdcf-78e0ee11c089 - xpath_data length returned empty.
2026-01-12T17:54:07.450042880Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/images/bell-off.svg HTTP/1.1" 200 -
2026-01-12T17:54:07.451041822Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/toast.js HTTP/1.1" 200 -
2026-01-12T17:54:07.461992943Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/watch-overview.js HTTP/1.1" 200 -
2026-01-12T17:54:07.462368610Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/csrf.js HTTP/1.1" 200 -
2026-01-12T17:54:07.462869488Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/images/spread.svg HTTP/1.1" 200 -
2026-01-12T17:54:07.463337721Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/images/generic_feed-icon.svg HTTP/1.1" 200 -
2026-01-12T17:54:07.463618747Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/realtime.js HTTP/1.1" 200 -
2026-01-12T17:54:07.464500413Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/feather-icons.min.js HTTP/1.1" 200 -
2026-01-12T17:54:07.480026877Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/hamburger-menu.js HTTP/1.1" 200 -
2026-01-12T17:54:07.480851548Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/search-modal.js HTTP/1.1" 200 -
2026-01-12T17:54:07.480951499Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/flask-toast-bridge.js HTTP/1.1" 200 -
2026-01-12T17:54:07.481894117Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/toggle-theme.js HTTP/1.1" 200 -
2026-01-12T17:54:07.482995655Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/flags/1x1/us.svg HTTP/1.1" 200 -
2026-01-12T17:54:07.483187502Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/js/language-selector.js HTTP/1.1" 200 -
2026-01-12T17:54:07.533093495Z 2026-01-12 17:54:07.532 | DEBUG    | changedetectionio.realtime.socket_server:handle_connect:299 - Socket.IO: Sent initial queue size 0 to new client
2026-01-12T17:54:07.533121902Z 2026-01-12 17:54:07.533 | INFO     | changedetectionio.realtime.socket_server:handle_connect:303 - Socket.IO: Client connected
2026-01-12T17:54:07.534750782Z 172.17.0.3 - - [12/Jan/2026 17:54:07] "GET /static/favicons/favicon.ico HTTP/1.1" 200 -
2026-01-12T17:54:07.728915601Z /app/changedetection/changedetectionio/html_tools.py:530: SyntaxWarning: invalid escape sequence '\['
2026-01-12T17:54:07.728960882Z   pattern = '<!\[CDATA\[(\s*(?:.(?<!\]\]>)\s*)*)\]\]>'
2026-01-12T17:54:07.729187739Z /app/changedetection/changedetectionio/html_tools.py:594: SyntaxWarning: invalid escape sequence '\s'
2026-01-12T17:54:07.729205976Z   content = re.sub('<!--\s+-->', '', content)
2026-01-12T17:54:07.986223619Z 2026-01-12 17:54:07.985 | DEBUG    | changedetectionio.queue_handlers:__init__:53 - RecheckPriorityQueue initialized successfully
2026-01-12T17:54:07.986267878Z 2026-01-12 17:54:07.986 | DEBUG    | changedetectionio.queue_handlers:__init__:358 - NotificationQueue initialized successfully
2026-01-12T17:54:08.032172033Z 2026-01-12 17:54:08.031 | DEBUG    | changedetectionio.pluggy_interface:get_plugin_template_paths:439 - Added base processors template path: /app/changedetection/changedetectionio/processors/templates
2026-01-12T17:54:08.043023594Z 2026-01-12 17:54:08.042 | DEBUG    | changedetectionio.content_fetchers:<module>:104 - Falling back to selenium as fetcher
2026-01-12T17:54:08.112862836Z 2026-01-12 17:54:08.112 | DEBUG    | changedetectionio.pluggy_interface:get_plugin_template_paths:454 - Added processor template path: /app/changedetection/changedetectionio/processors/image_ssim_diff/templates
2026-01-12T17:54:08.112986615Z 2026-01-12 17:54:08.112 | INFO     | changedetectionio.flask_app:_configure_plugin_templates:108 - Configured Jinja2 to search 2 plugin template directories
2026-01-12T17:54:08.113070454Z 2026-01-12 17:54:08.112 | INFO     | changedetectionio.flask_app:<module>:118 - System locale default is (None, None)
2026-01-12T17:54:08.512860129Z /app/changedetection/changedetectionio/html_tools.py:530: SyntaxWarning: invalid escape sequence '\['
2026-01-12T17:54:08.512901192Z   pattern = '<!\[CDATA\[(\s*(?:.(?<!\]\]>)\s*)*)\]\]>'
2026-01-12T17:54:08.513113930Z /app/changedetection/changedetectionio/html_tools.py:594: SyntaxWarning: invalid escape sequence '\s'
2026-01-12T17:54:08.513155374Z   content = re.sub('<!--\s+-->', '', content)
2026-01-12T17:54:08.780594021Z 2026-01-12 17:54:08.780 | DEBUG    | changedetectionio.queue_handlers:__init__:53 - RecheckPriorityQueue initialized successfully
2026-01-12T17:54:08.780632128Z 2026-01-12 17:54:08.780 | DEBUG    | changedetectionio.queue_handlers:__init__:358 - NotificationQueue initialized successfully
2026-01-12T17:54:08.827808584Z 2026-01-12 17:54:08.827 | DEBUG    | changedetectionio.pluggy_interface:get_plugin_template_paths:439 - Added base processors template path: /app/changedetection/changedetectionio/processors/templates
2026-01-12T17:54:08.838901081Z 2026-01-12 17:54:08.838 | DEBUG    | changedetectionio.content_fetchers:<module>:104 - Falling back to selenium as fetcher
2026-01-12T17:54:08.912480203Z 2026-01-12 17:54:08.912 | DEBUG    | changedetectionio.pluggy_interface:get_plugin_template_paths:454 - Added processor template path: /app/changedetection/changedetectionio/processors/image_ssim_diff/templates
2026-01-12T17:54:08.912623963Z 2026-01-12 17:54:08.912 | INFO     | changedetectionio.flask_app:_configure_plugin_templates:108 - Configured Jinja2 to search 2 plugin template directories
2026-01-12T17:54:08.912739245Z 2026-01-12 17:54:08.912 | INFO     | changedetectionio.flask_app:<module>:118 - System locale default is (None, None)
2026-01-12T17:54:09.035322945Z 2026-01-12 17:54:09.035 | DEBUG    | changedetectionio.model.Watch:history:339 - Reading watch history index for 63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:09.035667499Z 2026-01-12 17:54:09.035 | DEBUG    | changedetectionio.async_update_worker:async_update_worker:381 - UUID: 63ffb541-8d77-4e0e-bdcf-78e0ee11c089 Page <title> is 'Hacker News'
2026-01-12T17:54:09.035988475Z 2026-01-12 17:54:09.035 | DEBUG    | changedetectionio.async_update_worker:async_update_worker:406 - Cleared fetcher content for UUID 63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:09.036113517Z 2026-01-12 17:54:09.035 | DEBUG    | changedetectionio.worker_handler:set_uuid_processing:182 - Worker 0 finished processing UUID: 63ffb541-8d77-4e0e-bdcf-78e0ee11c089
2026-01-12T17:54:09.067895815Z 2026-01-12 17:54:09.067 | DEBUG    | changedetectionio.async_update_worker:async_update_worker:460 - Worker 0 completed watch 63ffb541-8d77-4e0e-bdcf-78e0ee11c089 in 4.07s
2026-01-12T17:54:17.859434634Z 2026-01-12 17:54:17.859 | INFO     | changedetectionio.realtime.socket_server:handle_disconnect:309 - Socket.IO: Client disconnected
2026-01-12T17:54:17.860048620Z 172.17.0.3 - - [12/Jan/2026 17:54:17] "GET /socket.io/?EIO=4&transport=websocket HTTP/1.1" 500 -
2026-01-12T17:54:17.861216632Z Error on request:
2026-01-12T17:54:17.861233205Z Traceback (most recent call last):
2026-01-12T17:54:17.861242294Z   File "/lsiopy/lib/python3.12/site-packages/werkzeug/serving.py", line 370, in run_wsgi
2026-01-12T17:54:17.861272034Z     execute(self.server.app)
2026-01-12T17:54:17.861280300Z   File "/lsiopy/lib/python3.12/site-packages/werkzeug/serving.py", line 336, in execute
2026-01-12T17:54:17.861288747Z     write(b"")
2026-01-12T17:54:17.861296894Z   File "/lsiopy/lib/python3.12/site-packages/werkzeug/serving.py", line 261, in write
2026-01-12T17:54:17.861305180Z     assert status_set is not None, "write() before start_response"
2026-01-12T17:54:17.861313788Z            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2026-01-12T17:54:17.861322094Z AssertionError: write() before start_response