2026-03-18T11:43:33.641760933Z [migrations] started
2026-03-18T11:43:33.641799190Z [migrations] no migrations found
2026-03-18T11:43:33.662250693Z usermod: no changes
2026-03-18T11:43:33.670710479Z ───────────────────────────────────────
2026-03-18T11:43:33.670726451Z
2026-03-18T11:43:33.670730860Z ██╗ ███████╗██╗ ██████╗
2026-03-18T11:43:33.670734878Z ██║ ██╔════╝██║██╔═══██╗
2026-03-18T11:43:33.670738836Z ██║ ███████╗██║██║ ██║
2026-03-18T11:43:33.670743375Z ██║ ╚════██║██║██║ ██║
2026-03-18T11:43:33.670747132Z ███████╗███████║██║╚██████╔╝
2026-03-18T11:43:33.670750910Z ╚══════╝╚══════╝╚═╝ ╚═════╝
2026-03-18T11:43:33.670754728Z
2026-03-18T11:43:33.670758355Z Brought to you by linuxserver.io
2026-03-18T11:43:33.670762203Z ───────────────────────────────────────
2026-03-18T11:43:33.671121927Z
2026-03-18T11:43:33.671139743Z To support LSIO projects visit:
2026-03-18T11:43:33.671143901Z https://www.linuxserver.io/donate/
2026-03-18T11:43:33.671147869Z
2026-03-18T11:43:33.671151336Z ───────────────────────────────────────
2026-03-18T11:43:33.671155585Z GID/UID
2026-03-18T11:43:33.671159092Z ───────────────────────────────────────
2026-03-18T11:43:33.675502728Z
2026-03-18T11:43:33.675512819Z User UID: 911
2026-03-18T11:43:33.675516777Z User GID: 911
2026-03-18T11:43:33.675520514Z ───────────────────────────────────────
2026-03-18T11:43:33.677297513Z Linuxserver.io version: 0.54.6-ls277
2026-03-18T11:43:33.677565773Z Build-date: 2026-03-18T11:37:57+00:00
2026-03-18T11:43:33.677577557Z ───────────────────────────────────────
2026-03-18T11:43:33.677582958Z
2026-03-18T11:43:33.725246598Z [custom-init] No custom files found, skipping...
2026-03-18T11:43:33.863942830Z 2026-03-18 11:43:33.863 | DEBUG | changedetectionio:<module>:86 - Set multiprocessing default to 'spawn' for thread safety (explicit contexts used everywhere)
2026-03-18T11:43:34.091716358Z 2026-03-18 11:43:34.091 | DEBUG | changedetectionio.content_fetchers:<module>:104 - Falling back to selenium as fetcher
2026-03-18T11:43:34.160159832Z /app/changedetection/changedetectionio/html_tools.py:590: SyntaxWarning: invalid escape sequence '\['
2026-03-18T11:43:34.160217669Z pattern = '<!\[CDATA\[(\s*(?:.(?<!\]\]>)\s*)*)\]\]>'
2026-03-18T11:43:34.160408894Z /app/changedetection/changedetectionio/html_tools.py:689: SyntaxWarning: invalid escape sequence '\s'
2026-03-18T11:43:34.160430788Z content = re.sub('<!--\s+-->', '', content)
2026-03-18T11:43:34.476252308Z 2026-03-18 11:43:34.475 | DEBUG | changedetectionio.queue_handlers:__init__:59 - RecheckPriorityQueue initialized successfully
2026-03-18T11:43:34.476298391Z 2026-03-18 11:43:34.475 | DEBUG | changedetectionio.queue_handlers:__init__:434 - NotificationQueue initialized successfully
2026-03-18T11:43:34.477217792Z 2026-03-18 11:43:34.477 | DEBUG | changedetectionio.pluggy_interface:get_plugin_template_paths:508 - Added base processors template path: /app/changedetection/changedetectionio/processors/templates
2026-03-18T11:43:34.522369514Z 2026-03-18 11:43:34.522 | DEBUG | changedetectionio.pluggy_interface:get_plugin_template_paths:523 - Added processor template path: /app/changedetection/changedetectionio/processors/image_ssim_diff/templates
2026-03-18T11:43:34.522867177Z 2026-03-18 11:43:34.522 | INFO | changedetectionio.flask_app:_configure_plugin_templates:154 - Configured Jinja2 to search 2 plugin template directories
2026-03-18T11:43:34.522889532Z 2026-03-18 11:43:34.522 | INFO | changedetectionio.flask_app:<module>:164 - System locale default is (None, None)
2026-03-18T11:43:34.523562687Z 2026-03-18 11:43:34.523 | SUCCESS | changedetectionio:main:329 - changedetection.io version 0.54.6 starting.
2026-03-18T11:43:34.535275784Z 2026-03-18 11:43:34.535 | INFO | changedetectionio.store:reload_state:200 - Datastore path is '/config'
2026-03-18T11:43:34.535757293Z 2026-03-18 11:43:34.535 | WARNING | changedetectionio.store:init_fresh_install:260 - No datastore found, creating new datastore at /config
2026-03-18T11:43:34.536120204Z 2026-03-18 11:43:34.535 | INFO | changedetectionio.store:init_fresh_install:264 - Marking fresh install to schema version 30
2026-03-18T11:43:34.556007461Z 2026-03-18 11:43:34.555 | DEBUG | changedetectionio.store:add_tag:950 - >>> Adding new tag - 'tech news'
2026-03-18T11:43:34.705082183Z 2026-03-18 11:43:34.704 | DEBUG | changedetectionio.model:commit:670 - Committed tag c79641e6-5b3c-4c42-b53f-d74475eed1d2 to c79641e6-5b3c-4c42-b53f-d74475eed1d2/tag.json
2026-03-18T11:43:34.705159829Z 2026-03-18 11:43:34.705 | DEBUG | changedetectionio.store:add_watch:774 - Adding URL 'https://news.ycombinator.com/' - fe40eb59-ccfe-4fcf-b274-321309f84f59
2026-03-18T11:43:34.705208287Z 2026-03-18 11:43:34.705 | DEBUG | changedetectionio.model:ensure_data_dir_exists:572 - > Creating data dir /config/fe40eb59-ccfe-4fcf-b274-321309f84f59
2026-03-18T11:43:34.705965632Z 2026-03-18 11:43:34.705 | DEBUG | changedetectionio.model:commit:670 - Committed watch fe40eb59-ccfe-4fcf-b274-321309f84f59 to fe40eb59-ccfe-4fcf-b274-321309f84f59/watch.json
2026-03-18T11:43:34.705990883Z 2026-03-18 11:43:34.705 | DEBUG | changedetectionio.store:add_watch:790 - Saved new watch fe40eb59-ccfe-4fcf-b274-321309f84f59
2026-03-18T11:43:34.706023168Z 2026-03-18 11:43:34.705 | DEBUG | changedetectionio.store:add_watch:792 - Added 'https://news.ycombinator.com/'
2026-03-18T11:43:34.706212168Z 2026-03-18 11:43:34.706 | DEBUG | changedetectionio.store:add_tag:950 - >>> Adding new tag - 'changedetection.io'
2026-03-18T11:43:34.706925645Z 2026-03-18 11:43:34.706 | DEBUG | changedetectionio.model:commit:670 - Committed tag a6262db8-b2bd-498f-9129-e2b79e9d34ec to a6262db8-b2bd-498f-9129-e2b79e9d34ec/tag.json
2026-03-18T11:43:34.707054344Z 2026-03-18 11:43:34.706 | DEBUG | changedetectionio.store:add_watch:774 - Adding URL 'https://changedetection.io/CHANGELOG.txt' - 63d54a0f-b50f-4804-a06a-561c4d9636a8
2026-03-18T11:43:34.707110968Z 2026-03-18 11:43:34.707 | DEBUG | changedetectionio.model:ensure_data_dir_exists:572 - > Creating data dir /config/63d54a0f-b50f-4804-a06a-561c4d9636a8
2026-03-18T11:43:34.707732781Z 2026-03-18 11:43:34.707 | DEBUG | changedetectionio.model:commit:670 - Committed watch 63d54a0f-b50f-4804-a06a-561c4d9636a8 to 63d54a0f-b50f-4804-a06a-561c4d9636a8/watch.json
2026-03-18T11:43:34.707766990Z 2026-03-18 11:43:34.707 | DEBUG | changedetectionio.store:add_watch:790 - Saved new watch 63d54a0f-b50f-4804-a06a-561c4d9636a8
2026-03-18T11:43:34.707832692Z 2026-03-18 11:43:34.707 | DEBUG | changedetectionio.store:add_watch:792 - Added 'https://changedetection.io/CHANGELOG.txt'
2026-03-18T11:43:34.708766142Z 2026-03-18 11:43:34.708 | INFO | changedetectionio.store:init_fresh_install:283 - Created changedetection.json for new datastore
2026-03-18T11:43:34.708833056Z 2026-03-18 11:43:34.708 | INFO | changedetectionio.store:_load_settings:93 - Loading settings from /config/changedetection.json
2026-03-18T11:43:34.708996135Z 2026-03-18 11:43:34.708 | INFO | changedetectionio.store.file_saving_datastore:load_all_watches:289 - Loading watches from individual watch.json files...
2026-03-18T11:43:34.709297261Z 2026-03-18 11:43:34.709 | DEBUG | changedetectionio.store.file_saving_datastore:load_all_watches:302 - Found 2 watch.json files in 0.000s
2026-03-18T11:43:34.709739131Z 2026-03-18 11:43:34.709 | INFO | changedetectionio.store.file_saving_datastore:load_all_watches:330 - Loaded 2 watches from disk in 0.00s (2896 watches/sec)
2026-03-18T11:43:34.709760985Z 2026-03-18 11:43:34.709 | DEBUG | changedetectionio.store:_load_watches:406 - Loaded 2 watches
2026-03-18T11:43:34.709795264Z 2026-03-18 11:43:34.709 | INFO | changedetectionio.store:_rehydrate_watches:157 - Rehydrating 2 watches...
2026-03-18T11:43:34.710038934Z 2026-03-18 11:43:34.709 | SUCCESS | changedetectionio.store:_rehydrate_watches:166 - Rehydrated 2 watches into Watch objects
2026-03-18T11:43:34.710061780Z 2026-03-18 11:43:34.709 | INFO | changedetectionio.store.file_saving_datastore:load_all_tags:412 - Loading tags from individual tag.json files...
2026-03-18T11:43:34.710222143Z 2026-03-18 11:43:34.710 | DEBUG | changedetectionio.store.file_saving_datastore:load_all_tags:427 - Found 2 tag.json files
2026-03-18T11:43:34.710573932Z 2026-03-18 11:43:34.710 | INFO | changedetectionio.store.file_saving_datastore:load_all_tags:446 - Loaded 2 tags from disk
2026-03-18T11:43:34.710595265Z 2026-03-18 11:43:34.710 | INFO | changedetectionio.store:_load_tags:437 - Loaded 2 tags from individual tag.json files
2026-03-18T11:43:34.710699875Z 2026-03-18 11:43:34.710 | INFO | changedetectionio.store:_rehydrate_tags:149 - Tag: a6262db8-b2bd-498f-9129-e2b79e9d34ec changedetection.io
2026-03-18T11:43:34.710792121Z 2026-03-18 11:43:34.710 | INFO | changedetectionio.store:_rehydrate_tags:149 - Tag: c79641e6-5b3c-4c42-b53f-d74475eed1d2 Tech news
2026-03-18T11:43:34.873850301Z /lsiopy/lib/python3.12/site-packages/requests/__init__.py:113: RequestsDependencyWarning: urllib3 (1.26.20) or chardet (7.2.0)/charset_normalizer (3.4.6) doesn't match a supported version!
2026-03-18T11:43:34.873872536Z warnings.warn(
2026-03-18T11:43:34.910427016Z 2026-03-18 11:43:34.910 | INFO | changedetectionio.realtime.socket_server:init_socketio:227 - SOCKETIO_MODE=threading: Using threading mode for Socket.IO
2026-03-18T11:43:34.910449581Z 2026-03-18 11:43:34.910 | INFO | changedetectionio.realtime.socket_server:init_socketio:234 - Platform: linux, Python: 3.12, Socket.IO mode: threading
2026-03-18T11:43:34.938747234Z 2026-03-18 11:43:34.938 | INFO | changedetectionio.realtime.socket_server:init_socketio:249 - Socket.IO: Registering connect event handler
2026-03-18T11:43:34.938785872Z 2026-03-18 11:43:34.938 | INFO | changedetectionio.realtime.socket_server:__init__:43 - SignalHandler: Connected to notification_event signal
2026-03-18T11:43:34.939990999Z 2026-03-18 11:43:34.939 | INFO | changedetectionio.realtime.socket_server:init_socketio:346 - Socket.IO initialized and attached to main Flask app
2026-03-18T11:43:34.940012803Z 2026-03-18 11:43:34.939 | INFO | changedetectionio.realtime.socket_server:init_socketio:347 - Socket.IO: Registered event handlers: []
2026-03-18T11:43:34.940047813Z 2026-03-18 11:43:34.939 | INFO | changedetectionio.flask_app:changedetection_app:892 - Socket.IO server initialized
2026-03-18T11:43:34.941290857Z 2026-03-18 11:43:34.941 | INFO | changedetectionio.flask_app:changedetection_app:982 - Starting 5 workers during app initialization
2026-03-18T11:43:34.941300606Z 2026-03-18 11:43:34.941 | INFO | changedetectionio.worker_pool:start_async_workers:117 - Starting 5 async workers (isolated threads)
2026-03-18T11:43:34.958020505Z 2026-03-18 11:43:34.957 | DEBUG | changedetectionio.flask_app:ticker_thread_check_time_launch_checks:1103 - System env MINIMUM_SECONDS_RECHECK_TIME 3
2026-03-18T11:43:34.958759022Z 2026-03-18 11:43:34.958 | INFO | changedetectionio.worker:async_update_worker:53 - Starting async worker 1 on thread 'PageFetchAsyncUpdateWorker-1' (max_jobs=10, max_runtime=3600s)
2026-03-18T11:43:34.959139237Z 2026-03-18 11:43:34.958 | DEBUG | changedetectionio.realtime.socket_server:handle_queue_length:109 - SignalHandler: Queue length update received: 0
2026-03-18T11:43:34.959514613Z 2026-03-18 11:43:34.959 | INFO | changedetectionio.worker:async_update_worker:53 - Starting async worker 0 on thread 'PageFetchAsyncUpdateWorker-0' (max_jobs=10, max_runtime=3600s)
2026-03-18T11:43:34.960893049Z 2026-03-18 11:43:34.959 | DEBUG | changedetectionio.worker_pool:claim_uuid_for_processing:239 - Worker 1 claimed UUID: fe40eb59-ccfe-4fcf-b274-321309f84f59
2026-03-18T11:43:34.961298496Z 2026-03-18 11:43:34.960 | INFO | changedetectionio.worker:async_update_worker:53 - Starting async worker 4 on thread 'PageFetchAsyncUpdateWorker-4' (max_jobs=10, max_runtime=3600s)
2026-03-18T11:43:34.961603830Z 2026-03-18 11:43:34.960 | INFO | changedetectionio.flask_app:changedetection_app:1000 - Started 1 notification worker(s)
2026-03-18T11:43:34.962310974Z 2026-03-18 11:43:34.960 | DEBUG | changedetectionio.realtime.socket_server:handle_queue_length:109 - SignalHandler: Queue length update received: 0
2026-03-18T11:43:34.962577792Z 2026-03-18 11:43:34.960 | INFO | changedetectionio.worker:async_update_worker:136 - Worker 1 processing watch UUID fe40eb59-ccfe-4fcf-b274-321309f84f59 Priority 1773834214 URL https://news.ycombinator.com/
2026-03-18T11:43:34.962837725Z 2026-03-18 11:43:34.961 | INFO | changedetectionio.worker:async_update_worker:53 - Starting async worker 2 on thread 'PageFetchAsyncUpdateWorker-2' (max_jobs=10, max_runtime=3600s)
2026-03-18T11:43:34.963132589Z 2026-03-18 11:43:34.961 | INFO | changedetectionio.worker:async_update_worker:53 - Starting async worker 3 on thread 'PageFetchAsyncUpdateWorker-3' (max_jobs=10, max_runtime=3600s)
2026-03-18T11:43:34.963748900Z 2026-03-18 11:43:34.962 | DEBUG | changedetectionio.flask_app:ticker_thread_check_time_launch_checks:1247 - > Queued watch UUID fe40eb59-ccfe-4fcf-b274-321309f84f59 last checked at 1773834215 queued at 1773834214.96 priority 1773834214 jitter 0.00s, -0.04s since last checked
2026-03-18T11:43:34.964070979Z Werkzeug appears to be used in a production deployment. Consider switching to a production web server instead.
2026-03-18T11:43:34.964148415Z 2026-03-18 11:43:34.964 | DEBUG | changedetectionio.realtime.socket_server:handle_queue_length:109 - SignalHandler: Queue length update received: 0
2026-03-18T11:43:34.964536125Z 2026-03-18 11:43:34.964 | DEBUG | changedetectionio.realtime.socket_server:handle_queue_length:109 - SignalHandler: Queue length update received: 0
2026-03-18T11:43:34.964566917Z 2026-03-18 11:43:34.964 | DEBUG | changedetectionio.flask_app:ticker_thread_check_time_launch_checks:1247 - > Queued watch UUID 63d54a0f-b50f-4804-a06a-561c4d9636a8 last checked at 0 queued at 1773834214.96 priority 1773834214 jitter 0.00s, 1773834214.96s since last checked
2026-03-18T11:43:34.965136424Z 2026-03-18 11:43:34.964 | DEBUG | changedetectionio.worker_pool:claim_uuid_for_processing:239 - Worker 0 claimed UUID: 63d54a0f-b50f-4804-a06a-561c4d9636a8
2026-03-18T11:43:34.965293631Z 2026-03-18 11:43:34.965 | INFO | changedetectionio.worker:async_update_worker:136 - Worker 0 processing watch UUID 63d54a0f-b50f-4804-a06a-561c4d9636a8 Priority 1773834214 URL https://changedetection.io/CHANGELOG.txt
2026-03-18T11:43:34.970017583Z 2026-03-18 11:43:34.969 | DEBUG | changedetectionio.realtime.socket_server:handle_watch_small_status_update:52 - Socket.IO: Received watch small status update 'Fetching page..' for UUID fe40eb59-ccfe-4fcf-b274-321309f84f59
2026-03-18T11:43:34.972052692Z 2026-03-18 11:43:34.971 | DEBUG | changedetectionio.realtime.socket_server:handle_watch_small_status_update:52 - Socket.IO: Received watch small status update 'Fetching page..' for UUID 63d54a0f-b50f-4804-a06a-561c4d9636a8
2026-03-18T11:43:34.976201145Z * Serving Flask app 'changedetectionio.flask_app'
2026-03-18T11:43:34.976214422Z * Debug mode: off
2026-03-18T11:43:34.977657578Z 2026-03-18 11:43:34.977 | INFO | changedetectionio.validate_url:is_private_hostname:79 - Hostname 'news.ycombinator.com' is NOT private/IANA restricted.
2026-03-18T11:43:34.977783932Z WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
2026-03-18T11:43:34.977794444Z * Running on all addresses (0.0.0.0)
2026-03-18T11:43:34.977803001Z * Running on http://127.0.0.1:5000
2026-03-18T11:43:34.977811047Z * Running on http://172.17.0.4:5000
2026-03-18T11:43:34.977819554Z Press CTRL+C to quit
2026-03-18T11:43:34.978150190Z 2026-03-18 11:43:34.977 | DEBUG | changedetectionio.processors.base:call_browser:186 - Using proxy 'None' for fe40eb59-ccfe-4fcf-b274-321309f84f59
2026-03-18T11:43:34.988570784Z 2026-03-18 11:43:34.988 | INFO | changedetectionio.validate_url:is_private_hostname:79 - Hostname 'news.ycombinator.com' is NOT private/IANA restricted.
2026-03-18T11:43:35.081781603Z 2026-03-18 11:43:35.081 | INFO | changedetectionio.validate_url:is_private_hostname:79 - Hostname 'changedetection.io' is NOT private/IANA restricted.
2026-03-18T11:43:35.082311199Z 2026-03-18 11:43:35.082 | DEBUG | changedetectionio.processors.base:call_browser:186 - Using proxy 'None' for 63d54a0f-b50f-4804-a06a-561c4d9636a8
2026-03-18T11:43:35.090895365Z 2026-03-18 11:43:35.090 | INFO | changedetectionio.validate_url:is_private_hostname:79 - Hostname 'changedetection.io' is NOT private/IANA restricted.
2026-03-18T11:43:35.662711772Z 2026-03-18 11:43:35.662 | DEBUG | changedetectionio.processors.magic:__init__:80 - Guessing mime type, original content_type 'text/html; charset=utf-8', mime type detected 'text/html'
2026-03-18T11:43:35.750467926Z Connection to localhost (127.0.0.1) 5000 port [tcp/*] succeeded!
2026-03-18T11:43:35.768543926Z [ls.io-init] done.
2026-03-18T11:43:35.851102745Z 2026-03-18 11:43:35.850 | WARNING | changedetectionio.content_fetchers.requests:_run_sync:174 - URL: https://changedetection.io/CHANGELOG.txt No charset in headers or meta tag, guessed encoding as 'utf-8' via chardet
2026-03-18T11:43:35.899234528Z 2026-03-18 11:43:35.899 | DEBUG | changedetectionio.processors.text_json_diff.processor:run_changedetection:566 - Watch UUID 63d54a0f-b50f-4804-a06a-561c4d9636a8 content check - Previous MD5: 8ecbee5c06742370b7b522455b920abf, Fetched MD5 8ecbee5c06742370b7b522455b920abf
2026-03-18T11:43:35.899766459Z 2026-03-18 11:43:35.899 | DEBUG | changedetectionio.worker:async_update_worker:400 - Processing watch UUID: 63d54a0f-b50f-4804-a06a-561c4d9636a8 - xpath_data length returned empty.
2026-03-18T11:43:35.902340412Z 2026-03-18 11:43:35.902 | DEBUG | changedetectionio.model:commit:670 - Committed watch 63d54a0f-b50f-4804-a06a-561c4d9636a8 to 63d54a0f-b50f-4804-a06a-561c4d9636a8/watch.json
2026-03-18T11:43:35.902947935Z 2026-03-18 11:43:35.902 | DEBUG | changedetectionio.model.Watch:_brotli_save:82 - Starting brotli streaming compression of 137420 bytes.
2026-03-18T11:43:35.941850774Z 2026-03-18 11:43:35.941 | DEBUG | changedetectionio.model.Watch:_brotli_save:108 - Finished brotli compression - From 137420 to 46390 bytes.
2026-03-18T11:43:36.009906798Z 2026-03-18 11:43:36.009 | DEBUG | changedetectionio.model.Watch:_brotli_save:82 - Starting brotli streaming compression of 137420 bytes.
2026-03-18T11:43:36.062306275Z 2026-03-18 11:43:36.061 | DEBUG | changedetectionio.model.Watch:_brotli_save:108 - Finished brotli compression - From 137420 to 46390 bytes.
2026-03-18T11:43:36.125517483Z 2026-03-18 11:43:36.125 | DEBUG | changedetectionio.model.Watch:history:462 - Reading watch history index for 63d54a0f-b50f-4804-a06a-561c4d9636a8
2026-03-18T11:43:36.140208718Z 2026-03-18 11:43:36.139 | DEBUG | changedetectionio.model:commit:670 - Committed watch 63d54a0f-b50f-4804-a06a-561c4d9636a8 to 63d54a0f-b50f-4804-a06a-561c4d9636a8/watch.json
2026-03-18T11:43:36.224968508Z 2026-03-18 11:43:36.224 | DEBUG | changedetectionio.worker:async_update_worker:549 - Worker 0 completed watch 63d54a0f-b50f-4804-a06a-561c4d9636a8 in 1.22s
2026-03-18T11:43:36.228465991Z 2026-03-18 11:43:36.228 | DEBUG | changedetectionio.processors.text_json_diff.processor:run_changedetection:566 - Watch UUID fe40eb59-ccfe-4fcf-b274-321309f84f59 content check - Previous MD5: d25c8bd63f0d6ce962b78fef3baba0a2, Fetched MD5 d25c8bd63f0d6ce962b78fef3baba0a2
2026-03-18T11:43:36.228487073Z 2026-03-18 11:43:36.228 | DEBUG | changedetectionio.worker_pool:release_uuid_from_processing:255 - Worker 0 released UUID: 63d54a0f-b50f-4804-a06a-561c4d9636a8
2026-03-18T11:43:36.229601578Z 2026-03-18 11:43:36.229 | DEBUG | changedetectionio.worker:async_update_worker:400 - Processing watch UUID: fe40eb59-ccfe-4fcf-b274-321309f84f59 - xpath_data length returned empty.
2026-03-18T11:43:36.230590359Z 2026-03-18 11:43:36.230 | DEBUG | changedetectionio.model:commit:670 - Committed watch fe40eb59-ccfe-4fcf-b274-321309f84f59 to fe40eb59-ccfe-4fcf-b274-321309f84f59/watch.json
2026-03-18T11:43:36.234413838Z 2026-03-18 11:43:36.234 | DEBUG | changedetectionio.model.Watch:_brotli_save:82 - Starting brotli streaming compression of 34375 bytes.
2026-03-18T11:43:36.239690774Z 2026-03-18 11:43:36.239 | DEBUG | changedetectionio.model.Watch:_brotli_save:108 - Finished brotli compression - From 34375 to 5176 bytes.
2026-03-18T11:43:36.297012002Z 2026-03-18 11:43:36.296 | DEBUG | changedetectionio.model.Watch:history:462 - Reading watch history index for fe40eb59-ccfe-4fcf-b274-321309f84f59
2026-03-18T11:43:36.297346395Z 2026-03-18 11:43:36.297 | DEBUG | changedetectionio.worker:async_update_worker:475 - UUID: fe40eb59-ccfe-4fcf-b274-321309f84f59 Page <title> is 'Hacker News'
2026-03-18T11:43:36.298079392Z 2026-03-18 11:43:36.297 | DEBUG | changedetectionio.model:commit:670 - Committed watch fe40eb59-ccfe-4fcf-b274-321309f84f59 to fe40eb59-ccfe-4fcf-b274-321309f84f59/watch.json
2026-03-18T11:43:36.374415480Z 2026-03-18 11:43:36.374 | DEBUG | changedetectionio.worker:async_update_worker:549 - Worker 1 completed watch fe40eb59-ccfe-4fcf-b274-321309f84f59 in 1.37s
2026-03-18T11:43:36.374437905Z 2026-03-18 11:43:36.374 | DEBUG | changedetectionio.worker_pool:release_uuid_from_processing:255 - Worker 1 released UUID: fe40eb59-ccfe-4fcf-b274-321309f84f59
2026-03-18T11:43:37.372503339Z 2026-03-18 11:43:37.372 | INFO | changedetectionio.processors:_available_processors_cached:210 - DISABLED_PROCESSORS set, disabling: ['image_ssim_diff']
2026-03-18T11:43:37.372552848Z 2026-03-18 11:43:37.372 | DEBUG | changedetectionio.processors:_available_processors_cached:218 - Skipping processor 'image_ssim_diff' (in DISABLED_PROCESSORS)
2026-03-18T11:43:37.576215414Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET / HTTP/1.1" 200 -
2026-03-18T11:43:37.585064053Z 2026-03-18 11:43:37.584 | INFO | changedetectionio.processors:_available_processors_cached:210 - DISABLED_PROCESSORS set, disabling: ['image_ssim_diff']
2026-03-18T11:43:37.585090215Z 2026-03-18 11:43:37.584 | DEBUG | changedetectionio.processors:_available_processors_cached:218 - Skipping processor 'image_ssim_diff' (in DISABLED_PROCESSORS)
2026-03-18T11:43:37.595624368Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET / HTTP/1.1" 200 -
2026-03-18T11:43:37.614199593Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/styles/flag-icons.min.css HTTP/1.1" 200 -
2026-03-18T11:43:37.618032191Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/socket.io.min.js HTTP/1.1" 200 -
2026-03-18T11:43:37.618782491Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/styles/styles.css?v=0.54.6 HTTP/1.1" 200 -
2026-03-18T11:43:37.619513233Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/styles/pure-min.css HTTP/1.1" 200 -
2026-03-18T11:43:37.619987147Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/jquery-3.6.0.min.js HTTP/1.1" 200 -
2026-03-18T11:43:37.620230156Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/images/pause.svg HTTP/1.1" 200 -
2026-03-18T11:43:37.633278331Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/images/bell-off.svg HTTP/1.1" 200 -
2026-03-18T11:43:37.635675218Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/images/google-chrome-icon.png HTTP/1.1" 200 -
2026-03-18T11:43:37.641969373Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/modal.js HTTP/1.1" 200 -
2026-03-18T11:43:37.646580919Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/toast.js HTTP/1.1" 200 -
2026-03-18T11:43:37.679975095Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/realtime.js HTTP/1.1" 200 -
2026-03-18T11:43:37.680039445Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/watch-overview.js HTTP/1.1" 200 -
2026-03-18T11:43:37.680996021Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/csrf.js HTTP/1.1" 200 -
2026-03-18T11:43:37.681507651Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/favicons/site.webmanifest HTTP/1.1" 200 -
2026-03-18T11:43:37.682015784Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/feather-icons.min.js HTTP/1.1" 200 -
2026-03-18T11:43:37.682541964Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/images/play.svg HTTP/1.1" 200 -
2026-03-18T11:43:37.693409297Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/images/generic_feed-icon.svg HTTP/1.1" 200 -
2026-03-18T11:43:37.695578696Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/toggle-theme.js HTTP/1.1" 200 -
2026-03-18T11:43:37.695886736Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/images/spread.svg HTTP/1.1" 200 -
2026-03-18T11:43:37.699036920Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/hamburger-menu.js HTTP/1.1" 200 -
2026-03-18T11:43:37.699298667Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/language-selector.js HTTP/1.1" 200 -
2026-03-18T11:43:37.700770401Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/search-modal.js HTTP/1.1" 200 -
2026-03-18T11:43:37.707779975Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/js/flask-toast-bridge.js HTTP/1.1" 200 -
2026-03-18T11:43:37.708173207Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/flags/1x1/us.svg HTTP/1.1" 200 -
2026-03-18T11:43:37.769218685Z 2026-03-18 11:43:37.769 | DEBUG | changedetectionio.realtime.socket_server:handle_connect:310 - Socket.IO: Sent initial queue size 0 to new client
2026-03-18T11:43:37.769257893Z 2026-03-18 11:43:37.769 | INFO | changedetectionio.realtime.socket_server:handle_connect:314 - Socket.IO: Client connected
2026-03-18T11:43:37.771213992Z 172.17.0.3 - - [18/Mar/2026 11:43:37] "GET /static/favicons/favicon.ico HTTP/1.1" 200 -
2026-03-18T11:43:48.117770569Z 2026-03-18 11:43:48.117 | INFO | changedetectionio.realtime.socket_server:handle_disconnect:320 - Socket.IO: Client disconnected
2026-03-18T11:43:48.118258802Z 172.17.0.3 - - [18/Mar/2026 11:43:48] "GET /socket.io/?EIO=4&transport=websocket HTTP/1.1" 500 -
2026-03-18T11:43:48.120694938Z Error on request:
2026-03-18T11:43:48.120712032Z Traceback (most recent call last):
2026-03-18T11:43:48.120718445Z File "/lsiopy/lib/python3.12/site-packages/werkzeug/serving.py", line 370, in run_wsgi
2026-03-18T11:43:48.120724487Z execute(self.server.app)
2026-03-18T11:43:48.120730259Z File "/lsiopy/lib/python3.12/site-packages/werkzeug/serving.py", line 336, in execute
2026-03-18T11:43:48.120736211Z write(b"")
2026-03-18T11:43:48.120742073Z File "/lsiopy/lib/python3.12/site-packages/werkzeug/serving.py", line 261, in write
2026-03-18T11:43:48.120749437Z assert status_set is not None, "write() before start_response"
2026-03-18T11:43:48.120756472Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2026-03-18T11:43:48.120762764Z AssertionError: write() before start_response