2025-07-09T11:05:36.977618401Z [migrations] started 2025-07-09T11:05:36.977746940Z [migrations] no migrations found 2025-07-09T11:05:36.997256362Z usermod: no changes 2025-07-09T11:05:37.003120159Z ─────────────────────────────────────── 2025-07-09T11:05:37.003137494Z 2025-07-09T11:05:37.003141392Z ██╗ ███████╗██╗ ██████╗ 2025-07-09T11:05:37.003145220Z ██║ ██╔════╝██║██╔═══██╗ 2025-07-09T11:05:37.003149168Z ██║ ███████╗██║██║ ██║ 2025-07-09T11:05:37.003152865Z ██║ ╚════██║██║██║ ██║ 2025-07-09T11:05:37.003156512Z ███████╗███████║██║╚██████╔╝ 2025-07-09T11:05:37.003160280Z ╚══════╝╚══════╝╚═╝ ╚═════╝ 2025-07-09T11:05:37.003164037Z 2025-07-09T11:05:37.003167524Z Brought to you by linuxserver.io 2025-07-09T11:05:37.003171132Z ─────────────────────────────────────── 2025-07-09T11:05:37.003484002Z 2025-07-09T11:05:37.003491797Z To support LSIO projects visit: 2025-07-09T11:05:37.003495485Z https://www.linuxserver.io/donate/ 2025-07-09T11:05:37.003499172Z 2025-07-09T11:05:37.003502810Z ─────────────────────────────────────── 2025-07-09T11:05:37.003507249Z GID/UID 2025-07-09T11:05:37.003510946Z ─────────────────────────────────────── 2025-07-09T11:05:37.007775453Z 2025-07-09T11:05:37.007784531Z User UID: 911 2025-07-09T11:05:37.007788349Z User GID: 911 2025-07-09T11:05:37.007792136Z ─────────────────────────────────────── 2025-07-09T11:05:37.009416226Z Linuxserver.io version: 0.50.5-ls202 2025-07-09T11:05:37.009686981Z Build-date: 2025-07-09T11:00:24+00:00 2025-07-09T11:05:37.009694497Z ─────────────────────────────────────── 2025-07-09T11:05:37.009698475Z 2025-07-09T11:05:37.058537061Z [custom-init] No custom files found, skipping... 2025-07-09T11:05:37.286033495Z /app/changedetection/changedetectionio/html_tools.py:431: SyntaxWarning: invalid escape sequence '\[' 2025-07-09T11:05:37.286050058Z pattern = '<!\[CDATA\[(\s*(?:.(?<!\]\]>)\s*)*)\]\]>' 2025-07-09T11:05:37.286321224Z /app/changedetection/changedetectionio/html_tools.py:495: SyntaxWarning: invalid escape sequence '\s' 2025-07-09T11:05:37.286343509Z content = re.sub('<!--\s+-->', '', content) 2025-07-09T11:05:37.360096200Z 2025-07-09 11:05:37.359 | DEBUG | changedetectionio.content_fetchers:<module>:61 - Falling back to selenium as fetcher 2025-07-09T11:05:37.490700752Z 2025-07-09 11:05:37.490 | INFO | changedetectionio.flask_app:<module>:92 - System locale default is (None, None) 2025-07-09T11:05:37.491576656Z 2025-07-09 11:05:37.491 | SUCCESS | changedetectionio:main:122 - changedetection.io version 0.50.5 starting. 2025-07-09T11:05:37.504710421Z 2025-07-09 11:05:37.504 | INFO | changedetectionio.store:__init__:50 - Datastore path is '/config/url-watches.json' 2025-07-09T11:05:37.504996316Z 2025-07-09 11:05:37.504 | CRITICAL | changedetectionio.store:__init__:100 - No JSON DB found at /config/url-watches.json, creating JSON store at /config 2025-07-09T11:05:37.574829816Z 2025-07-09 11:05:37.574 | DEBUG | changedetectionio.store:add_tag:591 - >>> Adding new tag - 'tech news' 2025-07-09T11:05:37.621010451Z 2025-07-09 11:05:37.620 | DEBUG | changedetectionio.store:add_watch:367 - Adding URL 'https://news.ycombinator.com/' - 89cf5fc2-f969-4693-837d-84b6abe17e32 2025-07-09T11:05:37.621035100Z 2025-07-09 11:05:37.620 | DEBUG | changedetectionio.model.Watch:ensure_data_dir_exists:73 - > Creating data dir /config/89cf5fc2-f969-4693-837d-84b6abe17e32 2025-07-09T11:05:37.621143368Z 2025-07-09 11:05:37.621 | INFO | changedetectionio.store:sync_to_json:397 - Saving JSON.. 2025-07-09T11:05:37.622492014Z 2025-07-09 11:05:37.622 | DEBUG | changedetectionio.store:add_watch:383 - Added 'https://news.ycombinator.com/' 2025-07-09T11:05:37.622513928Z 2025-07-09 11:05:37.622 | DEBUG | changedetectionio.store:add_tag:591 - >>> Adding new tag - 'changedetection.io' 2025-07-09T11:05:37.622911468Z 2025-07-09 11:05:37.622 | DEBUG | changedetectionio.store:add_watch:367 - Adding URL 'https://changedetection.io/CHANGELOG.txt' - 52f6ddd3-48e4-4c6c-a7b5-39c40911551c 2025-07-09T11:05:37.622933262Z 2025-07-09 11:05:37.622 | DEBUG | changedetectionio.model.Watch:ensure_data_dir_exists:73 - > Creating data dir /config/52f6ddd3-48e4-4c6c-a7b5-39c40911551c 2025-07-09T11:05:37.623010648Z 2025-07-09 11:05:37.622 | INFO | changedetectionio.store:sync_to_json:397 - Saving JSON.. 2025-07-09T11:05:37.624653095Z 2025-07-09 11:05:37.624 | DEBUG | changedetectionio.store:add_watch:383 - Added 'https://changedetection.io/CHANGELOG.txt' 2025-07-09T11:05:37.625501944Z 2025-07-09 11:05:37.625 | INFO | changedetectionio.store:sync_to_json:397 - Saving JSON.. 2025-07-09T11:05:37.680634453Z /app/changedetection/changedetectionio/blueprint/backups/__init__.py:124: SyntaxWarning: invalid escape sequence '\d' 2025-07-09T11:05:37.680660125Z backup_filename_regex = BACKUP_FILENAME_FORMAT.format("\d+") 2025-07-09T11:05:37.770022426Z 2025-07-09 11:05:37.769 | INFO | changedetectionio.realtime.socket_server:init_socketio:275 - SOCKETIO_MODE=threading: Using threading mode for Socket.IO 2025-07-09T11:05:37.770056264Z 2025-07-09 11:05:37.769 | INFO | changedetectionio.realtime.socket_server:init_socketio:282 - Platform: linux, Python: 3.12, Socket.IO mode: threading 2025-07-09T11:05:37.806116131Z 2025-07-09 11:05:37.805 | INFO | changedetectionio.realtime.socket_server:init_socketio:294 - Socket.IO: Registering connect event handler 2025-07-09T11:05:37.806189188Z 2025-07-09 11:05:37.806 | INFO | changedetectionio.realtime.socket_server:__init__:35 - SignalHandler: Connected to notification_event signal 2025-07-09T11:05:37.806730207Z 2025-07-09 11:05:37.806 | INFO | changedetectionio.realtime.socket_server:polling_emit_running_or_queued_watches_threaded:119 - Queue update thread started (threading mode) 2025-07-09T11:05:37.806910270Z 2025-07-09 11:05:37.806 | INFO | changedetectionio.realtime.socket_server:__init__:44 - Started polling thread using threading (eventlet-free) 2025-07-09T11:05:37.808004924Z 2025-07-09 11:05:37.807 | INFO | changedetectionio.realtime.socket_server:init_socketio:394 - Socket.IO initialized and attached to main Flask app 2025-07-09T11:05:37.808040385Z 2025-07-09 11:05:37.807 | INFO | changedetectionio.realtime.socket_server:init_socketio:395 - Socket.IO: Registered event handlers: [] 2025-07-09T11:05:37.808054724Z 2025-07-09 11:05:37.807 | INFO | changedetectionio.flask_app:changedetection_app:507 - Socket.IO server initialized 2025-07-09T11:05:37.809525145Z 2025-07-09 11:05:37.809 | INFO | changedetectionio.flask_app:changedetection_app:597 - Starting 10 workers during app initialization 2025-07-09T11:05:37.810016414Z 2025-07-09 11:05:37.809 | INFO | changedetectionio.worker_handler:start_async_event_loop:29 - Starting async event loop for workers 2025-07-09T11:05:37.810570720Z 2025-07-09 11:05:37.810 | DEBUG | changedetectionio.worker_handler:start_async_event_loop:37 - Event loop created and set: <_UnixSelectorEventLoop running=False closed=False debug=False> 2025-07-09T11:05:38.110418513Z 2025-07-09 11:05:38.110 | INFO | changedetectionio.worker_handler:start_async_workers:76 - Starting 10 async workers 2025-07-09T11:05:38.111475542Z 2025-07-09 11:05:38.111 | DEBUG | changedetectionio.flask_app:ticker_thread_check_time_launch_checks:702 - System env MINIMUM_SECONDS_RECHECK_TIME 3 2025-07-09T11:05:38.112340583Z 2025-07-09 11:05:38.112 | DEBUG | changedetectionio.flask_app:ticker_thread_check_time_launch_checks:821 - > Queued watch UUID 89cf5fc2-f969-4693-837d-84b6abe17e32 last checked at 0 queued at 1752059138.11 priority 1752059138 jitter 0.00s, 1752059138.11s since last checked 2025-07-09T11:05:38.112831362Z 2025-07-09 11:05:38.112 | DEBUG | changedetectionio.flask_app:ticker_thread_check_time_launch_checks:821 - > Queued watch UUID 52f6ddd3-48e4-4c6c-a7b5-39c40911551c last checked at 0 queued at 1752059138.11 priority 1752059138 jitter 0.00s, 1752059138.11s since last checked 2025-07-09T11:05:38.121687103Z Werkzeug appears to be used in a production deployment. Consider switching to a production web server instead. 2025-07-09T11:05:38.122141467Z 2025-07-09 11:05:38.121 | INFO | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 0 2025-07-09T11:05:38.122222481Z * Serving Flask app 'changedetectionio.flask_app' 2025-07-09T11:05:38.122246639Z * Debug mode: off 2025-07-09T11:05:38.122297051Z 2025-07-09 11:05:38.122 | INFO | changedetectionio.async_update_worker:async_update_worker:33 - Starting async worker 0 2025-07-09T11:05:38.122432834Z 2025-07-09 11:05:38.122 | INFO | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 1 2025-07-09T11:05:38.122479498Z 2025-07-09 11:05:38.122 | INFO | changedetectionio.async_update_worker:async_update_worker:33 - Starting async worker 1 2025-07-09T11:05:38.122683609Z 2025-07-09 11:05:38.122 | INFO | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 2 2025-07-09T11:05:38.122717778Z 2025-07-09 11:05:38.122 | INFO | changedetectionio.async_update_worker:async_update_worker:33 - Starting async worker 2 2025-07-09T11:05:38.122774422Z 2025-07-09 11:05:38.122 | INFO | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 3 2025-07-09T11:05:38.122824793Z 2025-07-09 11:05:38.122 | INFO | changedetectionio.async_update_worker:async_update_worker:33 - Starting async worker 3 2025-07-09T11:05:38.122948532Z 2025-07-09 11:05:38.122 | INFO | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 4 2025-07-09T11:05:38.122999605Z 2025-07-09 11:05:38.122 | INFO | changedetectionio.async_update_worker:async_update_worker:33 - Starting async worker 4 2025-07-09T11:05:38.123059305Z 2025-07-09 11:05:38.122 | INFO | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 5 2025-07-09T11:05:38.123097442Z 2025-07-09 11:05:38.123 | INFO | changedetectionio.async_update_worker:async_update_worker:33 - Starting async worker 5 2025-07-09T11:05:38.123176281Z 2025-07-09 11:05:38.123 | INFO | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 6 2025-07-09T11:05:38.123185510Z 2025-07-09 11:05:38.123 | INFO | changedetectionio.async_update_worker:async_update_worker:33 - Starting async worker 6 2025-07-09T11:05:38.123246573Z 2025-07-09 11:05:38.123 | INFO | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 7 2025-07-09T11:05:38.123289739Z 2025-07-09 11:05:38.123 | INFO | changedetectionio.async_update_worker:async_update_worker:33 - Starting async worker 7 2025-07-09T11:05:38.123356524Z 2025-07-09 11:05:38.123 | INFO | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 8 2025-07-09T11:05:38.123403949Z 2025-07-09 11:05:38.123 | INFO | changedetectionio.async_update_worker:async_update_worker:33 - Starting async worker 8 2025-07-09T11:05:38.123460273Z 2025-07-09 11:05:38.123 | INFO | changedetectionio.worker_handler:start_single_async_worker:106 - Starting async worker 9 2025-07-09T11:05:38.123499592Z 2025-07-09 11:05:38.123 | INFO | changedetectionio.async_update_worker:async_update_worker:33 - Starting async worker 9 2025-07-09T11:05:38.123801149Z 2025-07-09 11:05:38.123 | DEBUG | changedetectionio.realtime.socket_server:handle_queue_length:86 - SignalHandler: Queue length update received: 1 2025-07-09T11:05:38.124015391Z 2025-07-09 11:05:38.123 | DEBUG | changedetectionio.realtime.socket_server:handle_queue_length:86 - SignalHandler: Queue length update received: 2 2025-07-09T11:05:38.124043317Z 2025-07-09 11:05:38.123 | DEBUG | changedetectionio.realtime.socket_server:handle_queue_length:86 - SignalHandler: Queue length update received: 1 2025-07-09T11:05:38.124095392Z 2025-07-09 11:05:38.124 | DEBUG | changedetectionio.worker_handler:set_uuid_processing:179 - Started processing UUID: 89cf5fc2-f969-4693-837d-84b6abe17e32 2025-07-09T11:05:38.124164070Z 2025-07-09 11:05:38.124 | INFO | changedetectionio.async_update_worker:async_update_worker:70 - Worker 0 processing watch UUID 89cf5fc2-f969-4693-837d-84b6abe17e32 Priority 1752059138 URL https://news.ycombinator.com/ 2025-07-09T11:05:38.129051130Z WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. 2025-07-09T11:05:38.129068254Z * Running on all addresses (0.0.0.0) 2025-07-09T11:05:38.129074116Z * Running on http://127.0.0.1:5000 2025-07-09T11:05:38.129080469Z * Running on http://172.17.0.4:5000 2025-07-09T11:05:38.129102744Z Press CTRL+C to quit 2025-07-09T11:05:38.144025301Z 2025-07-09 11:05:38.143 | DEBUG | changedetectionio.realtime.socket_server:handle_queue_length:86 - SignalHandler: Queue length update received: 0 2025-07-09T11:05:38.144109751Z 2025-07-09 11:05:38.144 | DEBUG | changedetectionio.worker_handler:set_uuid_processing:179 - Started processing UUID: 52f6ddd3-48e4-4c6c-a7b5-39c40911551c 2025-07-09T11:05:38.144177327Z 2025-07-09 11:05:38.144 | INFO | changedetectionio.async_update_worker:async_update_worker:70 - Worker 1 processing watch UUID 52f6ddd3-48e4-4c6c-a7b5-39c40911551c Priority 1752059138 URL https://changedetection.io/CHANGELOG.txt 2025-07-09T11:05:38.878638905Z 2025-07-09 11:05:38.878 | DEBUG | changedetectionio.processors.text_json_diff.processor:run_changedetection:367 - Watch UUID 52f6ddd3-48e4-4c6c-a7b5-39c40911551c content check - Previous MD5: f3f3655ff50521c327206892644b4432, Fetched MD5 f3f3655ff50521c327206892644b4432 2025-07-09T11:05:39.086132012Z Connection to localhost (127.0.0.1) 5000 port [tcp/*] succeeded! 2025-07-09T11:05:39.104587312Z [ls.io-init] done. 2025-07-09T11:05:39.233172879Z 2025-07-09 11:05:39.232 | DEBUG | changedetectionio.model.Watch:history:200 - Reading watch history index for 52f6ddd3-48e4-4c6c-a7b5-39c40911551c 2025-07-09T11:05:39.233415768Z 2025-07-09 11:05:39.233 | DEBUG | changedetectionio.worker_handler:set_uuid_processing:182 - Finished processing UUID: 52f6ddd3-48e4-4c6c-a7b5-39c40911551c 2025-07-09T11:05:39.233661833Z 2025-07-09 11:05:39.233 | DEBUG | changedetectionio.async_update_worker:async_update_worker:380 - Worker 1 completed watch 52f6ddd3-48e4-4c6c-a7b5-39c40911551c in 1.23s 2025-07-09T11:05:39.260853012Z 2025-07-09 11:05:39.260 | DEBUG | changedetectionio.processors.text_json_diff.processor:run_changedetection:367 - Watch UUID 89cf5fc2-f969-4693-837d-84b6abe17e32 content check - Previous MD5: bf055901303850bd374381e8e7243736, Fetched MD5 bf055901303850bd374381e8e7243736 2025-07-09T11:05:39.380414069Z 2025-07-09 11:05:39.380 | DEBUG | changedetectionio.model.Watch:history:200 - Reading watch history index for 89cf5fc2-f969-4693-837d-84b6abe17e32 2025-07-09T11:05:39.380669573Z 2025-07-09 11:05:39.380 | DEBUG | changedetectionio.worker_handler:set_uuid_processing:182 - Finished processing UUID: 89cf5fc2-f969-4693-837d-84b6abe17e32 2025-07-09T11:05:39.380966812Z 2025-07-09 11:05:39.380 | DEBUG | changedetectionio.async_update_worker:async_update_worker:380 - Worker 0 completed watch 89cf5fc2-f969-4693-837d-84b6abe17e32 in 1.38s 2025-07-09T11:05:58.275204085Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET / HTTP/1.1" 200 - 2025-07-09T11:05:58.293327686Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET / HTTP/1.1" 200 - 2025-07-09T11:05:58.308399233Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/images/google-chrome-icon.png HTTP/1.1" 200 - 2025-07-09T11:05:58.311593785Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/styles/pure-min.css HTTP/1.1" 200 - 2025-07-09T11:05:58.312462895Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/images/spread-white.svg HTTP/1.1" 200 - 2025-07-09T11:05:58.313650125Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/js/socket.io.min.js HTTP/1.1" 200 - 2025-07-09T11:05:58.316512389Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/styles/styles.css?v=0.50.5 HTTP/1.1" 200 - 2025-07-09T11:05:58.319380864Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/images/play.svg HTTP/1.1" 200 - 2025-07-09T11:05:58.320008668Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/images/pause.svg HTTP/1.1" 200 - 2025-07-09T11:05:58.324018202Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/js/jquery-3.6.0.min.js HTTP/1.1" 200 - 2025-07-09T11:05:58.325306566Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/images/bell-off.svg HTTP/1.1" 200 - 2025-07-09T11:05:58.329311049Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/js/csrf.js HTTP/1.1" 200 - 2025-07-09T11:05:58.335183102Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/js/feather-icons.min.js HTTP/1.1" 200 - 2025-07-09T11:05:58.336899328Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/js/realtime.js HTTP/1.1" 200 - 2025-07-09T11:05:58.363706554Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/js/watch-overview.js HTTP/1.1" 200 - 2025-07-09T11:05:58.365174339Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/images/spread.svg HTTP/1.1" 200 - 2025-07-09T11:05:58.369954995Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/images/generic_feed-icon.svg HTTP/1.1" 200 - 2025-07-09T11:05:58.370593190Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/js/toggle-theme.js HTTP/1.1" 200 - 2025-07-09T11:05:58.467312615Z 2025-07-09 11:05:58.467 | DEBUG | changedetectionio.realtime.socket_server:handle_connect:345 - Socket.IO: Sent initial queue size 0 to new client 2025-07-09T11:05:58.467346283Z 2025-07-09 11:05:58.467 | INFO | changedetectionio.realtime.socket_server:handle_connect:349 - Socket.IO: Client connected 2025-07-09T11:05:58.467989578Z 172.17.0.3 - - [09/Jul/2025 11:05:58] "GET /static/favicons/favicon.ico HTTP/1.1" 200 - 2025-07-09T11:06:08.825999162Z 2025-07-09 11:06:08.825 | INFO | changedetectionio.realtime.socket_server:handle_disconnect:355 - Socket.IO: Client disconnected 2025-07-09T11:06:08.826645253Z 172.17.0.3 - - [09/Jul/2025 11:06:08] "GET /socket.io/?EIO=4&transport=websocket HTTP/1.1" 500 - 2025-07-09T11:06:08.828087407Z Error on request: 2025-07-09T11:06:08.828110323Z Traceback (most recent call last): 2025-07-09T11:06:08.828116034Z File "/lsiopy/lib/python3.12/site-packages/werkzeug/serving.py", line 370, in run_wsgi 2025-07-09T11:06:08.828121585Z execute(self.server.app) 2025-07-09T11:06:08.828127117Z File "/lsiopy/lib/python3.12/site-packages/werkzeug/serving.py", line 336, in execute 2025-07-09T11:06:08.828132798Z write(b"") 2025-07-09T11:06:08.828138079Z File "/lsiopy/lib/python3.12/site-packages/werkzeug/serving.py", line 261, in write 2025-07-09T11:06:08.828143520Z assert status_set is not None, "write() before start_response" 2025-07-09T11:06:08.828148961Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-07-09T11:06:08.828155133Z AssertionError: write() before start_response