This commit includes general updates to application configuration, core data models, and various web application components (knowledge base, error handling, static assets, and websocket server). It also refreshes the Python 3.11 bytecode cache, likely due to underlying code changes and environment alignment.
5993 lines
717 KiB
Plaintext
5993 lines
717 KiB
Plaintext
2025-12-07 22:35:31,916 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-07 22:35:31,916 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-07 22:35:31,935 - __main__ - ERROR - 启动失败: unexpected indent (app.py, line 703)
|
||
2025-12-07 22:35:34,855 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-07 22:35:34,855 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-07 22:35:34,894 - __main__ - ERROR - 启动失败: unexpected indent (app.py, line 703)
|
||
2025-12-07 22:38:40,362 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-07 22:38:40,362 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-07 22:38:47,496 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-07 22:38:50,400 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-07 22:38:50,400 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-07 22:38:50,531 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://192.168.31.202:5000
|
||
2025-12-07 22:38:50,531 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-07 22:38:51,090 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 22:38:51,498 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-07 22:38:51,514 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-07 22:38:51,516 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-07 22:38:53,504 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 22:38:53,802 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/js/main.js?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,818 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/css/main.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,830 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/css/variables.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,830 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/css/components.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,834 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/css/layout.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,890 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/js/core/utils.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,890 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,890 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/js/core/router.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,898 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/js/core/websocket.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,907 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/js/components/navbar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,909 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/js/components/sidebar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,914 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/js/components/modal.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,931 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[36mGET /static/js/pages/login.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:53,931 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:53] "[33mGET /sw.js HTTP/1.1[0m" 404 -
|
||
2025-12-07 22:38:54,298 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 22:38:54,340 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/main.js?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,340 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/css/main.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,366 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/css/variables.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,380 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/css/components.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,380 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/css/layout.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,410 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/core/utils.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,423 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,427 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/core/router.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,427 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/core/websocket.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,442 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/components/navbar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,442 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/components/sidebar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,442 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/components/modal.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,481 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/pages/login.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,490 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[33mGET /sw.js HTTP/1.1[0m" 404 -
|
||
2025-12-07 22:38:54,833 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 22:38:54,859 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/css/main.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,867 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/main.js?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,885 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/css/variables.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,890 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/css/components.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,890 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/css/layout.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,915 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/core/utils.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,915 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,923 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/core/router.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,923 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/core/websocket.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,936 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/components/navbar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,940 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/components/sidebar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,947 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/components/modal.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,970 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[36mGET /static/js/pages/login.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 22:38:54,970 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:38:54] "[33mGET /sw.js HTTP/1.1[0m" 404 -
|
||
2025-12-07 22:39:02,958 - src.web.error_handlers - ERROR - 错误响应: 用户名或密码错误 - None
|
||
2025-12-07 22:39:02,958 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:39:02] "[31m[1mPOST /api/login HTTP/1.1[0m" 401 -
|
||
2025-12-07 22:42:12,287 - src.core.database - ERROR - 数据库操作失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 22:42:12,287 - src.web.error_handlers - ERROR - 未处理错误 login: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 22:42:12,287 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:42:12] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 22:43:22,951 - src.web.error_handlers - ERROR - 未处理错误 login: Instance <User at 0x2235dabe8d0> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3)
|
||
2025-12-07 22:43:22,951 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:43:22] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 22:44:23,984 - src.web.error_handlers - ERROR - 未处理错误 login: Instance <User at 0x2235daaaf90> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3)
|
||
2025-12-07 22:44:23,984 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:44:23] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 22:45:00,229 - src.web.error_handlers - ERROR - 未处理错误 login: Instance <User at 0x2235daab6d0> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3)
|
||
2025-12-07 22:45:00,229 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:45:00] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 22:45:22,453 - src.web.error_handlers - ERROR - 未处理错误 login: Instance <User at 0x2235daa8dd0> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3)
|
||
2025-12-07 22:45:22,453 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:45:22] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 22:46:50,929 - src.web.error_handlers - ERROR - 未处理错误 login: Instance <User at 0x2235da91510> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3)
|
||
2025-12-07 22:46:50,929 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:46:50] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 22:47:31,069 - src.web.error_handlers - ERROR - 未处理错误 login: Instance <User at 0x2235da91450> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3)
|
||
2025-12-07 22:47:31,069 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:47:31] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 22:48:52,888 - src.web.error_handlers - ERROR - 未处理错误 login: Instance <User at 0x2235da91250> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3)
|
||
2025-12-07 22:48:52,888 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:48:52] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 22:49:30,361 - src.web.error_handlers - ERROR - 未处理错误 login: Instance <User at 0x2235da902d0> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3)
|
||
2025-12-07 22:49:30,361 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:49:30] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 22:50:24,422 - src.web.error_handlers - ERROR - 未处理错误 login: Instance <User at 0x2235da90b90> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3)
|
||
2025-12-07 22:50:24,422 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 22:50:24] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 23:11:26,193 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-07 23:11:26,193 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-07 23:11:32,645 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-07 23:11:35,621 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-07 23:11:35,637 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-07 23:11:35,797 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://192.168.31.202:5000
|
||
2025-12-07 23:11:35,805 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-07 23:11:36,246 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:11:36,639 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-07 23:11:36,662 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-07 23:11:36,662 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-07 23:11:38,588 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:11:38,864 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "[36mGET /static/js/main.js?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:38,884 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "[36mGET /static/css/main.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:38,896 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "GET /static/css/variables.css HTTP/1.1" 200 -
|
||
2025-12-07 23:11:38,896 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "GET /static/css/components.css HTTP/1.1" 200 -
|
||
2025-12-07 23:11:38,896 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "GET /static/css/layout.css HTTP/1.1" 200 -
|
||
2025-12-07 23:11:38,964 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "[36mGET /static/js/core/utils.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:38,971 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:38,971 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "[36mGET /static/js/core/router.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:38,977 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "[36mGET /static/js/core/websocket.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:38,987 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "[36mGET /static/js/components/sidebar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:38,987 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "GET /static/js/components/navbar.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:38,987 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:38] "[36mGET /static/js/components/modal.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,029 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[33mGET /sw.js HTTP/1.1[0m" 404 -
|
||
2025-12-07 23:11:39,029 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "GET /static/js/pages/dashboard.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:39,086 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/core/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,397 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:11:39,457 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/main.js?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,457 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/css/main.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,471 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/css/variables.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,480 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/css/components.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,484 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/css/layout.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,503 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/core/utils.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,513 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,522 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/core/router.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,522 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/core/websocket.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,539 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/components/navbar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,539 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/components/sidebar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,539 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/components/modal.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,554 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/pages/dashboard.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,570 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[33mGET /sw.js HTTP/1.1[0m" 404 -
|
||
2025-12-07 23:11:39,587 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/core/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,928 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:11:39,953 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/css/main.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,953 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/js/main.js?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,969 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/css/variables.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,977 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/css/components.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:39,977 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:39] "[36mGET /static/css/layout.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:40,016 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:40] "[36mGET /static/js/core/utils.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:40,020 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:40] "[36mGET /static/js/core/router.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:40,020 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:40] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:40,025 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:40] "[36mGET /static/js/core/websocket.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:40,040 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:40] "[36mGET /static/js/components/navbar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:40,044 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:40] "[36mGET /static/js/components/sidebar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:40,047 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:40] "[36mGET /static/js/components/modal.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:40,070 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:40] "[33mGET /sw.js HTTP/1.1[0m" 404 -
|
||
2025-12-07 23:11:40,072 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:40] "[36mGET /static/js/pages/dashboard.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:40,080 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:40] "[36mGET /static/js/core/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:41,826 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:11:41,920 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:41] "GET /api/workorders?page=1&per_page=5&sort=created_at&order=desc HTTP/1.1" 200 -
|
||
2025-12-07 23:11:41,990 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:41] "GET /api/alerts?page=1&per_page=5&sort=created_at&order=desc HTTP/1.1" 200 -
|
||
2025-12-07 23:11:42,026 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:11:42,275 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:42] "GET /api/workorders?page=1&per_page=5&sort=created_at&order=desc HTTP/1.1" 200 -
|
||
2025-12-07 23:11:42,292 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:11:42,465 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:11:42,531 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:42] "GET /api/workorders?page=1&per_page=5&sort=created_at&order=desc HTTP/1.1" 200 -
|
||
2025-12-07 23:11:42,589 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:11:42,639 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:42] "GET /api/alerts?page=1&per_page=5&sort=created_at&order=desc HTTP/1.1" 200 -
|
||
2025-12-07 23:11:42,814 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:11:43,220 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:43] "GET /api/alerts?page=1&per_page=5&sort=created_at&order=desc HTTP/1.1" 200 -
|
||
2025-12-07 23:11:45,122 - src.core.database - ERROR - 数据库操作失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 23:11:45,122 - src.core.query_optimizer - ERROR - 优化分析查询失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 23:11:45,122 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:45] "GET /api/analytics?days=30 HTTP/1.1" 200 -
|
||
2025-12-07 23:11:52,053 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:52] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:11:52,253 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:52] "GET /static/css/main.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-07 23:11:52,383 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:52] "GET /static/js/main.js?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-07 23:11:52,703 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:52] "GET /static/css/components.css HTTP/1.1" 200 -
|
||
2025-12-07 23:11:52,711 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:52] "GET /static/css/variables.css HTTP/1.1" 200 -
|
||
2025-12-07 23:11:52,728 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:52] "GET /static/css/layout.css HTTP/1.1" 200 -
|
||
2025-12-07 23:11:53,270 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:53] "GET /static/js/core/utils.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:53,336 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:53] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:53,403 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:11:53,403 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:53] "GET /static/js/core/router.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:53,511 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:53] "GET /static/js/core/websocket.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:53,602 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:53] "GET /static/js/components/navbar.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:53,705 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:53] "GET /static/js/components/sidebar.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:53,720 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:53] "GET /static/js/components/modal.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:54,220 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "GET /static/js/pages/login.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:54,237 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "[33mGET /static/images/favicon-32.png HTTP/1.1[0m" 404 -
|
||
2025-12-07 23:11:54,237 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "[33mGET /sw.js HTTP/1.1[0m" 404 -
|
||
2025-12-07 23:11:54,295 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "GET /static/manifest.json HTTP/1.1" 200 -
|
||
2025-12-07 23:11:54,363 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "[33mGET /static/images/favicon-16.png HTTP/1.1[0m" 404 -
|
||
2025-12-07 23:11:54,406 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "GET /static/sw.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:54,662 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "[33mGET /static/images/icon-144.png HTTP/1.1[0m" 404 -
|
||
2025-12-07 23:11:54,730 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:11:54,906 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "GET /static/css/main.css HTTP/1.1" 200 -
|
||
2025-12-07 23:11:54,906 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "GET /static/js/main.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:54,927 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:54] "[36mGET /static/js/core/utils.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:55,144 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "GET /static/js/core/api.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:55,312 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "GET /api/analytics?days=30 HTTP/1.1" 200 -
|
||
2025-12-07 23:11:55,316 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:55,321 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "[36mGET /static/js/core/websocket.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:55,329 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "[36mGET /static/js/core/router.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:55,510 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "[36mGET /static/js/components/navbar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:55,654 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "[36mGET /static/js/components/sidebar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:55,654 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "[36mGET /static/js/components/modal.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:11:55,661 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "GET /static/js/pages/dashboard.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:55,836 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "GET /static/js/pages/alerts.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:55,986 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "GET /static/js/pages/workorders.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:55,999 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:55] "GET /static/js/pages/knowledge.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:56,007 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:56] "GET /static/js/pages/chat.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:56,171 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:56] "GET /static/js/pages/monitoring.js HTTP/1.1" 200 -
|
||
2025-12-07 23:11:56,305 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:11:56] "GET /static/js/pages/settings.js HTTP/1.1" 200 -
|
||
2025-12-07 23:12:22,703 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:12:24,118 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:12:24] "GET /api/analytics?days=30 HTTP/1.1" 200 -
|
||
2025-12-07 23:12:30,237 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:12:30] "POST /api/login HTTP/1.1" 200 -
|
||
2025-12-07 23:12:30,669 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:12:30] "[36mGET /static/js/pages/dashboard.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:12:30,921 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:12:30] "[36mGET /static/js/core/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:12:32,142 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:12:32] "GET /api/workorders?page=1&per_page=5&sort=created_at&order=desc HTTP/1.1" 200 -
|
||
2025-12-07 23:12:32,142 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:12:32] "GET /api/alerts?page=1&per_page=5&sort=created_at&order=desc HTTP/1.1" 200 -
|
||
2025-12-07 23:12:40,971 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:12:42,471 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:12:42] "GET /api/analytics?days=30 HTTP/1.1" 200 -
|
||
2025-12-07 23:14:38,300 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:14:38] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:14:55,194 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:14:55] "[35m[1mPOST /api/login HTTP/1.1[0m" 500 -
|
||
2025-12-07 23:15:52,129 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:15:52] "POST /api/login HTTP/1.1" 200 -
|
||
2025-12-07 23:16:17,378 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:16:17] "GET /login HTTP/1.1" 200 -
|
||
2025-12-07 23:16:33,047 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:16:33] "GET /static/js/main.js HTTP/1.1" 200 -
|
||
2025-12-07 23:18:46,886 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-07 23:18:46,886 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-07 23:18:53,982 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-07 23:18:57,082 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-07 23:18:57,104 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-07 23:18:57,265 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://192.168.31.202:5000
|
||
2025-12-07 23:18:57,265 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-07 23:18:57,681 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:18:58,078 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-07 23:18:58,094 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-07 23:18:58,094 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-07 23:19:09,129 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:19:09,486 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "[36mGET /static/css/main.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:19:09,495 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "[36mGET /static/js/main.js?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:19:09,545 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "GET /static/css/variables.css HTTP/1.1" 200 -
|
||
2025-12-07 23:19:09,545 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "GET /static/css/components.css HTTP/1.1" 200 -
|
||
2025-12-07 23:19:09,551 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "GET /static/css/layout.css HTTP/1.1" 200 -
|
||
2025-12-07 23:19:09,595 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "[36mGET /static/js/core/utils.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:19:09,595 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:19:09,603 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "[36mGET /static/js/core/router.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:19:09,610 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "[36mGET /static/js/core/websocket.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:19:09,610 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "GET /static/js/components/navbar.js HTTP/1.1" 200 -
|
||
2025-12-07 23:19:09,618 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "[36mGET /static/js/components/sidebar.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:19:09,618 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "[36mGET /static/js/components/modal.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:19:09,645 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "[33mGET /sw.js HTTP/1.1[0m" 404 -
|
||
2025-12-07 23:19:09,653 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "GET /static/js/pages/dashboard.js HTTP/1.1" 200 -
|
||
2025-12-07 23:19:09,700 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:09] "[36mGET /static/js/core/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:19:12,128 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:19:12,628 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:12] "GET /api/alerts?page=1&per_page=5&sort=created_at&order=desc HTTP/1.1" 200 -
|
||
2025-12-07 23:19:12,848 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:19:14,748 - src.core.database - ERROR - 数据库操作失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 23:19:14,748 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:14] "[35m[1mGET /api/workorders?page=1&per_page=5&sort=created_at&order=desc HTTP/1.1[0m" 500 -
|
||
2025-12-07 23:19:21,245 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:19:22,937 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:19:22] "GET /api/analytics?days=30 HTTP/1.1" 200 -
|
||
2025-12-07 23:33:48,313 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-07 23:33:48,313 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-07 23:33:54,795 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-07 23:33:58,382 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-07 23:33:58,421 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-07 23:33:58,592 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://192.168.31.202:5000
|
||
2025-12-07 23:33:58,600 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-07 23:33:59,099 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:33:59,496 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-07 23:33:59,513 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-07 23:33:59,513 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-07 23:34:00,645 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:34:01,063 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:34:01,463 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:34:01,863 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-07 23:34:01,872 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:34:02,262 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-07 23:34:03,962 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:03] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-07 23:34:04,855 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:04] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:34:05,112 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:05] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:05,152 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:05] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:05,171 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:05] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:05,180 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:05] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-07 23:34:05,446 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:05] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-07 23:34:05,564 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:05,572 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:05,572 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:05] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-07 23:34:07,214 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:34:07,446 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-07 23:34:07,446 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:07] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-07 23:34:07,596 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:34:07,867 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-07 23:34:07,867 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-07 23:34:07,879 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: openai - qwen-turbo
|
||
2025-12-07 23:34:07,945 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:07] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-07 23:34:07,951 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-07 23:34:07,967 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-07 23:34:07,967 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-07 23:34:07,977 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-07 23:34:07,989 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-07 23:34:07,990 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-07 23:34:07,998 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-07 23:34:08,007 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-07 23:34:08,014 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-07 23:34:08,023 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-07 23:34:08,030 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-07 23:34:08,036 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-07 23:34:08,036 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-07 23:34:08,046 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-07 23:34:08,046 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-07 23:34:08,063 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-07 23:34:08,063 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-07 23:34:08,074 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-07 23:34:08,080 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-07 23:34:08,080 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-07 23:34:08,080 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:08] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-07 23:34:08,080 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-07 23:34:08,096 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-07 23:34:08,713 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:08] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-07 23:34:10,080 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:10] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:10,612 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:10,620 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:12,128 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:12] "[36mGET /static/css/design-system.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:34:12,128 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:12] "[36mGET /static/css/style.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:34:12,128 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:12] "[36mGET /static/css/design-system.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:34:12,595 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:12] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:15,638 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:15,645 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:20,646 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:20,646 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:22,831 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:22] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:34:22,949 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:22] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:22,963 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:22] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:22,969 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:22] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:22,999 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:22] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-07 23:34:24,153 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:24] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-07 23:34:24,175 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:24] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-07 23:34:24,228 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:24,228 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:24] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-07 23:34:24,236 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:25,113 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:25] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-07 23:34:25,653 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:25,661 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:26,129 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-07 23:34:26,129 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-07 23:34:26,129 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-07 23:34:26,129 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-07 23:34:26,129 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:26] "GET /api/agent/tools/stats HTTP/1.1" 200 -
|
||
2025-12-07 23:34:26,129 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:26] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-07 23:34:26,362 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:26] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:26,383 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:26] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-07 23:34:27,081 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:27] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-07 23:34:27,882 - src.dialogue.realtime_chat - INFO - 创建新会话: session_user_001_1765121667
|
||
2025-12-07 23:34:27,882 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:27] "POST /api/chat/session HTTP/1.1" 200 -
|
||
2025-12-07 23:34:29,334 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:29,334 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:30,512 - src.knowledge_base.knowledge_manager - INFO - 搜索查询 '我的车辆无法远程启动' 返回 0 个结果
|
||
2025-12-07 23:34:30,711 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:30,715 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:30,851 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:30] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:34,352 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:34,367 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:35,212 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-07 23:34:35,431 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:35] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-07 23:34:35,747 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:35,768 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:35,768 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:35] "POST /api/chat/message HTTP/1.1" 200 -
|
||
2025-12-07 23:34:37,047 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:37] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:38,080 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:38] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-07 23:34:38,261 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:38] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-07 23:34:38,361 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:38] "GET /api/workorders?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-07 23:34:39,378 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:39,378 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:40,800 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:40,811 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:41,561 - src.integrations.feishu_client - INFO - 正在获取飞书tenant_access_token,应用ID: cli_a8b50ec0eed1500d
|
||
2025-12-07 23:34:42,146 - src.integrations.feishu_client - INFO - 飞书API响应: {'code': 0, 'expire': 2122, 'msg': 'ok', 'tenant_access_token': 't-g104c7maYKB23RBJZIFTIRYRRDKDLDVT6HED7RLS'}
|
||
2025-12-07 23:34:42,178 - src.integrations.feishu_client - INFO - tenant_access_token获取成功: t-g104c7maYKB23RBJZI...
|
||
2025-12-07 23:34:42,180 - src.integrations.feishu_client - INFO - 令牌有效期: 2122秒,过期时间: 2025-12-08 00:10:04
|
||
2025-12-07 23:34:42,194 - src.integrations.feishu_client - INFO - 发送飞书API请求: GET https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records
|
||
2025-12-07 23:34:42,194 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104c7maYKB23RBJZI...
|
||
2025-12-07 23:34:44,461 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:44,561 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:44,944 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-07 23:34:44,961 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'has_more': False, 'items': [{'fields': {'AI建议': "模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}, {'fields': {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}, 'id': 'recv0NLSh2a2S7', 'record_id': 'recv0NLSh2a2S7'}, {'fields': {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}, 'id': 'recv0NLZoKLlRJ', 'record_id': 'recv0NLZoKLlRJ'}, {'fields': {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}, 'id': 'recv0NLZoKjKvx', 'record_id': 'recv0NLZoKjKvx'}], 'total': 4}, 'msg': 'success'}
|
||
2025-12-07 23:34:45,011 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:45] "GET /api/feishu-sync/preview-feishu-data HTTP/1.1" 200 -
|
||
2025-12-07 23:34:45,528 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:34:45,828 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:45,828 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:47,562 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:47] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-07 23:34:47,594 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:47] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-07 23:34:50,861 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:50,861 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:56,067 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:34:56,082 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:34:58,382 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:34:58] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:35:01,329 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:35:01,860 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:35:05,595 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:35:05] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-07 23:35:06,735 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:35:06,752 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:35:08,419 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:35:08] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-07 23:35:08,913 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:35:08] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:35:10,035 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:35:10,294 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:35:10] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-07 23:35:11,728 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:35:11] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-07 23:35:11,961 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:35:11,961 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:35:12,011 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:35:12] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-07 23:35:18,906 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:35:18] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:35:38,744 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:35:40,993 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:35:42,127 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:35:42] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-07 23:35:43,726 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:35:43] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-07 23:35:43,765 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:35:43] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-07 23:36:08,143 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:36:10,448 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:36:10] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-07 23:36:11,715 - src.core.database - ERROR - 数据库操作失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 23:36:11,715 - src.web.error_handlers - ERROR - 未处理错误 get_health: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 23:36:28,892 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:36:31,477 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:36:31] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-07 23:36:39,110 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:36:39] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:36:45,076 - src.core.database - ERROR - 数据库操作失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 23:36:45,076 - src.web.error_handlers - ERROR - 未处理错误 get_health: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 23:36:52,526 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:36:54,426 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:36:54] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-07 23:42:25,805 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-07 23:42:25,805 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-07 23:42:32,105 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-07 23:42:35,944 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-07 23:42:35,970 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-07 23:42:36,098 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://192.168.31.202:5000
|
||
2025-12-07 23:42:36,098 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-07 23:42:37,182 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:42:38,261 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-07 23:42:38,277 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-07 23:42:38,279 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-07 23:43:16,387 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:43:16] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:43:18,453 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:43:18] "[33mPOST /api/workorders/generate-ai-suggestion HTTP/1.1[0m" 404 -
|
||
2025-12-07 23:45:35,339 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-07 23:45:35,339 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-07 23:45:41,453 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-07 23:45:44,883 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-07 23:45:44,926 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-07 23:45:45,133 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://192.168.31.202:5000
|
||
2025-12-07 23:45:45,133 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-07 23:45:45,650 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:45:45,962 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-07 23:45:45,977 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-07 23:45:45,977 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-07 23:47:49,611 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:47:49,915 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-07 23:47:49,915 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-07 23:47:49,915 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-07 23:47:50,384 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:47:50,705 - src.dialogue.realtime_chat - INFO - 创建新会话: session_ai_suggestion_service_1765122470
|
||
2025-12-07 23:47:51,394 - src.knowledge_base.knowledge_manager - INFO - 搜索查询 '请为以下问题提供精炼的技术支持操作建议:
|
||
|
||
格式要求:
|
||
1. 现状+步骤,语言精炼
|
||
2. 总长度控制在150字以内
|
||
|
||
要求:
|
||
1. 首次给客户建议,只提供远程可操作的一般性排查步骤
|
||
2. 如检查网络、重启系统、确认配置等常见操作
|
||
3. 绝对不要提到"进站"、"抓取日志"等需要线下操作的内容
|
||
4. 语言简洁精炼,用逗号连接,不要用序号或分行
|
||
|
||
问题描述:车辆无法远程启动' 返回 3 个结果
|
||
2025-12-07 23:47:54,063 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-07 23:47:54,869 - src.integrations.ai_suggestion_service - INFO - AI生成原始内容: 车辆无法远程启动,可能因网络异常导致,请先检查手机及车机网络信号是否正常,确认车辆不在无信号区域;重启车机系统后重试远程启动;检查奇瑞汽车APP登录状态及车辆绑定是否正常;确保远程启动功能已在APP中...
|
||
2025-12-07 23:47:54,885 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 车辆无法远程启动,可能因网络异常导致,请先检查手机及车机网络信号是否正常,确认车辆不在无信号区域;重启车机系统后重试远程启动;检查奇瑞汽车APP登录状态及车辆绑定是否正常;确保远程启动功能已在APP中
|
||
2025-12-07 23:47:54,885 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 车辆无法远程启动,可能因网络异常导致,请先检查手机及车机网络信号是否正常,确认车辆不在无信号区域;重启车机系统后重试远程启动;检查奇瑞汽车APP登录状态及车辆绑定是否正常;确保远程启动功能已在APP中
|
||
2025-12-07 23:47:54,885 - src.integrations.ai_suggestion_service - INFO - AI建议清理后: 车辆无法远程启动,可能因网络异常导致,请先检查手机及车机网络信号是否正常,确认车辆不在无信号区域;重启车机系统后重试远程启动;检查奇瑞汽车APP登录状态及车辆绑定是否正常;确保远程启动功能已在APP中...
|
||
2025-12-07 23:47:54,885 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:47:54] "POST /api/workorders/generate-ai-suggestion HTTP/1.1" 200 -
|
||
2025-12-07 23:49:32,059 - src.core.database - ERROR - 数据库操作失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 23:49:32,059 - src.knowledge_base.knowledge_manager - ERROR - 加载向量化器失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-07 23:49:32,059 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-07 23:49:35,032 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:49:35,375 - src.dialogue.realtime_chat - INFO - 创建新会话: session_ai_suggestion_service_1765122575
|
||
2025-12-07 23:49:35,743 - src.knowledge_base.knowledge_manager - INFO - 搜索查询 '请为以下问题提供精炼的技术支持操作建议:
|
||
|
||
格式要求:
|
||
1. 现状+步骤,语言精炼
|
||
2. 总长度控制在150字以内
|
||
|
||
要求:
|
||
1. 首次给客户建议,只提供远程可操作的一般性排查步骤
|
||
2. 如检查网络、重启系统、确认配置等常见操作
|
||
3. 绝对不要提到"进站"、"抓取日志"等需要线下操作的内容
|
||
4. 语言简洁精炼,用逗号连接,不要用序号或分行
|
||
|
||
问题描述:车辆无法远程启动' 返回 3 个结果
|
||
2025-12-07 23:49:38,096 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-07 23:49:39,226 - src.integrations.ai_suggestion_service - INFO - AI生成原始内容: 车辆远程启动失败,可能因网络异常导致:检查手机与车机网络信号是否正常,确认车辆未处于无信号区域;重启车机系统后重试远程启动;确保奇瑞汽车APP已登录且账号绑定车辆无误;检查APP内远程控制功能是否已开...
|
||
2025-12-07 23:49:39,226 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 车辆远程启动失败,可能因网络异常导致:检查手机与车机网络信号是否正常,确认车辆未处于无信号区域;重启车机系统后重试远程启动;确保奇瑞汽车APP已登录且账号绑定车辆无误;检查APP内远程控制功能是否已开
|
||
2025-12-07 23:49:39,226 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 车辆远程启动失败,可能因网络异常导致:检查手机与车机网络信号是否正常,确认车辆未处于无信号区域;重启车机系统后重试远程启动;确保奇瑞汽车APP已登录且账号绑定车辆无误;检查APP内远程控制功能是否已开
|
||
2025-12-07 23:49:39,226 - src.integrations.ai_suggestion_service - INFO - AI建议清理后: 车辆远程启动失败,可能因网络异常导致:检查手机与车机网络信号是否正常,确认车辆未处于无信号区域;重启车机系统后重试远程启动;确保奇瑞汽车APP已登录且账号绑定车辆无误;检查APP内远程控制功能是否已开...
|
||
2025-12-07 23:49:39,226 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:49:39] "POST /api/workorders/generate-ai-suggestion HTTP/1.1" 200 -
|
||
2025-12-07 23:50:09,330 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:09] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:50:09,861 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:09] "GET / HTTP/1.1" 200 -
|
||
2025-12-07 23:50:09,910 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:50:10,210 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:10] "[36mGET /static/css/style.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:50:10,231 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:10] "[36mGET /static/css/design-system.css HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:50:10,244 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:10] "[36mGET /static/css/design-system.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:50:10,269 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:10] "[36mGET /static/js/dashboard.js?v=1.0.9 HTTP/1.1[0m" 304 -
|
||
2025-12-07 23:50:10,868 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:50:11,486 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-07 23:50:12,007 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:12] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-07 23:50:12,023 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:50:12,023 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:12] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-07 23:50:12,023 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:50:13,803 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:50:13,827 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-07 23:50:14,094 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-07 23:50:14,110 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-07 23:50:14,110 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-07 23:50:14,120 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-07 23:50:14,120 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:14] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-07 23:50:14,128 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-07 23:50:14,145 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-07 23:50:14,153 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-07 23:50:14,157 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-07 23:50:14,168 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-07 23:50:14,173 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-07 23:50:14,181 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-07 23:50:14,194 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-07 23:50:14,202 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-07 23:50:14,210 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-07 23:50:14,218 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-07 23:50:14,227 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-07 23:50:14,244 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-07 23:50:14,252 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-07 23:50:14,261 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-07 23:50:14,271 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-07 23:50:14,277 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:14] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-07 23:50:14,315 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-07 23:50:14,352 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-07 23:50:14,360 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-07 23:50:14,381 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-07 23:50:14,594 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:14] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:50:15,078 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:15] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-07 23:50:15,221 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:15] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-07 23:50:17,119 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:50:17,135 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:50:18,410 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:18] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-07 23:50:22,146 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:50:22,146 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:50:22,579 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:22] "GET /api/token-monitor/stats HTTP/1.1" 200 -
|
||
2025-12-07 23:50:23,329 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:23] "GET /api/token-monitor/records HTTP/1.1" 200 -
|
||
2025-12-07 23:50:26,413 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:26] "GET /api/token-monitor/chart HTTP/1.1" 200 -
|
||
2025-12-07 23:50:27,165 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:50:27,165 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:50:27,680 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:27] "GET /api/conversations?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-07 23:50:29,631 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:29] "GET /api/conversations?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-07 23:50:32,181 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:50:32,181 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:50:33,160 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:33] "GET /api/workorders?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-07 23:50:34,860 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:34] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-07 23:50:37,374 - websockets.server - INFO - connection rejected (500 Internal Server Error)
|
||
2025-12-07 23:50:37,493 - websockets.server - ERROR - opening handshake failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 356, in conn_handler
|
||
await connection.handshake(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 207, in handshake
|
||
raise self.protocol.handshake_exc
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 147, in handshake
|
||
response = process_request(self, self.request)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\websocket_server.py", line 265, in _process_request
|
||
if request_headers.get("Upgrade", "").lower() == "websocket":
|
||
^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'Request' object has no attribute 'get'
|
||
2025-12-07 23:50:42,461 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:50:44,043 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:50:44] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-07 23:50:59,734 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:51:02,007 - src.core.query_optimizer - WARNING - 未映射的状态: 'Analysising' (数量: 1)
|
||
2025-12-07 23:51:02,819 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:51:02] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-07 23:51:03,587 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:51:03] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-07 23:51:03,614 - werkzeug - INFO - 127.0.0.1 - - [07/Dec/2025 23:51:03] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-08 00:09:36,445 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-08 00:09:36,445 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-08 00:09:42,511 - src.core.database - ERROR - 数据库初始化失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:09:42,526 - __main__ - ERROR - 启动失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:22:37,225 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-08 00:22:43,311 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-08 00:22:44,341 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-08 00:22:47,876 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-08 00:22:47,891 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-08 00:22:48,149 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://192.168.31.202:5000
|
||
2025-12-08 00:22:48,157 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-08 00:22:48,638 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:49,043 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-08 00:22:49,059 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-08 00:22:49,059 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-08 00:22:53,549 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:53] "GET / HTTP/1.1" 200 -
|
||
2025-12-08 00:22:54,061 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:54] "[36mGET /static/css/style.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:54,061 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:54] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-08 00:22:54,074 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:54] "[36mGET /static/css/design-system.css HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:54,087 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:54] "[36mGET /static/js/dashboard.js?v=1.0.9 HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:54,128 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:54] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-08 00:22:54,147 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:54] "[36mGET /static/css/design-system.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:54,183 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:54] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-08 00:22:54,183 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:54] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-08 00:22:54,191 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:54] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-08 00:22:55,015 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-08 00:22:55,024 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-08 00:22:55,025 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:55] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-08 00:22:55,080 - websockets.server - INFO - connection open
|
||
2025-12-08 00:22:55,088 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:22:56,309 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:22:56,328 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "GET / HTTP/1.1" 200 -
|
||
2025-12-08 00:22:56,365 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "[36mGET /static/css/design-system.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:56,375 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:56,379 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "[36mGET /static/css/style.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:56,379 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "[36mGET /static/js/services/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:56,387 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "[36mGET /static/js/components/NotificationManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:56,392 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "[36mGET /static/js/components/AlertManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:56,400 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "[36mGET /static/js/app-new.js HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:56,410 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "[36mGET /static/js/dashboard.js?v=1.0.9 HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:56,410 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:56] "[36mGET /static/css/design-system.css HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:56,659 - websockets.server - INFO - connection open
|
||
2025-12-08 00:22:56,659 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:22:56,727 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:56,742 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:56,727 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:56,810 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:57,143 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-08 00:22:57,143 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:57] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-08 00:22:57,346 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:57] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:22:57,561 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:57,609 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:57,762 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:57,892 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 00:22:57,944 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:57] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:22:57,959 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 00:22:58,158 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 00:22:58,158 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:58] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-08 00:22:58,575 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:58,891 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:58,920 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:58,942 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:59,307 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-08 00:22:59,308 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-08 00:22:59,308 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "GET / HTTP/1.1" 200 -
|
||
2025-12-08 00:22:59,324 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:59,361 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "[36mGET /static/css/design-system.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:59,365 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:59,367 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "[36mGET /static/js/services/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:59,373 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "[36mGET /static/css/style.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:59,375 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "[36mGET /static/js/components/NotificationManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:59,383 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "[36mGET /static/js/app-new.js HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:59,383 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "[36mGET /static/js/components/AlertManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:59,383 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "[36mGET /static/js/dashboard.js?v=1.0.9 HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:59,399 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "[36mGET /static/css/design-system.css HTTP/1.1[0m" 304 -
|
||
2025-12-08 00:22:59,498 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-08 00:22:59,506 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-08 00:22:59,608 - websockets.server - INFO - connection open
|
||
2025-12-08 00:22:59,608 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:22:59,619 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-08 00:22:59,683 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 00:22:59,715 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:22:59,774 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:22:59,841 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:22:59] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:22:59,977 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:23:00,007 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:00] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-08 00:23:00,075 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 00:23:00,361 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 00:23:00,361 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:00] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-08 00:23:00,491 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:00] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:23:00,674 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:23:00,693 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:00] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-08 00:23:00,707 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:00] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-08 00:23:00,941 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:00] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:23:01,125 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:23:01,540 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:01] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:23:01,574 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-08 00:23:01,578 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-08 00:23:01,578 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-08 00:23:01,595 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-08 00:23:01,606 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-08 00:23:01,623 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-08 00:23:01,630 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-08 00:23:01,645 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-08 00:23:01,659 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-08 00:23:01,668 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-08 00:23:01,682 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-08 00:23:01,688 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:01] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-08 00:23:01,688 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-08 00:23:01,707 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-08 00:23:01,715 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-08 00:23:01,732 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-08 00:23:01,740 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-08 00:23:01,748 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-08 00:23:01,764 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-08 00:23:01,782 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-08 00:23:01,797 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-08 00:23:01,799 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-08 00:23:01,813 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-08 00:23:01,821 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-08 00:23:01,829 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-08 00:23:01,847 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-08 00:23:02,174 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:02] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:23:02,829 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:02] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-08 00:23:02,910 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:02] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:23:03,308 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:03] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-08 00:23:03,331 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:03] "GET /api/agent/tools/stats HTTP/1.1" 200 -
|
||
2025-12-08 00:23:04,630 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:23:04,630 - src.web.error_handlers - ERROR - 错误响应: 获取预警列表失败: generator didn't stop after throw() - None
|
||
2025-12-08 00:23:04,630 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:04] "[35m[1mGET /api/alerts?per_page=1000 HTTP/1.1[0m" 500 -
|
||
2025-12-08 00:23:04,657 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:04,665 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:23:04,760 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:04] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-08 00:23:07,043 - src.dialogue.realtime_chat - INFO - 创建新会话: session_user_001_1765124587
|
||
2025-12-08 00:23:07,043 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:07] "POST /api/chat/session HTTP/1.1" 200 -
|
||
2025-12-08 00:23:07,724 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:07] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:23:08,543 - src.dialogue.realtime_chat - INFO - 结束会话: session_user_001_1765124587
|
||
2025-12-08 00:23:08,543 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:08] "DELETE /api/chat/session/session_user_001_1765124587 HTTP/1.1" 200 -
|
||
2025-12-08 00:23:09,691 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:09,710 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:23:10,377 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:10] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:23:11,925 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:11] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-08 00:23:14,745 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:14,761 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:23:18,257 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:18] "GET /api/workorders/78 HTTP/1.1" 200 -
|
||
2025-12-08 00:23:19,858 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:19,874 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:23:20,408 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:20] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:23:24,923 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:24,927 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:23:27,824 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:27] "GET /api/ai-monitor/stats HTTP/1.1" 200 -
|
||
2025-12-08 00:23:29,957 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:29,957 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:23:30,381 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:30] "GET /api/ai-monitor/error-distribution HTTP/1.1" 200 -
|
||
2025-12-08 00:23:32,230 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:32] "GET /api/ai-monitor/model-comparison HTTP/1.1" 200 -
|
||
2025-12-08 00:23:33,632 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:33] "GET /api/ai-monitor/error-log HTTP/1.1" 200 -
|
||
2025-12-08 00:23:35,006 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:35,006 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:23:38,127 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:38] "GET /api/token-monitor/stats HTTP/1.1" 200 -
|
||
2025-12-08 00:23:40,049 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:40,049 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:23:42,465 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:42] "GET /api/token-monitor/chart HTTP/1.1" 200 -
|
||
2025-12-08 00:23:44,680 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:44] "GET /api/token-monitor/records HTTP/1.1" 200 -
|
||
2025-12-08 00:23:45,081 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:45,090 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:23:45,861 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:45] "GET /api/conversations?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-08 00:23:48,790 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:48] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:23:48,843 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:23:48] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-08 00:23:50,107 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:50,107 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:23:55,140 - websockets.server - INFO - connection open
|
||
2025-12-08 00:23:55,140 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:24:00,256 - websockets.server - INFO - connection open
|
||
2025-12-08 00:24:00,271 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.start_server.<locals>.handle_client_with_cors() missing 1 required positional argument: 'path'
|
||
2025-12-08 00:24:07,843 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:24:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:24:11,647 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:24:11] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 00:24:13,789 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:24:13] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:24:36,370 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:24:36] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-08 00:24:43,922 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:24:43] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 00:24:59,515 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:24:59] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-08 00:24:59,682 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:24:59] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:25:00,499 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:25:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:25:05,585 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:25:05,687 - src.analytics.alert_system - ERROR - 获取活跃预警失败: generator didn't stop
|
||
2025-12-08 00:25:11,319 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:25:11,420 - src.analytics.alert_system - ERROR - 获取活跃预警失败: generator didn't stop
|
||
2025-12-08 00:25:16,438 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:25:16] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:25:16,439 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:25:16] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-08 00:25:17,435 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:25:17] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:25:18,198 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:25:18] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:25:19,898 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:25:19,898 - src.analytics.alert_system - ERROR - 获取预警统计失败: generator didn't stop after throw()
|
||
2025-12-08 00:25:20,122 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:25:20] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-08 00:25:24,770 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:25:24,873 - src.analytics.alert_system - ERROR - 获取活跃预警失败: generator didn't stop
|
||
2025-12-08 00:25:32,839 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:25:32,923 - src.analytics.alert_system - ERROR - 获取活跃预警失败: generator didn't stop
|
||
2025-12-08 00:25:44,871 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:25:44] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-08 00:25:51,120 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:25:51,120 - src.web.error_handlers - ERROR - 未处理错误 get_health: generator didn't stop after throw()
|
||
2025-12-08 00:25:51,206 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:25:51] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:26:09,914 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:26:09,937 - src.web.error_handlers - ERROR - 未处理错误 get_health: generator didn't stop
|
||
2025-12-08 00:26:13,585 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:26:13,585 - src.analytics.alert_system - ERROR - 获取预警统计失败: generator didn't stop after throw()
|
||
2025-12-08 00:26:15,404 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:26:15] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:26:18,653 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:26:18,670 - src.web.error_handlers - ERROR - 未处理错误 get_health: generator didn't stop after throw()
|
||
2025-12-08 00:26:20,462 - src.core.database - WARNING - 数据库连接丢失,重试 1/3: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 00:26:20,487 - src.analytics.alert_system - ERROR - 获取活跃预警失败: generator didn't stop after throw()
|
||
2025-12-08 00:26:34,821 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:26:34] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 00:26:56,976 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:26:56] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:26:59,704 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:26:59] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:27:07,498 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:27:07] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:27:22,552 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:27:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:27:30,169 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:27:30] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:27:31,733 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:27:31] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:27:53,602 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:27:53] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:27:55,401 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:27:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:28:17,477 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:28:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:28:20,151 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:28:20] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:28:34,062 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:28:34] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:28:34,681 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:28:34] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:28:48,267 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:28:48] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:28:56,519 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:28:56] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:29:02,536 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:29:02] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-08 00:29:06,850 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:29:06] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:29:07,956 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:29:07] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:29:09,800 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:29:09] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-08 00:29:17,108 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:29:17] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:29:17,537 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:29:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:30:00,884 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:30:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:30:03,133 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:30:03] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:30:07,463 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:30:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:30:21,591 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:30:21] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:30:38,600 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:30:38] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:30:39,154 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:30:39] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:30:50,140 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:30:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:30:59,201 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:30:59] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:30:59,228 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:30:59] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-08 00:31:22,933 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:31:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:31:24,516 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:31:24] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:31:32,283 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:31:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:31:42,001 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:31:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:31:50,641 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:31:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:32:11,064 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:32:11] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:32:27,720 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:32:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:32:30,013 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:32:30] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:32:54,831 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:32:54] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:33:07,031 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:33:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:33:07,910 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:33:07] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:33:13,658 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:33:13] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-08 00:33:14,420 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:33:14] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:33:27,392 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:33:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:33:29,903 - werkzeug - INFO - 127.0.0.1 - - [08/Dec/2025 00:33:29] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:56:18,014 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-08 00:56:18,825 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-08 00:56:18,831 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-08 00:56:27,849 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-08 00:56:27,869 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-08 00:56:28,009 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.3.12.3:5000
|
||
2025-12-08 00:56:28,009 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-08 00:56:45,294 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:45] "GET / HTTP/1.1" 200 -
|
||
2025-12-08 00:56:45,731 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:45] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-08 00:56:46,149 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:46] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-08 00:56:46,209 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:46] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-08 00:56:46,354 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:46] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-08 00:56:46,543 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:46] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-08 00:56:46,546 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:46] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-08 00:56:46,985 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:46] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-08 00:56:53,110 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:53] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:56:53,240 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:56:53,248 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:56:53,251 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 00:56:53,434 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-08 00:56:53,434 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-08 00:56:53,435 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:53] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-08 00:56:53,487 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:56:53,491 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-08 00:56:53,492 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:53] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-08 00:56:54,333 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:54] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-08 00:56:54,421 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:54] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-08 00:56:54,425 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:56:54,429 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-08 00:56:54,429 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-08 00:56:54,429 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-08 00:56:54,430 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-08 00:56:54,431 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-08 00:56:54,432 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-08 00:56:54,433 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-08 00:56:54,434 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-08 00:56:54,435 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-08 00:56:54,436 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-08 00:56:54,438 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-08 00:56:54,439 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-08 00:56:54,440 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-08 00:56:54,441 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-08 00:56:54,442 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-08 00:56:54,443 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-08 00:56:54,444 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-08 00:56:54,445 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-08 00:56:54,446 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-08 00:56:54,447 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-08 00:56:54,448 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-08 00:56:54,449 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-08 00:56:54,450 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-08 00:56:54,451 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-08 00:56:54,452 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-08 00:56:54,464 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:54] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-08 00:56:58,379 - werkzeug - ERROR - 36.231.97.35 - - [08/Dec/2025 00:56:58] code 400, message Bad request version ("n,(Rǯ^\x03XÆ,\x13\x13±ÄvÐ×&RR]ÃX\x14#k'sà\x1bâ\x00")
|
||
2025-12-08 00:56:58,397 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:58] "[35m[1m\x16\x03\x01\x06ö\x01\x00\x06ò\x03\x03\x80\x8e\x18:\x9e\x8b\x90\x1d¾\x9côX\x9a0ð¹¯@S\x8d\x1bR8`\x1cF}x) \x06U n,(Rǯ^\x03XÆ,\x13\x13±ÄvÐ×&RR]ÃX\x14#k'sà\x1bâ\x00 [0m" HTTPStatus.BAD_REQUEST -
|
||
2025-12-08 00:56:58,400 - werkzeug - ERROR - 36.231.97.35 - - [08/Dec/2025 00:56:58] code 400, message Bad HTTP/0.9 request type ('\x16\x03\x01\x06Ö\x01\x00\x06Ò\x03\x03qºÝX\x91hD#B\x01ÉΧ\x0f=\x0eËdALÛÂ\x968KåHî±U\x84é')
|
||
2025-12-08 00:56:58,400 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:58] "[35m[1m\x16\x03\x01\x06Ö\x01\x00\x06Ò\x03\x03qºÝX\x91hD#B\x01ÉΧ\x0f=\x0eËdALÛÂ\x968KåHî±U\x84é \x8f½¦\x16ò\x83å´\x8b^®¢K?ÖË\x96ìH\x88m)¥3(8ïz3Zªc\x00 [0m" HTTPStatus.BAD_REQUEST -
|
||
2025-12-08 00:56:58,652 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:58] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:56:58,972 - werkzeug - ERROR - 36.231.97.35 - - [08/Dec/2025 00:56:58] code 400, message Bad request version ("8\x8f|\x05t\\Ê>/\x813Ú\x92_\x81\x07\x9bcÖ?TSÅÏÑXm%%\x94\x94\x90\x84ô'ðÃ")
|
||
2025-12-08 00:56:58,978 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:58] "[35m[1m\x16\x03\x01\x06ö\x01\x00\x06ò\x03\x03¹:\x8f\x00\x92VoÏ$!;\x9dIXkCL{câãKî\x9fñÕ\x1e\\B\x9c\x8c °âg\x0f\x95ÌY|ÕHs\x13øsßøD\x13\x86M&ú^j\x81_uÊÐ^ù%\x00 êê\x13\x01\x13\x02\x13\x03À+À/À,À0̨̩À\x13À\x14\x00\x9c\x00\x9d\x00/\x005\x01\x00\x06\x89\x1a\x1a\x00\x00\x00\x0d\x00\x12\x00\x10\x04\x03\x08\x04\x04\x01\x05\x03\x08\x05\x05\x01\x08\x06\x06\x01\x003\x04ï\x04íªª\x00\x01\x00\x11ì\x04Àõ&l\x82\x92¼ÝìBnCeÅSNnûÌÓHs4±\x03ÒÑ2\x92¼O£@\x84\x89( \x09\x07\x81,Û:¯õrÂ\\R 8\x8f|\x05t\\Ê>/\x813Ú\x92_\x81\x07\x9bcÖ?TSÅÏÑXm%%\x94\x94\x90\x84ô'ðÃ[0m" HTTPStatus.BAD_REQUEST -
|
||
2025-12-08 00:56:59,019 - werkzeug - ERROR - 36.231.97.35 - - [08/Dec/2025 00:56:59] code 400, message Bad request version ('\x1aAa\xad')
|
||
2025-12-08 00:56:59,019 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:56:59] "[35m[1m\x16\x03\x01\x06ö\x01\x00\x06ò\x03\x03û\x16jë,Û0e5|zO\x8dwUBÛDÝ=\x1c ËêÖ[îo_Ê÷\x1f Ñ\x1e26\x83¨q6\x99\x8c\x9a\\¤\x13¹n*Ïø\x91úoá*ÄÊufVìEð\x00 \x9a\x9a\x13\x01\x13\x02\x13\x03À+À/À,À0̨̩À\x13À\x14\x00\x9c\x00\x9d\x00/\x005\x01\x00\x06\x89ÚÚ\x00\x00\x003\x04ï\x04íÚÚ\x00\x01\x00\x11ì\x04À]\x98\x8a!b\x14ϤT\x90\x158\x89º{,ç(ÉÜ\x96.c¢´\x90ů\x90\x8d¼\x89\x05 \x11f\x92%`4#!\x92A\x9a\x0c«Z¢¼\x87&\x12Áj5½\x9b\x19WÄ\x8ciw¨µî\x1ah^\x02\x0f\x91\x024\x1aõÍܨ\x0dC-\x18\x05\x18\x1er\x0bR\x04\x95\x88j\x7f´öÈ\x93õ(\x98ª=ÈõF0ð\x9böÙjü\x87¸¯\x13}á\x15%\x8b¶\x96UÅ\x13¹¸t\x08×\x1d=\x85RÆz8éC¸â\x1c\x1aAa[0m" HTTPStatus.BAD_REQUEST -
|
||
2025-12-08 00:57:03,185 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:03] "GET / HTTP/1.1" 200 -
|
||
2025-12-08 00:57:04,270 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:04] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-08 00:57:04,803 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:04] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 00:57:13,846 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:13] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:57:13,929 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:13] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-08 00:57:14,056 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:14] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-08 00:57:14,711 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:14] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-08 00:57:19,212 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:19] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-08 00:57:22,436 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:22] "GET /api/alerts?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-08 00:57:24,357 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:24] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:57:25,435 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:25] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:57:30,329 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:30] "POST /api/batch-delete/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:57:32,130 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:32] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:57:33,842 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:33] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-08 00:57:34,014 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:34] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:57:35,041 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:35] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:57:36,262 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:36] "GET /api/alerts?page=1&per_page=50 HTTP/1.1" 200 -
|
||
2025-12-08 00:57:38,099 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:38] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:57:38,281 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:38] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:57:39,235 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:39] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 00:57:40,355 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:40] "POST /api/batch-delete/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:57:56,581 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:57:56] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:58:12,902 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:58:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:58:14,287 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:58:14] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 00:58:14,381 - src.web.error_handlers - ERROR - 错误响应: 预警不存在: [111616, 111617, 111618, 111619, 111620, 111621, 111622, 111623, 111624, 111625, 111626, 111627, 111628, 111629, 111630, 111631, 111632, 111633, 111634, 111635, 111636, 111637, 111638, 111639, 111640, 111641, 111642, 111643, 111644, 111645, 111646, 111647, 111648, 111649, 111650, 111651, 111652, 111653, 111654, 111655, 111656, 111657, 111658, 111659, 111660, 111661, 111612, 111613, 111614, 111615] - None
|
||
2025-12-08 00:58:14,409 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:58:14] "[33mPOST /api/batch-delete/alerts HTTP/1.1[0m" 404 -
|
||
2025-12-08 00:58:15,728 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:58:15] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:58:20,658 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:58:20] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:58:25,226 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:58:25] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:58:26,834 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:58:26] "GET /api/workorders?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-08 00:58:49,660 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:58:49] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:58:58,072 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:58:58] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:59:05,172 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:59:05] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:59:06,477 - src.integrations.workorder_sync - INFO - 开始从飞书同步工单数据...
|
||
2025-12-08 00:59:06,480 - src.integrations.feishu_client - INFO - 正在获取飞书tenant_access_token,应用ID: cli_a8b50ec0eed1500d
|
||
2025-12-08 00:59:06,970 - src.integrations.feishu_client - INFO - 飞书API响应: {'code': 0, 'expire': 3056, 'msg': 'ok', 'tenant_access_token': 't-g104c7nOSPYB6V6UE63G2DXX5T3ACJFDSQZ3AJ3B'}
|
||
2025-12-08 00:59:06,974 - src.integrations.feishu_client - INFO - tenant_access_token获取成功: t-g104c7nOSPYB6V6UE6...
|
||
2025-12-08 00:59:06,974 - src.integrations.feishu_client - INFO - 令牌有效期: 3056秒,过期时间: 2025-12-08 01:50:02
|
||
2025-12-08 00:59:06,975 - src.integrations.feishu_client - INFO - 发送飞书API请求: GET https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records
|
||
2025-12-08 00:59:06,977 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104c7nOSPYB6V6UE6...
|
||
2025-12-08 00:59:09,328 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-08 00:59:09,332 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'has_more': False, 'items': [{'fields': {'AI建议': "模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}, {'fields': {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}, 'id': 'recv0NLSh2a2S7', 'record_id': 'recv0NLSh2a2S7'}, {'fields': {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}, 'id': 'recv0NLZoKLlRJ', 'record_id': 'recv0NLZoKLlRJ'}, {'fields': {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}, 'id': 'recv0NLZoKjKvx', 'record_id': 'recv0NLZoKjKvx'}], 'total': 4}, 'msg': 'success'}
|
||
2025-12-08 00:59:09,337 - src.integrations.workorder_sync - INFO - 从飞书获取 4 条记录
|
||
2025-12-08 00:59:09,337 - src.integrations.workorder_sync - INFO - 开始生成AI建议...
|
||
2025-12-08 00:59:09,339 - src.integrations.workorder_sync - INFO - 第一条记录结构示例: record_id=rec253kqBfXae4, 有fields字段=True
|
||
2025-12-08 00:59:09,341 - src.integrations.workorder_sync - INFO - 第一条记录的fields示例: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source']
|
||
2025-12-08 00:59:09,341 - src.integrations.workorder_sync - INFO - 第一条记录的AI建议字段内容: 模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Th
|
||
2025-12-08 00:59:09,348 - src.integrations.ai_suggestion_service - INFO - 记录 rec253kqBfXae4 - 现有AI建议长度: 112
|
||
2025-12-08 00:59:09,349 - src.integrations.ai_suggestion_service - INFO - 记录 rec253kqBfXae4 - 现有AI建议前100字符: 模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:The widget weather doesn't work
|
||
|
||
相关背景信息:
|
||
无相关背景信息
|
||
|
||
请
|
||
2025-12-08 00:59:09,480 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:59:09,496 - src.dialogue.realtime_chat - INFO - 创建新会话: session_ai_suggestion_service_1765126749
|
||
2025-12-08 00:59:09,528 - src.knowledge_base.knowledge_manager - INFO - 搜索查询 '请作为专业的汽车技术支持工程师,为以下工单问题提供详细的技术分析和处理建议。
|
||
|
||
问题描述:
|
||
The widget weather doesn't work
|
||
|
||
|
||
当前处理进度:
|
||
0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志
|
||
|
||
|
||
历史AI建议记录:
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:The widget weather doesn't work
|
||
|
||
相关背景信息:
|
||
无相关背景信息
|
||
|
||
请提供:
|
||
1. 问题...
|
||
|
||
|
||
要求:
|
||
1. 基于已有处理记录和当前进度,分析问题进展情况
|
||
2. 判断之前的处理步骤是否有效,找出可能的遗漏点
|
||
3. 根据问题发展阶段提供更深入的技术解决方案
|
||
4. 如果远程处理无效,明确说明需要哪些线下技术支持
|
||
5. 详细说明进站后需要执行的具体诊断和修复步骤
|
||
6. 包含技术参数、工具要求和注意事项
|
||
7. 便于技术人员快速理解问题状态和下一步行动
|
||
|
||
请提供针对性的深入分析和处理建议:' 返回 3 个结果
|
||
2025-12-08 00:59:22,469 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:59:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:59:23,084 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:59:23] "GET /api/conversations?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-08 00:59:29,120 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:59:29] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 00:59:30,610 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-08 00:59:30,824 - src.knowledge_base.knowledge_manager - INFO - 成功更新 3 个知识库条目的使用次数
|
||
2025-12-08 00:59:30,825 - src.integrations.ai_suggestion_service - INFO - AI生成原始内容: 您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:
|
||
|
||
1. **问题进展分析**:
|
||
前期已排除基...
|
||
2025-12-08 00:59:30,825 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:
|
||
|
||
1. **问题进展分析**:
|
||
前期已排除基
|
||
2025-12-08 00:59:30,836 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:
|
||
2025-12-08 00:59:30,843 - src.integrations.ai_suggestion_service - INFO - AI建议清理后: 您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:...
|
||
2025-12-08 00:59:30,843 - src.integrations.ai_suggestion_service - INFO - _format_ai_suggestion_with_numbering 调用 - time_str=1208, existing长度=112
|
||
2025-12-08 00:59:30,843 - src.integrations.ai_suggestion_service - INFO - 为记录 rec253kqBfXae4 生成AI建议,新建议长度: 190
|
||
2025-12-08 00:59:30,850 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLSh2a2S7 - 现有AI建议长度: 112
|
||
2025-12-08 00:59:30,879 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLSh2a2S7 - 现有AI建议前100字符: 模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Vehicle data is not updated in the app => dated from
|
||
2025-12-08 00:59:30,920 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:59:30,943 - src.dialogue.realtime_chat - INFO - 创建新会话: session_ai_suggestion_service_1765126770
|
||
2025-12-08 00:59:30,965 - src.knowledge_base.knowledge_manager - INFO - 搜索查询 '请作为专业的汽车技术支持工程师,为以下工单问题提供详细的技术分析和处理建议。
|
||
|
||
问题描述:
|
||
Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.
|
||
|
||
|
||
|
||
当前处理进度:
|
||
1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志
|
||
|
||
|
||
历史AI建议记录:
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Vehicle data is not updated in the app => dated from October,...
|
||
|
||
|
||
要求:
|
||
1. 基于已有处理记录和当前进度,分析问题进展情况
|
||
2. 判断之前的处理步骤是否有效,找出可能的遗漏点
|
||
3. 根据问题发展阶段提供更深入的技术解决方案
|
||
4. 如果远程处理无效,明确说明需要哪些线下技术支持
|
||
5. 详细说明进站后需要执行的具体诊断和修复步骤
|
||
6. 包含技术参数、工具要求和注意事项
|
||
7. 便于技术人员快速理解问题状态和下一步行动
|
||
|
||
请提供针对性的深入分析和处理建议:' 返回 3 个结果
|
||
2025-12-08 00:59:37,986 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:59:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:59:44,965 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:59:44] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 00:59:49,625 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:59:49] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 00:59:51,821 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 00:59:51] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-08 00:59:53,910 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-08 00:59:54,067 - src.knowledge_base.knowledge_manager - INFO - 成功更新 3 个知识库条目的使用次数
|
||
2025-12-08 00:59:54,067 - src.integrations.ai_suggestion_service - INFO - AI生成原始内容: 该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBO...
|
||
2025-12-08 00:59:54,068 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBO
|
||
2025-12-08 00:59:54,068 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBO
|
||
2025-12-08 00:59:54,070 - src.integrations.ai_suggestion_service - INFO - AI建议清理后: 该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBO...
|
||
2025-12-08 00:59:54,073 - src.integrations.ai_suggestion_service - INFO - _format_ai_suggestion_with_numbering 调用 - time_str=1208, existing长度=112
|
||
2025-12-08 00:59:54,075 - src.integrations.ai_suggestion_service - INFO - 为记录 recv0NLSh2a2S7 生成AI建议,新建议长度: 231
|
||
2025-12-08 00:59:54,075 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLZoKLlRJ - 现有AI建议长度: 112
|
||
2025-12-08 00:59:54,077 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLZoKLlRJ - 现有AI建议前100字符: 模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:User not able to enter into member center neither mo
|
||
2025-12-08 00:59:54,096 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 00:59:54,105 - src.dialogue.realtime_chat - INFO - 创建新会话: session_ai_suggestion_service_1765126794
|
||
2025-12-08 00:59:54,119 - src.knowledge_base.knowledge_manager - INFO - 搜索查询 '请作为专业的汽车技术支持工程师,为以下工单问题提供详细的技术分析和处理建议。
|
||
|
||
问题描述:
|
||
User not able to enter into member center neither mobile phone nor QR code.
|
||
|
||
|
||
当前处理进度:
|
||
1024: DMC logs attached as well as vieos of the issue.
|
||
|
||
|
||
历史AI建议记录:
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:User not able to enter into member center neither mobile phon...
|
||
|
||
|
||
要求:
|
||
1. 基于已有处理记录和当前进度,分析问题进展情况
|
||
2. 判断之前的处理步骤是否有效,找出可能的遗漏点
|
||
3. 根据问题发展阶段提供更深入的技术解决方案
|
||
4. 如果远程处理无效,明确说明需要哪些线下技术支持
|
||
5. 详细说明进站后需要执行的具体诊断和修复步骤
|
||
6. 包含技术参数、工具要求和注意事项
|
||
7. 便于技术人员快速理解问题状态和下一步行动
|
||
|
||
请提供针对性的深入分析和处理建议:' 返回 3 个结果
|
||
2025-12-08 01:00:01,162 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:01] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 01:00:02,087 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 01:00:04,293 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:04] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 01:00:04,915 - src.integrations.feishu_client - INFO - 发送飞书API请求: GET https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records
|
||
2025-12-08 01:00:04,935 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104c7nOSPYB6V6UE6...
|
||
2025-12-08 01:00:06,700 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-08 01:00:06,703 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'has_more': False, 'items': [{'fields': {'AI建议': "模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}, {'fields': {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}, 'id': 'recv0NLSh2a2S7', 'record_id': 'recv0NLSh2a2S7'}, {'fields': {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}, 'id': 'recv0NLZoKLlRJ', 'record_id': 'recv0NLZoKLlRJ'}, {'fields': {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}, 'id': 'recv0NLZoKjKvx', 'record_id': 'recv0NLZoKjKvx'}], 'total': 4}, 'msg': 'success'}
|
||
2025-12-08 01:00:06,708 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:06] "GET /api/feishu-sync/preview-feishu-data HTTP/1.1" 200 -
|
||
2025-12-08 01:00:13,560 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-08 01:00:13,804 - src.knowledge_base.knowledge_manager - INFO - 成功更新 3 个知识库条目的使用次数
|
||
2025-12-08 01:00:13,810 - src.integrations.ai_suggestion_service - INFO - AI生成原始内容: 经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。
|
||
|
||
当前处理有效性评估:
|
||
✅ 已完成关...
|
||
2025-12-08 01:00:13,828 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。
|
||
|
||
当前处理有效性评估:
|
||
✅ 已完成关
|
||
2025-12-08 01:00:13,838 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。
|
||
2025-12-08 01:00:14,071 - src.integrations.ai_suggestion_service - INFO - AI建议清理后: 经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。...
|
||
2025-12-08 01:00:14,080 - src.integrations.ai_suggestion_service - INFO - _format_ai_suggestion_with_numbering 调用 - time_str=1208, existing长度=112
|
||
2025-12-08 01:00:14,086 - src.integrations.ai_suggestion_service - INFO - 为记录 recv0NLZoKLlRJ 生成AI建议,新建议长度: 197
|
||
2025-12-08 01:00:14,092 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLZoKjKvx - 现有AI建议长度: 112
|
||
2025-12-08 01:00:14,099 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLZoKjKvx - 现有AI建议前100字符: 模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Abnormal traffic consumption
|
||
|
||
相关背景信息:
|
||
相关知识库信息:
|
||
- TR8
|
||
2025-12-08 01:00:14,153 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 01:00:14,177 - src.dialogue.realtime_chat - INFO - 创建新会话: session_ai_suggestion_service_1765126814
|
||
2025-12-08 01:00:14,236 - src.knowledge_base.knowledge_manager - INFO - 搜索查询 '请作为专业的汽车技术支持工程师,为以下工单问题提供详细的技术分析和处理建议。
|
||
|
||
问题描述:
|
||
Abnormal traffic consumption
|
||
|
||
|
||
当前处理进度:
|
||
1024:建议用户抓去DMC日志回传分析
|
||
1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf
|
||
|
||
|
||
历史AI建议记录:
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Abnormal traffic consumption
|
||
|
||
相关背景信息:
|
||
相关知识库信息:
|
||
- TR866 - Traf...
|
||
|
||
|
||
要求:
|
||
1. 基于已有处理记录和当前进度,分析问题进展情况
|
||
2. 判断之前的处理步骤是否有效,找出可能的遗漏点
|
||
3. 根据问题发展阶段提供更深入的技术解决方案
|
||
4. 如果远程处理无效,明确说明需要哪些线下技术支持
|
||
5. 详细说明进站后需要执行的具体诊断和修复步骤
|
||
6. 包含技术参数、工具要求和注意事项
|
||
7. 便于技术人员快速理解问题状态和下一步行动
|
||
|
||
请提供针对性的深入分析和处理建议:' 返回 3 个结果
|
||
2025-12-08 01:00:18,434 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:18] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 01:00:23,257 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:23] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 01:00:24,752 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:24] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 01:00:25,794 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:25] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 01:00:35,439 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-08 01:00:36,167 - src.knowledge_base.knowledge_manager - INFO - 成功更新 3 个知识库条目的使用次数
|
||
2025-12-08 01:00:36,195 - src.integrations.ai_suggestion_service - INFO - AI生成原始内容: 您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:
|
||
|
||
一、问题...
|
||
2025-12-08 01:00:36,200 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:
|
||
|
||
一、问题
|
||
2025-12-08 01:00:36,201 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:
|
||
2025-12-08 01:00:36,201 - src.integrations.ai_suggestion_service - INFO - AI建议清理后: 您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:...
|
||
2025-12-08 01:00:36,204 - src.integrations.ai_suggestion_service - INFO - _format_ai_suggestion_with_numbering 调用 - time_str=1208, existing长度=112
|
||
2025-12-08 01:00:36,231 - src.integrations.ai_suggestion_service - INFO - 为记录 recv0NLZoKjKvx 生成AI建议,新建议长度: 212
|
||
2025-12-08 01:00:36,250 - src.integrations.feishu_client - INFO - 发送飞书API请求: PUT https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records/rec253kqBfXae4
|
||
2025-12-08 01:00:36,250 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104c7nOSPYB6V6UE6...
|
||
2025-12-08 01:00:38,160 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-08 01:00:38,175 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'record': {'fields': {'AI建议': "1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题..."}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}}, 'msg': 'success'}
|
||
2025-12-08 01:00:38,194 - src.integrations.workorder_sync - INFO - 更新飞书记录 rec253kqBfXae4 的AI建议
|
||
2025-12-08 01:00:38,205 - src.integrations.feishu_client - INFO - 发送飞书API请求: PUT https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records/recv0NLSh2a2S7
|
||
2025-12-08 01:00:38,225 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104c7nOSPYB6V6UE6...
|
||
2025-12-08 01:00:39,921 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-08 01:00:39,921 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'record': {'fields': {'AI建议': '1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...'}, 'id': 'recv0NLSh2a2S7', 'record_id': 'recv0NLSh2a2S7'}}, 'msg': 'success'}
|
||
2025-12-08 01:00:39,923 - src.integrations.workorder_sync - INFO - 更新飞书记录 recv0NLSh2a2S7 的AI建议
|
||
2025-12-08 01:00:39,923 - src.integrations.feishu_client - INFO - 发送飞书API请求: PUT https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records/recv0NLZoKLlRJ
|
||
2025-12-08 01:00:39,923 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104c7nOSPYB6V6UE6...
|
||
2025-12-08 01:00:41,718 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-08 01:00:41,719 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'record': {'fields': {'AI建议': '1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...'}, 'id': 'recv0NLZoKLlRJ', 'record_id': 'recv0NLZoKLlRJ'}}, 'msg': 'success'}
|
||
2025-12-08 01:00:41,720 - src.integrations.workorder_sync - INFO - 更新飞书记录 recv0NLZoKLlRJ 的AI建议
|
||
2025-12-08 01:00:41,720 - src.integrations.feishu_client - INFO - 发送飞书API请求: PUT https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records/recv0NLZoKjKvx
|
||
2025-12-08 01:00:41,721 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104c7nOSPYB6V6UE6...
|
||
2025-12-08 01:00:43,739 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-08 01:00:43,741 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'record': {'fields': {'AI建议': '1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...'}, 'id': 'recv0NLZoKjKvx', 'record_id': 'recv0NLZoKjKvx'}}, 'msg': 'success'}
|
||
2025-12-08 01:00:43,741 - src.integrations.workorder_sync - INFO - 更新飞书记录 recv0NLZoKjKvx 的AI建议
|
||
2025-12-08 01:00:43,834 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': "模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}
|
||
2025-12-08 01:00:43,836 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-08 01:00:43,837 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:The widget weather doesn't work
|
||
|
||
相关背景信息:
|
||
无相关背景信息
|
||
|
||
请提供:
|
||
1. 问题...
|
||
2025-12-08 01:00:43,837 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Evgeniy
|
||
2025-12-08 01:00:43,838 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1745769600000
|
||
2025-12-08 01:00:43,838 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: local O&M
|
||
2025-12-08 01:00:43,838 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-08 01:00:43,838 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: The widget weather doesn't work
|
||
2025-12-08 01:00:43,838 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-08 01:00:43,838 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR559
|
||
2025-12-08 01:00:43,840 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Processing
|
||
2025-12-08 01:00:43,840 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.
|
||
2025-12-08 01:00:43,840 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: HU troubles
|
||
2025-12-08 01:00:43,840 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: LVTDD24B8RG019153
|
||
2025-12-08 01:00:43,856 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: EXEED RX(T22)
|
||
2025-12-08 01:00:43,863 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: Evgeniy
|
||
2025-12-08 01:00:43,863 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志
|
||
2025-12-08 01:00:43,956 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-08 01:00:43,960 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-08 01:00:43,961 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-08 01:00:43,961 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-08 01:00:43,961 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-08 01:00:44,146 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}
|
||
2025-12-08 01:00:44,160 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-08 01:00:44,160 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Vehicle data is not updated in the app => dated from October,...
|
||
2025-12-08 01:00:44,160 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Vsevolod Tsoi
|
||
2025-12-08 01:00:44,163 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1761148800000
|
||
2025-12-08 01:00:44,171 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: TBOX
|
||
2025-12-08 01:00:44,171 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-08 01:00:44,171 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.
|
||
|
||
2025-12-08 01:00:44,171 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-08 01:00:44,171 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR863
|
||
2025-12-08 01:00:44,171 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Processing
|
||
2025-12-08 01:00:44,171 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi
|
||
2025-12-08 01:00:44,172 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: Remote control
|
||
2025-12-08 01:00:44,172 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: LNNBDDEZ8SD345645
|
||
2025-12-08 01:00:44,172 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: JAECOO J7(T1EJ)
|
||
2025-12-08 01:00:44,172 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: 刘娇龙
|
||
2025-12-08 01:00:44,172 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志
|
||
2025-12-08 01:00:44,174 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-08 01:00:44,174 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-08 01:00:44,174 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-08 01:00:44,174 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-08 01:00:44,174 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-08 01:00:44,197 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}
|
||
2025-12-08 01:00:44,198 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-08 01:00:44,198 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:User not able to enter into member center neither mobile phon...
|
||
2025-12-08 01:00:44,198 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Vsevolod Tsoi
|
||
2025-12-08 01:00:44,198 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1761148800000
|
||
2025-12-08 01:00:44,198 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: 生态/ecologically
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: User not able to enter into member center neither mobile phone nor QR code.
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR864
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Processing
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 23/10: DMC logs attached as well as vieos of the issue.
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: Problem with auth in member center
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: LNNBDDEZXSD449358
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: EXEED VX FL(M36T)
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: 袁清
|
||
2025-12-08 01:00:44,199 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 1024: DMC logs attached as well as vieos of the issue.
|
||
2025-12-08 01:00:44,202 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-08 01:00:44,202 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-08 01:00:44,208 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-08 01:00:44,222 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-08 01:00:44,228 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-08 01:00:44,283 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': '模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}
|
||
2025-12-08 01:00:44,294 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-08 01:00:44,296 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Abnormal traffic consumption
|
||
|
||
相关背景信息:
|
||
相关知识库信息:
|
||
- TR866 - Traf...
|
||
2025-12-08 01:00:44,483 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Vsevolod Tsoi
|
||
2025-12-08 01:00:44,485 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1761235200000
|
||
2025-12-08 01:00:44,485 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: DMC
|
||
2025-12-08 01:00:44,498 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-08 01:00:44,498 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: Abnormal traffic consumption
|
||
2025-12-08 01:00:44,505 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-08 01:00:44,508 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR866
|
||
2025-12-08 01:00:44,514 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Analysising
|
||
2025-12-08 01:00:44,515 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi
|
||
24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached
|
||
2025-12-08 01:00:44,536 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: Traffic is over
|
||
2025-12-08 01:00:44,543 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: XEYDD14B3SA012164
|
||
2025-12-08 01:00:44,543 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: TEST
|
||
2025-12-08 01:00:44,543 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: Vsevolod Tsoi
|
||
2025-12-08 01:00:44,543 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 1024:建议用户抓去DMC日志回传分析
|
||
1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf
|
||
2025-12-08 01:00:44,547 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-08 01:00:44,547 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-08 01:00:44,548 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-08 01:00:44,548 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-08 01:00:44,548 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-08 01:00:44,738 - src.integrations.workorder_sync - INFO - 飞书同步完成: {'success': True, 'total_records': 4, 'synced_count': 4, 'created_count': 0, 'updated_count': 4, 'ai_suggestions_generated': True, 'errors': []}
|
||
2025-12-08 01:00:44,739 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:44] "POST /api/feishu-sync/sync-from-feishu HTTP/1.1" 200 -
|
||
2025-12-08 01:00:48,369 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:48] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 01:00:54,363 - src.integrations.feishu_client - INFO - 发送飞书API请求: GET https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records
|
||
2025-12-08 01:00:54,398 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104c7nOSPYB6V6UE6...
|
||
2025-12-08 01:00:55,328 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 01:00:56,310 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-08 01:00:56,310 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'has_more': False, 'items': [{'fields': {'AI建议': "1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}, {'fields': {'AI建议': '1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}, 'id': 'recv0NLSh2a2S7', 'record_id': 'recv0NLSh2a2S7'}, {'fields': {'AI建议': '1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}, 'id': 'recv0NLZoKLlRJ', 'record_id': 'recv0NLZoKLlRJ'}, {'fields': {'AI建议': '1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}, 'id': 'recv0NLZoKjKvx', 'record_id': 'recv0NLZoKjKvx'}], 'total': 4}, 'msg': 'success'}
|
||
2025-12-08 01:00:56,317 - src.integrations.flexible_field_mapper - INFO - 开始发现字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-08 01:00:56,374 - src.integrations.flexible_field_mapper - INFO - 字段发现完成: 已映射 15, 未映射 1, 建议映射 1
|
||
2025-12-08 01:00:56,405 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:56] "POST /api/feishu-sync/field-mapping/discover HTTP/1.1" 200 -
|
||
2025-12-08 01:00:57,846 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:00:57] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 01:01:04,117 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 87.2%
|
||
2025-12-08 01:01:04,940 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 87.1%
|
||
2025-12-08 01:01:18,776 - src.integrations.workorder_sync - INFO - 开始从飞书同步工单数据...
|
||
2025-12-08 01:01:18,782 - src.integrations.feishu_client - INFO - 发送飞书API请求: GET https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records
|
||
2025-12-08 01:01:18,783 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104c7nOSPYB6V6UE6...
|
||
2025-12-08 01:01:20,324 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-08 01:01:20,329 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'has_more': False, 'items': [{'fields': {'AI建议': "1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}, {'fields': {'AI建议': '1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}, 'id': 'recv0NLSh2a2S7', 'record_id': 'recv0NLSh2a2S7'}, {'fields': {'AI建议': '1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}, 'id': 'recv0NLZoKLlRJ', 'record_id': 'recv0NLZoKLlRJ'}, {'fields': {'AI建议': '1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}, 'id': 'recv0NLZoKjKvx', 'record_id': 'recv0NLZoKjKvx'}], 'total': 4}, 'msg': 'success'}
|
||
2025-12-08 01:01:20,331 - src.integrations.workorder_sync - INFO - 从飞书获取 4 条记录
|
||
2025-12-08 01:01:20,396 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': "1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}
|
||
2025-12-08 01:01:20,680 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-08 01:01:20,681 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:The widget weather doesn't work
|
||
|
||
相关背景信息:
|
||
无相关背景信息
|
||
|
||
请提供:
|
||
1. 问题...
|
||
2025-12-08 01:01:20,681 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Evgeniy
|
||
2025-12-08 01:01:20,681 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1745769600000
|
||
2025-12-08 01:01:20,681 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: local O&M
|
||
2025-12-08 01:01:20,681 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-08 01:01:20,681 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: The widget weather doesn't work
|
||
2025-12-08 01:01:20,681 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-08 01:01:20,681 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR559
|
||
2025-12-08 01:01:20,681 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Processing
|
||
2025-12-08 01:01:20,681 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.
|
||
2025-12-08 01:01:20,699 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: HU troubles
|
||
2025-12-08 01:01:20,699 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: LVTDD24B8RG019153
|
||
2025-12-08 01:01:20,699 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: EXEED RX(T22)
|
||
2025-12-08 01:01:20,699 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: Evgeniy
|
||
2025-12-08 01:01:20,699 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志
|
||
2025-12-08 01:01:20,702 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-08 01:01:20,702 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-08 01:01:20,702 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-08 01:01:20,702 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-08 01:01:20,702 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-08 01:01:20,714 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': '1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}
|
||
2025-12-08 01:01:20,720 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-08 01:01:20,720 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Vehicle data is not updated in the app => dated from October,...
|
||
2025-12-08 01:01:20,720 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Vsevolod Tsoi
|
||
2025-12-08 01:01:20,726 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1761148800000
|
||
2025-12-08 01:01:20,726 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: TBOX
|
||
2025-12-08 01:01:20,726 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-08 01:01:20,733 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.
|
||
|
||
2025-12-08 01:01:20,738 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-08 01:01:20,748 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR863
|
||
2025-12-08 01:01:20,748 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Processing
|
||
2025-12-08 01:01:20,787 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi
|
||
2025-12-08 01:01:20,787 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: Remote control
|
||
2025-12-08 01:01:20,787 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: LNNBDDEZ8SD345645
|
||
2025-12-08 01:01:20,788 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: JAECOO J7(T1EJ)
|
||
2025-12-08 01:01:20,788 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: 刘娇龙
|
||
2025-12-08 01:01:20,789 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志
|
||
2025-12-08 01:01:20,802 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-08 01:01:20,815 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-08 01:01:20,822 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-08 01:01:20,823 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-08 01:01:20,849 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-08 01:01:20,906 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': '1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}
|
||
2025-12-08 01:01:20,941 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-08 01:01:20,941 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:User not able to enter into member center neither mobile phon...
|
||
2025-12-08 01:01:20,941 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Vsevolod Tsoi
|
||
2025-12-08 01:01:20,941 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1761148800000
|
||
2025-12-08 01:01:20,941 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: 生态/ecologically
|
||
2025-12-08 01:01:20,941 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-08 01:01:20,942 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: User not able to enter into member center neither mobile phone nor QR code.
|
||
2025-12-08 01:01:20,942 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-08 01:01:20,942 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR864
|
||
2025-12-08 01:01:20,942 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Processing
|
||
2025-12-08 01:01:20,942 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 23/10: DMC logs attached as well as vieos of the issue.
|
||
2025-12-08 01:01:20,942 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: Problem with auth in member center
|
||
2025-12-08 01:01:20,942 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: LNNBDDEZXSD449358
|
||
2025-12-08 01:01:20,942 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: EXEED VX FL(M36T)
|
||
2025-12-08 01:01:20,942 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: 袁清
|
||
2025-12-08 01:01:20,943 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 1024: DMC logs attached as well as vieos of the issue.
|
||
2025-12-08 01:01:20,946 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-08 01:01:20,946 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-08 01:01:20,946 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-08 01:01:20,946 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-08 01:01:20,953 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-08 01:01:21,010 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': '1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}
|
||
2025-12-08 01:01:21,021 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-08 01:01:21,022 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Abnormal traffic consumption
|
||
|
||
相关背景信息:
|
||
相关知识库信息:
|
||
- TR866 - Traf...
|
||
2025-12-08 01:01:21,030 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Vsevolod Tsoi
|
||
2025-12-08 01:01:21,031 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1761235200000
|
||
2025-12-08 01:01:21,039 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: DMC
|
||
2025-12-08 01:01:21,039 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-08 01:01:21,040 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: Abnormal traffic consumption
|
||
2025-12-08 01:01:21,040 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-08 01:01:21,047 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR866
|
||
2025-12-08 01:01:21,047 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Analysising
|
||
2025-12-08 01:01:21,047 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi
|
||
24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached
|
||
2025-12-08 01:01:21,047 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: Traffic is over
|
||
2025-12-08 01:01:21,047 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: XEYDD14B3SA012164
|
||
2025-12-08 01:01:21,047 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: TEST
|
||
2025-12-08 01:01:21,047 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: Vsevolod Tsoi
|
||
2025-12-08 01:01:21,047 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 1024:建议用户抓去DMC日志回传分析
|
||
1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf
|
||
2025-12-08 01:01:21,050 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-08 01:01:21,050 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-08 01:01:21,050 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-08 01:01:21,050 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-08 01:01:21,050 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-08 01:01:21,131 - src.integrations.workorder_sync - INFO - 飞书同步完成: {'success': True, 'total_records': 4, 'synced_count': 4, 'created_count': 0, 'updated_count': 4, 'ai_suggestions_generated': False, 'errors': []}
|
||
2025-12-08 01:01:21,132 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:01:21] "POST /api/feishu-sync/sync-from-feishu HTTP/1.1" 200 -
|
||
2025-12-08 01:01:22,302 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:01:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 01:01:29,904 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:01:29] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 01:01:33,628 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:01:33] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 01:01:43,409 - werkzeug - INFO - 203.175.14.32 - - [08/Dec/2025 01:01:43] "GET /api/feishu-sync/field-mapping/status HTTP/1.1" 200 -
|
||
2025-12-08 01:01:47,237 - werkzeug - INFO - 23.247.138.217 - - [08/Dec/2025 01:01:47] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 01:01:51,719 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:01:51] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 01:02:05,782 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 90.7%
|
||
2025-12-08 01:02:06,308 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 90.9%
|
||
2025-12-08 01:02:12,892 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-08 01:02:13,693 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-08 01:02:13,698 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-08 01:02:16,181 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-08 01:02:16,191 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-08 01:02:16,250 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.3.12.3:5000
|
||
2025-12-08 01:02:16,250 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-08 01:02:16,561 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 01:02:16,562 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 01:02:16,572 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 01:02:16,576 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 01:02:16,578 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 01:02:16,586 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 01:02:16,615 - werkzeug - INFO - 23.247.138.217 - - [08/Dec/2025 01:02:16] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 01:02:38,059 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:02:38] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 01:02:38,625 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:02:38] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 01:02:38,627 - werkzeug - INFO - 36.231.97.35 - - [08/Dec/2025 01:02:38] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 13:22:24,082 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-08 13:22:24,658 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-08 13:22:24,663 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-08 13:22:27,263 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-08 13:22:27,273 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-08 13:22:27,332 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.3.12.3:5000
|
||
2025-12-08 13:22:27,332 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-08 13:22:48,185 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:48] "GET / HTTP/1.1" 200 -
|
||
2025-12-08 13:22:48,305 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:48] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-08 13:22:48,425 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:48] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-08 13:22:48,642 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:48] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-08 13:22:48,669 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:48] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-08 13:22:48,675 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:48] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-08 13:22:48,676 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:48] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-08 13:22:48,871 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:48] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-08 13:22:48,999 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:48] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-08 13:22:49,125 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:49] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-08 13:22:50,310 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 13:22:50,311 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 13:22:50,316 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-08 13:22:50,316 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-08 13:22:50,317 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:50] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-08 13:22:50,326 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 13:22:50,328 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 13:22:50,329 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 13:22:50,332 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 13:22:50,332 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 13:22:50,333 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:50] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-08 13:22:50,338 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 13:22:50,341 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-08 13:22:50,569 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 13:22:50,571 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-08 13:22:50,572 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:50] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-08 13:22:50,931 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:50] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-08 13:22:50,972 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:50] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:22:50,984 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:50] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-08 13:22:51,176 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:51] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-08 13:22:51,192 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:51] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 13:22:51,203 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:51] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-08 13:22:51,383 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:51] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-08 13:22:51,453 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-08 13:22:51,489 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-08 13:22:51,495 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-08 13:22:51,495 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-08 13:22:51,503 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-08 13:22:51,506 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-08 13:22:51,506 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-08 13:22:51,515 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-08 13:22:51,519 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-08 13:22:51,524 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-08 13:22:51,525 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-08 13:22:51,532 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-08 13:22:51,534 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-08 13:22:51,535 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-08 13:22:51,542 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-08 13:22:51,548 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-08 13:22:51,553 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-08 13:22:51,557 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-08 13:22:51,566 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-08 13:22:51,568 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-08 13:22:51,571 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-08 13:22:51,572 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-08 13:22:51,576 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-08 13:22:51,581 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-08 13:22:51,582 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-08 13:22:51,587 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-08 13:22:51,635 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:51] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-08 13:22:55,597 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:22:55] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 13:23:00,728 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:23:08,875 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:08] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-08 13:23:08,888 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:08] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-08 13:23:09,246 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:09] "GET /api/agent/tools/stats HTTP/1.1" 200 -
|
||
2025-12-08 13:23:09,302 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:09] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-08 13:23:10,525 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:10] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:23:10,865 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:10] "GET /api/alerts?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-08 13:23:11,751 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:11] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 13:23:12,403 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:23:15,711 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:15] "POST /api/batch-delete/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:23:16,658 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:16] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 13:23:17,555 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:17] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 13:23:17,980 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:17] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 13:23:42,384 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:23:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:24:00,231 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:24:00] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 13:24:01,376 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:24:01] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:24:01,737 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:24:01] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-08 13:24:02,538 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:24:02] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 13:24:08,797 - src.web.error_handlers - ERROR - 错误响应: 预警不存在: [111610, 111608, 111611, 111606, 111607, 111672, 111673, 111674, 111675, 111609] - None
|
||
2025-12-08 13:24:08,802 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:24:08] "[33mPOST /api/batch-delete/alerts HTTP/1.1[0m" 404 -
|
||
2025-12-08 13:24:09,306 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:24:09] "GET /api/alerts?page=1&per_page=50 HTTP/1.1" 200 -
|
||
2025-12-08 13:24:17,892 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:24:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:24:33,642 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:24:33] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:24:44,176 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:24:44] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:24:51,434 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:24:51] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 13:24:51,470 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:24:51] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:24:55,480 - werkzeug - INFO - 211.141.219.110 - - [08/Dec/2025 13:24:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:25:11,583 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:25:11] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:25:16,365 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:25:16] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:25:35,401 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:25:35] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:25:58,762 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:25:58] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:25:59,367 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:25:59] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:26:10,513 - werkzeug - INFO - 220.196.160.125 - - [08/Dec/2025 13:26:10] "GET / HTTP/1.1" 200 -
|
||
2025-12-08 13:26:11,746 - werkzeug - INFO - 159.75.199.224 - - [08/Dec/2025 13:26:11] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-08 13:26:11,953 - werkzeug - INFO - 159.75.199.224 - - [08/Dec/2025 13:26:11] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-08 13:26:12,169 - werkzeug - INFO - 43.144.106.82 - - [08/Dec/2025 13:26:12] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-08 13:26:12,765 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:12] "GET / HTTP/1.1" 200 -
|
||
2025-12-08 13:26:13,198 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:13] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-08 13:26:13,226 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:13] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-08 13:26:13,641 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:13] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-08 13:26:13,653 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:13] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-08 13:26:13,660 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:13] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-08 13:26:13,664 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:13] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-08 13:26:13,669 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:13] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-08 13:26:13,683 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:13] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-08 13:26:13,904 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:13] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-08 13:26:15,947 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:15] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-08 13:26:15,949 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:15] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-08 13:26:16,071 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:16] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-08 13:26:16,270 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:16] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:26:16,524 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:16] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-08 13:26:16,791 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:16] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-08 13:26:17,023 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:17] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-08 13:26:17,130 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:17] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-08 13:26:17,808 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:17] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-08 13:26:17,918 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:17] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 13:26:22,605 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:22] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-08 13:26:26,034 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:26] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:26:27,225 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:26:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:26:30,789 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:26:30] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:26:36,011 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:36] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-08 13:26:44,098 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:26:44] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:26:47,862 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:26:47] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-08 13:27:02,616 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:27:02,627 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:27:02,628 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:27:02,631 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:27:02,632 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:27:02,817 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:27:31,856 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:27:31] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:27:40,039 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:27:40] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-08 13:27:43,368 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:27:43] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 13:27:54,941 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:27:54] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:28:04,121 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.0%
|
||
2025-12-08 13:28:04,135 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.1%
|
||
2025-12-08 13:28:04,143 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.0%
|
||
2025-12-08 13:28:04,148 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.0%
|
||
2025-12-08 13:28:04,148 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.1%
|
||
2025-12-08 13:28:04,153 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.0%
|
||
2025-12-08 13:28:26,089 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:28:26] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:31:34,853 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.1%
|
||
2025-12-08 13:31:34,850 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.1%
|
||
2025-12-08 13:31:34,864 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.1%
|
||
2025-12-08 13:31:34,873 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.1%
|
||
2025-12-08 13:31:34,879 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.1%
|
||
2025-12-08 13:31:34,932 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 94.0%
|
||
2025-12-08 13:31:44,979 - src.core.database - ERROR - 数据库操作失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
[SQL: SELECT alerts.id AS alerts_id, alerts.rule_name AS alerts_rule_name, alerts.alert_type AS alerts_alert_type, alerts.level AS alerts_level, alerts.severity AS alerts_severity, alerts.message AS alerts_message, alerts.data AS alerts_data, alerts.is_active AS alerts_is_active, alerts.created_at AS alerts_created_at, alerts.resolved_at AS alerts_resolved_at
|
||
FROM alerts
|
||
WHERE alerts.is_active = true ORDER BY alerts.created_at DESC]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 13:31:45,046 - src.analytics.alert_system - ERROR - 获取活跃预警失败: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')
|
||
[SQL: SELECT alerts.id AS alerts_id, alerts.rule_name AS alerts_rule_name, alerts.alert_type AS alerts_alert_type, alerts.level AS alerts_level, alerts.severity AS alerts_severity, alerts.message AS alerts_message, alerts.data AS alerts_data, alerts.is_active AS alerts_is_active, alerts.created_at AS alerts_created_at, alerts.resolved_at AS alerts_resolved_at
|
||
FROM alerts
|
||
WHERE alerts.is_active = true ORDER BY alerts.created_at DESC]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-08 13:31:56,702 - werkzeug - INFO - 180.101.245.246 - - [08/Dec/2025 13:31:56] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-08 13:32:16,444 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:32:16] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:32:22,328 - werkzeug - INFO - 220.205.252.43 - - [08/Dec/2025 13:32:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-08 13:32:36,038 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:32:36,044 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:32:36,045 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:32:36,045 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:32:36,069 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.2%
|
||
2025-12-08 13:32:36,088 - src.core.system_optimizer - WARNING - 性能预警: 内存使用率过高: 88.1%
|
||
2025-12-10 16:03:04,292 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-10 16:03:08,151 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-10 16:03:08,620 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-10 16:03:10,589 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-10 16:03:10,622 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-10 16:03:10,712 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://172.23.31.194:5000
|
||
2025-12-10 16:03:10,712 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-10 16:03:11,311 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-10 16:03:11,538 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-10 16:03:11,543 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-10 16:03:11,544 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-10 16:03:13,917 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:13] "GET / HTTP/1.1" 200 -
|
||
2025-12-10 16:03:14,894 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-10 16:03:14,894 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-10 16:03:14,895 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:14] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-10 16:03:14,935 - websockets.server - INFO - connection open
|
||
2025-12-10 16:03:14,936 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-10 16:03:15,753 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-10 16:03:16,183 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:16] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-10 16:03:16,262 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-10 16:03:16,308 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-10 16:03:16,463 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-10 16:03:16,504 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-10 16:03:16,756 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-10 16:03:16,819 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:16] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-10 16:03:16,904 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-10 16:03:16,986 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-10 16:03:16,987 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:16] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-10 16:03:16,993 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:16] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-10 16:03:16,997 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:16] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-10 16:03:17,148 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-10 16:03:17,149 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:17] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-10 16:03:17,155 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:17] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-10 16:03:17,234 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-10 16:03:17,386 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 24 个条目
|
||
2025-12-10 16:03:17,479 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-10 16:03:17,480 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-10 16:03:17,480 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-10 16:03:17,481 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-10 16:03:17,482 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-10 16:03:17,484 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-10 16:03:17,485 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-10 16:03:17,486 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-10 16:03:17,487 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-10 16:03:17,489 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-10 16:03:17,489 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-10 16:03:17,490 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-10 16:03:17,492 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-10 16:03:17,492 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-10 16:03:17,494 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-10 16:03:17,495 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-10 16:03:17,496 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-10 16:03:17,497 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-10 16:03:17,498 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-10 16:03:17,499 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-10 16:03:17,500 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-10 16:03:17,503 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-10 16:03:17,505 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-10 16:03:17,506 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-10 16:03:17,507 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-10 16:03:17,629 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-10 16:03:17,741 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:17] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-10 16:03:17,746 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:17] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-10 16:03:17,750 - src.dialogue.realtime_chat - INFO - 创建新会话: session_user_001_1765353797
|
||
2025-12-10 16:03:17,751 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:17] "POST /api/chat/session HTTP/1.1" 200 -
|
||
2025-12-10 16:03:18,141 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:18] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-10 16:03:18,352 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:18] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-10 16:03:18,469 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:18] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-10 16:03:19,067 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:19] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-10 16:03:19,984 - websockets.server - INFO - connection open
|
||
2025-12-10 16:03:19,985 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-10 16:03:20,026 - src.knowledge_base.knowledge_manager - INFO - 搜索查询 'APP显示车辆信息错误' 返回 1 个结果
|
||
2025-12-10 16:03:21,987 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:21] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-10 16:03:22,618 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:22] "GET /api/workorders?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-10 16:03:23,274 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-10 16:03:24,420 - src.knowledge_base.knowledge_manager - INFO - 成功更新 1 个知识库条目的使用次数
|
||
2025-12-10 16:03:24,421 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:24] "POST /api/chat/message HTTP/1.1" 200 -
|
||
2025-12-10 16:03:24,992 - websockets.server - INFO - connection open
|
||
2025-12-10 16:03:24,993 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-10 16:03:25,021 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:25] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-10 16:03:25,110 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:25] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-10 16:03:25,749 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:25] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-10 16:03:29,707 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:29] "POST /api/batch-delete/workorders HTTP/1.1" 200 -
|
||
2025-12-10 16:03:30,005 - websockets.server - INFO - connection open
|
||
2025-12-10 16:03:30,005 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-10 16:03:31,279 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:31] "GET /api/workorders?page=true&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-10 16:03:35,011 - websockets.server - INFO - connection open
|
||
2025-12-10 16:03:35,011 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-10 16:03:35,546 - werkzeug - INFO - 127.0.0.1 - - [10/Dec/2025 16:03:35] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-10 16:03:40,022 - websockets.server - INFO - connection open
|
||
2025-12-10 16:03:40,022 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-10 16:03:45,038 - websockets.server - INFO - connection open
|
||
2025-12-10 16:03:45,038 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 09:56:08,705 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 09:56:22,795 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 09:56:44,222 - src.core.database - ERROR - 数据库初始化失败: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on 'jeason.online' ([WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。)")
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 09:56:44,223 - __main__ - ERROR - 数据库连接失败,退出启动
|
||
2025-12-12 09:57:09,661 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 09:57:09,974 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 09:57:09,975 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 09:57:11,908 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 09:57:11,917 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 09:57:12,030 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 09:57:12,031 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 09:57:12,056 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 09:57:12,062 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-12 09:57:12,063 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-12 09:57:21,982 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:21] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 09:57:22,283 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:22] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:22,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:22] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:22,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:22] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 09:57:22,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:22] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 09:57:22,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:22] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 09:57:22,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:22] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 09:57:22,591 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:22] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 09:57:22,621 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:22] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 09:57:22,622 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:22] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,100 - websockets.server - INFO - connection open
|
||
2025-12-12 09:57:23,100 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 09:57:23,343 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,344 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-12 09:57:23,347 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-12 09:57:23,348 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 09:57:23,350 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,351 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-12 09:57:23,351 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,351 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 09:57:23,354 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,357 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 09:57:23,381 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,654 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,666 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,672 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,677 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,692 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,715 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-12 09:57:23,716 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-12 09:57:23,717 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-12 09:57:23,718 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-12 09:57:23,720 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-12 09:57:23,721 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-12 09:57:23,722 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-12 09:57:23,723 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-12 09:57:23,723 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-12 09:57:23,725 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-12 09:57:23,727 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-12 09:57:23,728 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-12 09:57:23,730 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-12 09:57:23,731 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-12 09:57:23,732 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-12 09:57:23,733 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-12 09:57:23,735 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-12 09:57:23,736 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-12 09:57:23,737 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-12 09:57:23,738 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-12 09:57:23,739 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-12 09:57:23,741 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-12 09:57:23,743 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-12 09:57:23,744 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-12 09:57:23,746 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-12 09:57:23,752 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:23,991 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:23] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 09:57:24,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:24] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 09:57:24,321 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:24] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 09:57:24,580 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:24] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 09:57:24,639 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:24] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,075 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,169 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,175 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,178 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,189 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,190 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,195 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,211 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,213 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,227 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,830 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,835 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,843 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,852 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,871 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,875 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,881 - websockets.server - INFO - connection open
|
||
2025-12-12 09:57:26,883 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,885 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 09:57:26,886 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,899 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,904 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,914 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,963 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 09:57:26,965 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 09:57:26,994 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:26] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 09:57:27,006 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:27] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 09:57:27,021 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:27] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 09:57:28,128 - websockets.server - INFO - connection open
|
||
2025-12-12 09:57:28,129 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 09:57:28,350 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:28] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:28,429 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:28] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:28,431 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:28] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 09:57:28,749 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:28] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 09:57:30,520 - src.dialogue.realtime_chat - INFO - 创建新会话: session_user_001_1765504650
|
||
2025-12-12 09:57:30,521 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:30] "POST /api/chat/session HTTP/1.1" 200 -
|
||
2025-12-12 09:57:31,835 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:31] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:31,867 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:31] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:31,870 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:31] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 09:57:31,882 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:31] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 09:57:31,945 - websockets.server - INFO - connection open
|
||
2025-12-12 09:57:31,946 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 09:57:31,971 - src.knowledge_base.knowledge_manager - WARNING - 知识库中没有活跃条目
|
||
2025-12-12 09:57:33,140 - websockets.server - INFO - connection open
|
||
2025-12-12 09:57:33,141 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 09:57:33,345 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:33] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:57:33,378 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:33] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:36,097 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-12 09:57:36,109 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:36] "POST /api/chat/message HTTP/1.1" 200 -
|
||
2025-12-12 09:57:37,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:37] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:57:37,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:41,846 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:41] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:44,614 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:44] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:44,616 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:44] "GET /api/agent/tools/stats HTTP/1.1" 200 -
|
||
2025-12-12 09:57:45,837 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:45] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:46,824 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:46] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:57:46,839 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:46] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:48,447 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:48] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:48,671 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:48] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:48,865 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:48] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 09:57:52,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:57:57,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:57] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:57:57,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:57:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:02,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:05,580 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:05] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 09:58:06,830 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:06] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:58:06,845 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:06] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:07,039 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:07] "GET /api/workorders?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 09:58:08,543 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:08] "GET /api/conversations?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 09:58:11,755 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:11] "GET /api/conversations/1 HTTP/1.1" 200 -
|
||
2025-12-12 09:58:11,845 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:11] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:15,046 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:15] "GET /api/token-monitor/stats HTTP/1.1" 200 -
|
||
2025-12-12 09:58:15,065 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:15] "GET /api/token-monitor/records HTTP/1.1" 200 -
|
||
2025-12-12 09:58:15,067 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:15] "GET /api/token-monitor/chart HTTP/1.1" 200 -
|
||
2025-12-12 09:58:16,833 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:16] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:58:16,859 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:16] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:18,279 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:18] "GET /api/ai-monitor/stats HTTP/1.1" 200 -
|
||
2025-12-12 09:58:18,290 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:18] "GET /api/ai-monitor/model-comparison HTTP/1.1" 200 -
|
||
2025-12-12 09:58:18,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:18] "GET /api/ai-monitor/error-distribution HTTP/1.1" 200 -
|
||
2025-12-12 09:58:18,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:18] "GET /api/ai-monitor/error-log HTTP/1.1" 200 -
|
||
2025-12-12 09:58:21,836 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:21] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:21,917 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:21] "GET /api/system-optimizer/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:21,928 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:21] "GET /api/system-optimizer/security-settings HTTP/1.1" 200 -
|
||
2025-12-12 09:58:21,929 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:21] "GET /api/system-optimizer/traffic-settings HTTP/1.1" 200 -
|
||
2025-12-12 09:58:21,931 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:21] "GET /api/system-optimizer/cost-settings HTTP/1.1" 200 -
|
||
2025-12-12 09:58:24,855 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:24] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 09:58:24,878 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:24] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 09:58:24,964 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:24] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 09:58:26,824 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:26] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:58:26,840 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:26] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:32,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:37,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:37] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:58:37,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:42,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:45,244 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:45] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 09:58:45,252 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:45] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 09:58:45,267 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:45] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 09:58:46,828 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:46] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:58:46,845 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:46] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:49,207 - src.integrations.feishu_client - INFO - 正在获取飞书tenant_access_token,应用ID: cli_a8b50ec0eed1500d
|
||
2025-12-12 09:58:49,381 - src.integrations.feishu_client - INFO - 飞书API响应: {'code': 0, 'expire': 3072, 'msg': 'ok', 'tenant_access_token': 't-g104cc8O2CZW3GLGNUZ3LZWBEO5TTEGCCVWP2HHG'}
|
||
2025-12-12 09:58:49,382 - src.integrations.feishu_client - INFO - tenant_access_token获取成功: t-g104cc8O2CZW3GLGNU...
|
||
2025-12-12 09:58:49,382 - src.integrations.feishu_client - INFO - 令牌有效期: 3072秒,过期时间: 2025-12-12 10:50:01
|
||
2025-12-12 09:58:49,383 - src.integrations.feishu_client - INFO - 发送飞书API请求: GET https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records
|
||
2025-12-12 09:58:49,383 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104cc8O2CZW3GLGNU...
|
||
2025-12-12 09:58:52,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:58:53,022 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-12 09:58:53,023 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'has_more': False, 'items': [{'fields': {'AI建议': "1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}, {'fields': {'AI建议': '1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}, 'id': 'recv0NLSh2a2S7', 'record_id': 'recv0NLSh2a2S7'}, {'fields': {'AI建议': '1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}, 'id': 'recv0NLZoKLlRJ', 'record_id': 'recv0NLZoKLlRJ'}, {'fields': {'AI建议': '1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}, 'id': 'recv0NLZoKjKvx', 'record_id': 'recv0NLZoKjKvx'}], 'total': 4}, 'msg': 'success'}
|
||
2025-12-12 09:58:53,027 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:53] "GET /api/feishu-sync/preview-feishu-data HTTP/1.1" 200 -
|
||
2025-12-12 09:58:57,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:57] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:58:57,320 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:58:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:02,778 - src.integrations.workorder_sync - INFO - 从飞书记录 rec253kqBfXae4 创建工单
|
||
2025-12-12 09:59:02,778 - src.integrations.feishu_client - INFO - 发送飞书API请求: GET https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records/rec253kqBfXae4
|
||
2025-12-12 09:59:02,779 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104cc8O2CZW3GLGNU...
|
||
2025-12-12 09:59:02,793 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:04,679 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-12 09:59:04,679 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'record': {'fields': {'AI建议': "1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}}, 'msg': 'success'}
|
||
2025-12-12 09:59:04,681 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': "1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}
|
||
2025-12-12 09:59:04,682 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-12 09:59:04,682 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:The widget weather doesn't work
|
||
|
||
相关背景信息:
|
||
无相关背景信息
|
||
|
||
请提供:
|
||
1. 问题...
|
||
2025-12-12 09:59:04,683 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Evgeniy
|
||
2025-12-12 09:59:04,683 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1745769600000
|
||
2025-12-12 09:59:04,684 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: local O&M
|
||
2025-12-12 09:59:04,684 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-12 09:59:04,684 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: The widget weather doesn't work
|
||
2025-12-12 09:59:04,684 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-12 09:59:04,685 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR559
|
||
2025-12-12 09:59:04,685 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Processing
|
||
2025-12-12 09:59:04,685 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.
|
||
2025-12-12 09:59:04,685 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: HU troubles
|
||
2025-12-12 09:59:04,686 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: LVTDD24B8RG019153
|
||
2025-12-12 09:59:04,686 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: EXEED RX(T22)
|
||
2025-12-12 09:59:04,686 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: Evgeniy
|
||
2025-12-12 09:59:04,686 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志
|
||
2025-12-12 09:59:04,691 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-12 09:59:04,691 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-12 09:59:04,691 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-12 09:59:04,692 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-12 09:59:04,692 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-12 09:59:04,704 - src.integrations.workorder_sync - INFO - 创建工单成功: TR559
|
||
2025-12-12 09:59:04,704 - src.integrations.workorder_sync - ERROR - 从飞书记录创建工单失败: Instance <WorkOrder at 0x2e2de1aef90> is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3)
|
||
2025-12-12 09:59:04,705 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:04] "[31m[1mPOST /api/feishu-sync/create-workorder HTTP/1.1[0m" 400 -
|
||
2025-12-12 09:59:07,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:07] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:59:07,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:12,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:17,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:17] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:59:17,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:22,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:23,519 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:23] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 09:59:26,833 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:26] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:59:26,851 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:26] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:31,840 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:31] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:37,285 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:37] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:59:37,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:42,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:47,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:47] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:59:47,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:52,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 09:59:57,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:57] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 09:59:57,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 09:59:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:02,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:07,074 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:00:07,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:07] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:00:07,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:07,386 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:00:07,387 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:00:09,273 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:00:09,284 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:00:09,394 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:00:09,394 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:00:09,418 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:00:12,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:17,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:17] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:00:17,341 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:18,114 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:18] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 10:00:18,358 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:18] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:00:18,453 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:18] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:00:18,453 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:18] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 10:00:18,458 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:18] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 10:00:18,460 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:18] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:00:18,462 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:18] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:00:18,666 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:18] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 10:00:18,776 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:18] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 10:00:18,776 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:18] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 10:00:19,586 - websockets.server - INFO - connection open
|
||
2025-12-12 10:00:19,586 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:00:19,840 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:19] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 10:00:19,843 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:19] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:19,846 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:19] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:00:19,854 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:19] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:00:19,859 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:19] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:20,152 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:20] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:00:20,157 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:20] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:00:20,162 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:20] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 10:00:20,166 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:20] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:00:20,168 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:20] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 10:00:20,175 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:20] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:20,489 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:20] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:00:20,821 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:20] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:00:21,063 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:21] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:00:21,140 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:21] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:00:22,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:23,011 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:23] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 10:00:24,607 - websockets.server - INFO - connection open
|
||
2025-12-12 10:00:24,607 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:00:24,837 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:24] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:24,906 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:24] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:00:24,910 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:24] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:00:25,149 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:25] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:00:27,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:27] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:00:27,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:29,526 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:29] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:00:29,624 - websockets.server - INFO - connection open
|
||
2025-12-12 10:00:29,624 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
path = websocket.path
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:00:29,848 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:29] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:32,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:00:55,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:00:55,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:00:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:01:55,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:01:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:01:55,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:01:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:02:55,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:02:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:02:55,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:02:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:03:12,136 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:03:12,432 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:03:12,433 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:03:14,224 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:03:14,233 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:03:14,339 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:03:14,340 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:03:14,363 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:03:24,337 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:24] "GET /dashboard HTTP/1.1" 200 -
|
||
2025-12-12 10:03:24,525 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:24] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:03:24,525 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:24] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:03:24,530 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:24] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 10:03:24,544 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:24] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 10:03:24,547 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:24] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:03:24,549 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:24] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:03:24,556 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:24] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 10:03:24,557 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:24] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 10:03:24,558 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:24] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,705 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,705 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,710 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,721 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,727 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,736 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,742 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,742 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,751 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,771 - websockets.server - INFO - connection open
|
||
2025-12-12 10:03:25,771 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
if websocket.request_headers.get("Origin"):
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:03:25,773 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,776 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,794 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,811 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,823 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:03:25,833 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:25] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:03:26,677 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:26] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 10:03:30,714 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:30] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:03:30,796 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:30] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:03:30,799 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:30] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:03:30,802 - websockets.server - INFO - connection open
|
||
2025-12-12 10:03:30,804 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
if websocket.request_headers.get("Origin"):
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:03:30,811 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:30] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:03:35,708 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:35] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:03:35,723 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:35] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:03:35,814 - websockets.server - INFO - connection open
|
||
2025-12-12 10:03:35,815 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
if websocket.request_headers.get("Origin"):
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:03:40,711 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:40] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:03:40,821 - websockets.server - INFO - connection open
|
||
2025-12-12 10:03:40,821 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
if websocket.request_headers.get("Origin"):
|
||
^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:03:55,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:03:55,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:03:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:04:55,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:04:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:04:55,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:04:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:05:55,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:05:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:05:55,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:05:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:06:55,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:06:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:06:55,326 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:06:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:07:26,517 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:07:26,814 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:07:26,816 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:07:28,608 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:07:28,617 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:07:28,722 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:07:28,723 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:07:28,746 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:07:55,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:07:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:07:55,332 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:07:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:08:55,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:08:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:08:55,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:08:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:09:36,651 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:09:36,944 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:09:36,945 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:09:38,754 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:09:38,764 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:09:38,877 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:09:38,878 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:09:38,902 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:09:55,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:09:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:09:55,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:09:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:10:55,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:10:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:10:55,324 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:10:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:11:06,581 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:11:06,877 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:11:06,878 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:11:08,730 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:11:08,740 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:11:08,843 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:11:08,844 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:11:08,867 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:11:44,560 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:44] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 10:11:44,628 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:44] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:11:44,632 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:44] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:11:44,636 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:44] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 10:11:44,640 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:44] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 10:11:44,646 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:44] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:11:44,648 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:44] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:11:44,652 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:44] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 10:11:44,655 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:44] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 10:11:44,657 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:44] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,640 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,641 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,645 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,655 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,663 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,672 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,673 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,680 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,681 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,703 - websockets.server - INFO - connection open
|
||
2025-12-12 10:11:45,704 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:11:45,706 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,708 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,729 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,745 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,752 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:11:45,767 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:45] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:11:46,642 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:46] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 10:11:50,657 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:11:50,717 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:50] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:11:50,718 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:50] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:11:50,730 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:50] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:11:50,734 - websockets.server - INFO - connection open
|
||
2025-12-12 10:11:50,736 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:11:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:11:55,324 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:11:55,647 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:11:55,663 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:11:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:11:55,757 - websockets.server - INFO - connection open
|
||
2025-12-12 10:11:55,758 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:12:00,667 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:12:00,770 - websockets.server - INFO - connection open
|
||
2025-12-12 10:12:00,771 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:12:05,656 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:05] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:12:05,665 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:05] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:12:05,777 - websockets.server - INFO - connection open
|
||
2025-12-12 10:12:05,778 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:12:10,662 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:10] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:12:10,787 - websockets.server - INFO - connection open
|
||
2025-12-12 10:12:10,788 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:12:15,644 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:15] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:12:15,653 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:15] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:12:15,661 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:15] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:12:15,664 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:15] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:12:15,674 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:15] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:12:15,675 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:15] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:12:15,685 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:15] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:12:15,703 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:15] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:12:15,712 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:15] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:12:15,718 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:15] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:12:15,796 - websockets.server - INFO - connection open
|
||
2025-12-12 10:12:15,796 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:12:20,656 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:20] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:12:20,802 - websockets.server - INFO - connection open
|
||
2025-12-12 10:12:20,803 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:12:55,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:12:55,330 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:12:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:13:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:13:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:13:55,327 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:13:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:01,488 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:01] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 10:14:01,567 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:01] "[36mGET /static/css/design-system.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:14:01,568 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:01] "[36mGET /static/css/style.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:14:01,587 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:01] "[36mGET /static/css/design-system.css HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:14:01,591 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:01] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:14:01,596 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:01] "[36mGET /static/js/services/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:14:01,604 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:01] "[36mGET /static/js/components/NotificationManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:14:01,606 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:01] "[36mGET /static/js/components/AlertManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:14:01,612 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:01] "[36mGET /static/js/app-new.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:14:01,614 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:01] "[36mGET /static/js/dashboard.js?v=1.0.9 HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:14:02,265 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,266 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,271 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,280 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,285 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,355 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:02,356 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:02,358 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,362 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,423 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,444 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,453 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:14:02,461 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:02] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:14:07,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:08,284 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:08,285 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:08,288 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:08] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:14:08,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:08] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:14:08,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:08] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:14:12,290 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:12] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:14:12,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:14,293 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:14,294 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:17,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:20,279 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:20,280 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:22,287 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:14:22,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:26,291 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:26,292 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:27,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:32,288 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:32,289 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:32,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:14:32,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:37,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:37,998 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:14:38,286 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:38,286 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:38,292 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:14:38,293 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:14:40,095 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:14:40,104 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:14:40,207 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:14:40,208 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:14:40,231 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:14:42,286 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:14:42,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:44,291 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:44,292 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:47,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:48,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:48] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:14:49,835 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:49] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 10:14:50,099 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:50] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:14:50,161 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:50] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:14:50,161 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:50] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 10:14:50,162 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:50] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 10:14:50,165 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:50] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:14:50,167 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:50] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:14:50,283 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:50,284 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:50,406 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:50] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 10:14:50,468 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:50] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 10:14:50,475 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:50] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 10:14:50,930 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:50,931 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:51,177 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,180 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,182 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,191 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,198 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,486 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,494 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,496 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,498 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,502 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,509 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:51,809 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:51] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:14:52,132 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:52] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:14:52,205 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:52] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 10:14:52,289 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:14:52,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:52,391 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:52] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:14:52,455 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:52] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:14:55,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:14:55,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:55,965 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:55,966 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:56,186 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:56] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:14:56,256 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:56] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:14:56,260 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:56] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:14:56,294 - websockets.server - INFO - connection open
|
||
2025-12-12 10:14:56,296 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:14:56,583 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:56] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:14:57,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:14:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:15:00,887 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:15:00,974 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:00,975 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:01,198 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:01] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:15:02,290 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:02,291 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:02,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:15:05,979 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:05,980 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:06,197 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:06] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:15:08,293 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:08,294 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:14,288 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:14,288 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:20,288 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:20,289 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:26,287 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:26,288 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:32,280 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:32,281 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:38,280 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:38,281 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:44,283 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:44,284 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:50,288 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:50,289 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:15:55,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:15:55,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:55] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:15:55,317 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:15:55,321 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:55] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:15:55,330 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:15:55,332 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:55] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:15:55,350 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:15:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:15:56,283 - websockets.server - INFO - connection open
|
||
2025-12-12 10:15:56,284 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:16:02,283 - websockets.server - INFO - connection open
|
||
2025-12-12 10:16:02,283 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:16:08,294 - websockets.server - INFO - connection open
|
||
2025-12-12 10:16:08,295 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:16:14,285 - websockets.server - INFO - connection open
|
||
2025-12-12 10:16:14,285 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:16:20,280 - websockets.server - INFO - connection open
|
||
2025-12-12 10:16:20,281 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:16:26,287 - websockets.server - INFO - connection open
|
||
2025-12-12 10:16:26,287 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:16:32,292 - websockets.server - INFO - connection open
|
||
2025-12-12 10:16:32,293 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:16:38,282 - websockets.server - INFO - connection open
|
||
2025-12-12 10:16:38,282 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:16:44,293 - websockets.server - INFO - connection open
|
||
2025-12-12 10:16:44,294 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:16:50,289 - websockets.server - INFO - connection open
|
||
2025-12-12 10:16:50,290 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:16:55,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:16:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:16:55,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:16:55] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:16:55,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:16:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:16:55,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:16:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:16:55,334 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:16:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:16:56,285 - websockets.server - INFO - connection open
|
||
2025-12-12 10:16:56,285 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:02,285 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:02,285 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:08,288 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:08,288 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:14,292 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:14,293 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:20,294 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:20,295 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:24,458 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:17:24,751 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:17:24,752 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:17:26,291 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:26,292 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:26,569 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:17:26,579 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:17:26,687 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:17:26,688 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:17:26,711 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:17:32,291 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:32,292 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:36,014 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:36] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 10:17:36,275 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:36] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:17:36,339 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:36] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:17:36,339 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:36] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 10:17:36,341 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:36] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 10:17:36,342 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:36] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:17:36,344 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:36] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:17:36,584 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:36] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 10:17:36,648 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:36] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 10:17:36,653 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:36] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,080 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:37,081 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:37,333 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,334 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,337 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,341 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,352 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,648 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,651 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,654 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,658 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,659 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,665 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:17:37,984 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:37] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:17:38,200 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:38] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 10:17:38,293 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:38,293 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:38,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:38] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:17:38,631 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:38] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:17:38,890 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:38] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:17:42,098 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:42,099 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:42,336 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:17:42,410 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:42] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:17:42,417 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:42] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:17:42,730 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:42] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:17:44,292 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:44,292 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:47,108 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:47,108 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:47,336 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:47] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:17:47,344 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:17:50,289 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:50,290 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:17:55,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:55] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:17:55,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:55] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:17:55,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:17:55,328 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:55] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:17:55,330 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:17:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:17:56,286 - websockets.server - INFO - connection open
|
||
2025-12-12 10:17:56,286 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:18:02,287 - websockets.server - INFO - connection open
|
||
2025-12-12 10:18:02,287 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:18:08,282 - websockets.server - INFO - connection open
|
||
2025-12-12 10:18:08,283 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:18:14,290 - websockets.server - INFO - connection open
|
||
2025-12-12 10:18:14,290 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:18:20,282 - websockets.server - INFO - connection open
|
||
2025-12-12 10:18:20,283 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:18:26,285 - websockets.server - INFO - connection open
|
||
2025-12-12 10:18:26,285 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:18:32,285 - websockets.server - INFO - connection open
|
||
2025-12-12 10:18:32,286 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:18:38,282 - websockets.server - INFO - connection open
|
||
2025-12-12 10:18:38,282 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:18:44,291 - websockets.server - INFO - connection open
|
||
2025-12-12 10:18:44,292 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:18:50,280 - websockets.server - INFO - connection open
|
||
2025-12-12 10:18:50,281 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:18:55,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:18:55] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:18:55,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:18:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:18:55,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:18:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:18:56,283 - websockets.server - INFO - connection open
|
||
2025-12-12 10:18:56,284 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:19:02,291 - websockets.server - INFO - connection open
|
||
2025-12-12 10:19:02,291 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:19:08,282 - websockets.server - INFO - connection open
|
||
2025-12-12 10:19:08,283 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:19:14,296 - websockets.server - INFO - connection open
|
||
2025-12-12 10:19:14,296 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:19:20,295 - websockets.server - INFO - connection open
|
||
2025-12-12 10:19:20,296 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:19:26,282 - websockets.server - INFO - connection open
|
||
2025-12-12 10:19:26,282 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:19:32,284 - websockets.server - INFO - connection open
|
||
2025-12-12 10:19:32,285 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:19:38,290 - websockets.server - INFO - connection open
|
||
2025-12-12 10:19:38,290 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:19:44,289 - websockets.server - INFO - connection open
|
||
2025-12-12 10:19:44,289 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:19:50,293 - websockets.server - INFO - connection open
|
||
2025-12-12 10:19:50,293 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:19:55,325 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:19:55] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:19:55,331 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:19:55] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:19:55,335 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:19:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:19:55,352 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:19:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:19:55,359 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:19:55] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:19:56,329 - websockets.server - INFO - connection open
|
||
2025-12-12 10:19:56,329 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:20:02,292 - websockets.server - INFO - connection open
|
||
2025-12-12 10:20:02,293 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:20:08,289 - websockets.server - INFO - connection open
|
||
2025-12-12 10:20:08,289 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:20:14,295 - websockets.server - INFO - connection open
|
||
2025-12-12 10:20:14,295 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 247, in handle_client_with_cors
|
||
self.port,
|
||
^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'path'
|
||
2025-12-12 10:20:18,194 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:18] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:20:18,225 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:18] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:22,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:20:22,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:27,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:32,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:20:32,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:37,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:42,290 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:20:42,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:43,051 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:20:43,444 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:20:43,445 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:20:45,490 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:20:45,500 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:20:45,614 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:20:45,615 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:20:45,640 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:20:45,646 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-12 10:20:45,646 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-12 10:20:47,293 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 10:20:47,304 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 10:20:47,333 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:48,813 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:48] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,080 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "[36mGET /static/css/style.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:20:49,086 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "[36mGET /static/js/app-new.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:20:49,091 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "[36mGET /static/js/dashboard.js?v=1.0.9 HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:20:49,137 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "[36mGET /static/css/design-system.css HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:20:49,140 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "[36mGET /static/js/components/NotificationManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:20:49,143 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "[36mGET /static/css/design-system.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:20:49,151 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:20:49,164 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "[36mGET /static/js/services/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:20:49,171 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "[36mGET /static/js/components/AlertManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 10:20:49,488 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,489 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,494 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-12 10:20:49,497 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-12 10:20:49,502 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,506 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-12 10:20:49,508 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,514 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,526 - websockets.server - INFO - connection open
|
||
2025-12-12 10:20:49,532 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.handle_client() missing 1 required positional argument: 'path'
|
||
2025-12-12 10:20:49,534 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,539 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,543 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,545 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,554 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,577 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-12 10:20:49,577 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-12 10:20:49,578 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-12 10:20:49,581 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-12 10:20:49,585 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-12 10:20:49,588 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-12 10:20:49,591 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-12 10:20:49,593 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-12 10:20:49,595 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-12 10:20:49,597 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-12 10:20:49,600 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-12 10:20:49,602 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-12 10:20:49,604 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-12 10:20:49,606 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-12 10:20:49,608 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-12 10:20:49,611 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-12 10:20:49,613 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-12 10:20:49,616 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-12 10:20:49,624 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-12 10:20:49,628 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,629 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-12 10:20:49,630 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-12 10:20:49,634 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-12 10:20:49,637 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-12 10:20:49,639 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-12 10:20:49,641 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-12 10:20:49,653 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,662 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,675 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:20:49,686 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:49] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:20:52,021 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:52] "GET /api/workorders?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 10:20:52,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:20:52,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:54,286 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:54] "GET /api/workorders/1 HTTP/1.1" 200 -
|
||
2025-12-12 10:20:54,528 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:54] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:54,537 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:54] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:20:54,546 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:54] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:20:54,575 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:54] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:20:54,634 - websockets.server - INFO - connection open
|
||
2025-12-12 10:20:54,637 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.handle_client() missing 1 required positional argument: 'path'
|
||
2025-12-12 10:20:55,141 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:55] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 10:20:55,401 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:55] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:20:55,462 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:55] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:20:55,465 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:55] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 10:20:55,468 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:55] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 10:20:55,470 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:55] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:20:55,472 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:55] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:20:55,712 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:55] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 10:20:55,774 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:55] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 10:20:55,775 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:55] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,227 - websockets.server - INFO - connection open
|
||
2025-12-12 10:20:56,228 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.handle_client() missing 1 required positional argument: 'path'
|
||
2025-12-12 10:20:56,474 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,479 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,483 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,493 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,505 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,785 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,792 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,794 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,801 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,815 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 10:20:56,820 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:56] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:57,107 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:57] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:20:57,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:57,435 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:57] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:20:57,460 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:57] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 10:20:57,692 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:57] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:20:57,754 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:57] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:20:59,481 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:59] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:20:59,496 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:20:59] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:20:59,661 - websockets.server - INFO - connection open
|
||
2025-12-12 10:20:59,662 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.handle_client() missing 1 required positional argument: 'path'
|
||
2025-12-12 10:21:01,250 - websockets.server - INFO - connection open
|
||
2025-12-12 10:21:01,251 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.handle_client() missing 1 required positional argument: 'path'
|
||
2025-12-12 10:21:01,491 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:01] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:01,550 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:01] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:21:01,556 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:01] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:21:01,875 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:01] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:21:02,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:21:02,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:04,487 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:04] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:04,669 - websockets.server - INFO - connection open
|
||
2025-12-12 10:21:04,669 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.handle_client() missing 1 required positional argument: 'path'
|
||
2025-12-12 10:21:06,268 - websockets.server - INFO - connection open
|
||
2025-12-12 10:21:06,268 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.handle_client() missing 1 required positional argument: 'path'
|
||
2025-12-12 10:21:06,486 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:06] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:21:06,504 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:06] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:07,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:09,492 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:09] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:21:09,546 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:09] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:09,685 - websockets.server - INFO - connection open
|
||
2025-12-12 10:21:09,686 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
TypeError: WebSocketServer.handle_client() missing 1 required positional argument: 'path'
|
||
2025-12-12 10:21:12,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:12] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:21:12,322 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:15,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:15] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:17,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:20,290 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:20] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:21:20,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:20] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:22,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:21:22,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:25,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:25] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:30,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:30] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:21:30,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:30] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:35,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:35] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:40,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:40] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:21:40,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:40] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:45,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:45] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:50,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:50] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:21:50,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:55,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:21:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:21:55,326 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:21:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:22:00,286 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:22:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:22:00,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:22:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:22:05,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:22:05] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:22:10,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:22:10] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:22:10,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:22:10] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:22:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:22:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:22:55,317 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:22:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:22:55,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:22:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:22:55,349 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:22:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,018 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,036 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,037 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,043 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,057 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,062 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,068 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,074 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,083 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,102 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:24,490 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:24] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:27,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:27,360 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:27] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 10:23:28,191 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:28] "GET /api/alerts?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 10:23:28,972 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:28] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 10:23:29,488 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:29] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:23:29,504 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:29] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:29,756 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:29] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:29,757 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:29] "GET /api/agent/tools/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:23:30,188 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:23:30,493 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:23:30,495 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:23:32,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:23:32,317 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:32,372 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:23:32,382 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:23:32,489 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:23:32,490 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:23:32,515 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:23:33,519 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:33] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:33,520 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:33] "GET /api/agent/tools/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:23:34,498 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:34] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:34,873 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:34] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 10:23:37,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:39,391 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:39] "GET /api/conversations?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 10:23:39,486 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:39] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:23:39,502 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:39] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:41,279 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:41] "GET /api/token-monitor/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:23:41,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:41] "GET /api/token-monitor/records HTTP/1.1" 200 -
|
||
2025-12-12 10:23:41,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:41] "GET /api/token-monitor/chart HTTP/1.1" 200 -
|
||
2025-12-12 10:23:41,826 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:41] "GET /api/ai-monitor/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:23:41,837 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:41] "GET /api/ai-monitor/model-comparison HTTP/1.1" 200 -
|
||
2025-12-12 10:23:41,839 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:41] "GET /api/ai-monitor/error-distribution HTTP/1.1" 200 -
|
||
2025-12-12 10:23:41,841 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:41] "GET /api/ai-monitor/error-log HTTP/1.1" 200 -
|
||
2025-12-12 10:23:42,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:23:42,351 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:43,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:43] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:23:43,366 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:43] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:23:43,405 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:43] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:23:43,753 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:43] "GET /api/system-optimizer/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:43,762 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:43] "GET /api/system-optimizer/security-settings HTTP/1.1" 200 -
|
||
2025-12-12 10:23:43,764 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:43] "GET /api/system-optimizer/traffic-settings HTTP/1.1" 200 -
|
||
2025-12-12 10:23:43,766 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:43] "GET /api/system-optimizer/cost-settings HTTP/1.1" 200 -
|
||
2025-12-12 10:23:44,487 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:44] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:47,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:50,286 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:50] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:23:50,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:52,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:23:52,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:23:57,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:23:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:00,288 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:24:00,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:02,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:24:02,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:05,293 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 10:24:05,293 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 10:24:05,317 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:05] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:07,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:10,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:10] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:24:10,321 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:10] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:21,790 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:24:22,087 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:24:22,089 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:24:23,943 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:24:23,953 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:24:24,058 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:24:24,059 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:24:24,082 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:24:24,088 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-12 10:24:24,088 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-12 10:24:24,377 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 10:24:24,379 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 10:24:24,399 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:24] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:25,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:25] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:30,290 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:30] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:24:30,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:30] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:35,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:35] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:37,895 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:37] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 10:24:38,194 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:38] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:24:38,219 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:38] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:24:38,219 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:38] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 10:24:38,220 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:38] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 10:24:38,221 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:38] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:24:38,223 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:38] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:24:38,513 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:38] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 10:24:38,527 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:38] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 10:24:38,531 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:38] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 10:24:38,926 - websockets.server - INFO - connection open
|
||
2025-12-12 10:24:38,927 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 216, in handle_client
|
||
headers = websocket.request_headers
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'request_headers'
|
||
2025-12-12 10:24:39,177 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,178 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,186 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-12 10:24:39,187 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-12 10:24:39,189 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,193 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-12 10:24:39,195 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,202 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,485 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,495 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,503 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,508 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,509 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,519 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-12 10:24:39,521 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-12 10:24:39,521 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-12 10:24:39,523 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-12 10:24:39,524 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-12 10:24:39,525 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-12 10:24:39,526 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-12 10:24:39,527 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-12 10:24:39,529 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-12 10:24:39,531 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-12 10:24:39,532 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-12 10:24:39,533 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-12 10:24:39,535 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-12 10:24:39,536 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-12 10:24:39,537 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-12 10:24:39,538 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-12 10:24:39,539 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-12 10:24:39,540 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-12 10:24:39,541 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-12 10:24:39,542 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-12 10:24:39,543 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-12 10:24:39,544 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-12 10:24:39,547 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-12 10:24:39,548 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-12 10:24:39,549 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-12 10:24:39,555 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:39,824 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:39] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:24:40,152 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:40] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:24:40,290 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:40] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:24:40,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:40] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 10:24:40,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:40] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:40,412 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:40] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:24:40,475 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:40] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:24:43,941 - websockets.server - INFO - connection open
|
||
2025-12-12 10:24:43,942 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 216, in handle_client
|
||
headers = websocket.request_headers
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'request_headers'
|
||
2025-12-12 10:24:44,198 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:44] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:44,242 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:44] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:24:44,247 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:44] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:24:44,563 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:44] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:24:45,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:45] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:48,952 - websockets.server - INFO - connection open
|
||
2025-12-12 10:24:48,953 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 216, in handle_client
|
||
headers = websocket.request_headers
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'request_headers'
|
||
2025-12-12 10:24:49,188 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:49] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:24:49,206 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:49] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:53,964 - websockets.server - INFO - connection open
|
||
2025-12-12 10:24:53,965 - websockets.server - ERROR - connection handler failed
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\websockets\asyncio\server.py", line 376, in conn_handler
|
||
await self.handler(connection)
|
||
File "D:\code\assist\src\web\websocket_server.py", line 216, in handle_client
|
||
headers = websocket.request_headers
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
AttributeError: 'ServerConnection' object has no attribute 'request_headers'
|
||
2025-12-12 10:24:54,187 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:54] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:55,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:24:55,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:24:55,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:24:55,330 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:24:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:25:55,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:25:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:25:55,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:25:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:25:55,320 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:25:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:25:55,338 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:25:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:26:38,737 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:26:39,032 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:26:39,034 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:26:40,853 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:26:40,862 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:26:40,967 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:26:40,967 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:26:40,989 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:26:55,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:26:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:26:55,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:26:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:26:55,329 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:26:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:26:55,355 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:26:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:31,394 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:31] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:27:31,409 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:31] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:27:31,424 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:31] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:27:31,436 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:31] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:27:31,450 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:31] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:27:31,453 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:31] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:27:31,463 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:31] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:27:31,468 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:31] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:31,501 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:31] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:27:31,526 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:31] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:32,265 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:27:32,283 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:35,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:35] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:37,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:40,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:40] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:27:40,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:40] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:42,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:27:42,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:45,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:45] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:47,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:49,389 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 10:27:49,691 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 10:27:49,693 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 10:27:50,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:50] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:27:50,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:51,544 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 10:27:51,553 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 10:27:51,667 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 10:27:51,667 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 10:27:51,693 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 10:27:52,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:27:52,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:55,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:27:57,295 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 10:27:57,302 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 10:27:57,326 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:27:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:00,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:00,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:02,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:02,346 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:02,606 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:02] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 10:28:02,905 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:02] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:28:02,925 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:02] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 10:28:02,928 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:02] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 10:28:02,932 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:02] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 10:28:02,933 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:02] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:28:02,935 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:02] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 10:28:03,218 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:03] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 10:28:03,231 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:03] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 10:28:03,236 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:03] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 10:28:03,890 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:03] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 10:28:03,894 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-12 10:28:03,895 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:03] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:03,898 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-12 10:28:03,902 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:03] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:03,905 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-12 10:28:03,908 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:03] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 10:28:03,914 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:03] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:04,217 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:04] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:28:04,224 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:04] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:28:04,229 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:04] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 10:28:04,232 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:04] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 10:28:04,238 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:04] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 10:28:04,243 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-12 10:28:04,244 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-12 10:28:04,244 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-12 10:28:04,246 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-12 10:28:04,247 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-12 10:28:04,248 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-12 10:28:04,250 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-12 10:28:04,251 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-12 10:28:04,252 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-12 10:28:04,253 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-12 10:28:04,254 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-12 10:28:04,255 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-12 10:28:04,256 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-12 10:28:04,257 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-12 10:28:04,259 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-12 10:28:04,260 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-12 10:28:04,263 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-12 10:28:04,264 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-12 10:28:04,265 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-12 10:28:04,266 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-12 10:28:04,267 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-12 10:28:04,268 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-12 10:28:04,269 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-12 10:28:04,271 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-12 10:28:04,272 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-12 10:28:04,278 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:04] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:04,558 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:04] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:28:04,784 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:04] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 10:28:04,881 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:04] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:28:05,202 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:05] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:28:05,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:05] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:05,449 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:05] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:28:07,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:08,910 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:08] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:08,954 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:08] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:28:08,957 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:08] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:28:09,278 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:09] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:28:10,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:10] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:10,322 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:10] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:12,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:12] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:12,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:13,899 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:13] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:13,912 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:13] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:15,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:15] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:17,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:20,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:20] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:20,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:20] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:22,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:22,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:25,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:25] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:27,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:30,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:30] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:30,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:30] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:32,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:32,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:55,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:28:55,324 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:28:55,344 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:28:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:29:55,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:29:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:29:55,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:29:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:29:55,320 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:29:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:29:55,334 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:29:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:18,934 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:18] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:30:18,949 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:18] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:30:18,950 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:18] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:30:18,958 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:18] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:30:18,970 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:18] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:30:18,973 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:18] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:30:18,983 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:18] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:30:18,985 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:18] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:19,001 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:19] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:30:19,013 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:19] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:19,485 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:19] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:30:19,500 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:19] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:22,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:30:22,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:22,966 - src.integrations.feishu_client - INFO - 正在获取飞书tenant_access_token,应用ID: cli_a8b50ec0eed1500d
|
||
2025-12-12 10:30:23,141 - src.integrations.feishu_client - INFO - 飞书API响应: {'code': 0, 'expire': 6579, 'msg': 'ok', 'tenant_access_token': 't-g104ccakLJU4WR564CXVQVOIUJO6WHOAB33FQYJV'}
|
||
2025-12-12 10:30:23,141 - src.integrations.feishu_client - INFO - tenant_access_token获取成功: t-g104ccakLJU4WR564C...
|
||
2025-12-12 10:30:23,141 - src.integrations.feishu_client - INFO - 令牌有效期: 6579秒,过期时间: 2025-12-12 12:20:02
|
||
2025-12-12 10:30:23,143 - src.integrations.feishu_client - INFO - 发送飞书API请求: GET https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records
|
||
2025-12-12 10:30:23,143 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104ccakLJU4WR564C...
|
||
2025-12-12 10:30:24,486 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:24] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:27,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:28,382 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-12 10:30:28,383 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'has_more': False, 'items': [{'fields': {'AI建议': "1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}, {'fields': {'AI建议': '1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}, 'id': 'recv0NLSh2a2S7', 'record_id': 'recv0NLSh2a2S7'}, {'fields': {'AI建议': '1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}, 'id': 'recv0NLZoKLlRJ', 'record_id': 'recv0NLZoKLlRJ'}, {'fields': {'AI建议': '1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}, 'id': 'recv0NLZoKjKvx', 'record_id': 'recv0NLZoKjKvx'}], 'total': 4}, 'msg': 'success'}
|
||
2025-12-12 10:30:28,386 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:28] "GET /api/feishu-sync/preview-feishu-data HTTP/1.1" 200 -
|
||
2025-12-12 10:30:29,480 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:29] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:30:29,494 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:29] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:31,183 - src.integrations.workorder_sync - INFO - 开始从飞书同步工单数据...
|
||
2025-12-12 10:30:31,184 - src.integrations.feishu_client - INFO - 发送飞书API请求: GET https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records
|
||
2025-12-12 10:30:31,184 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104ccakLJU4WR564C...
|
||
2025-12-12 10:30:32,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:30:32,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:32,953 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-12 10:30:32,954 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'has_more': False, 'items': [{'fields': {'AI建议': "1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}, {'fields': {'AI建议': '1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}, 'id': 'recv0NLSh2a2S7', 'record_id': 'recv0NLSh2a2S7'}, {'fields': {'AI建议': '1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}, 'id': 'recv0NLZoKLlRJ', 'record_id': 'recv0NLZoKLlRJ'}, {'fields': {'AI建议': '1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}, 'id': 'recv0NLZoKjKvx', 'record_id': 'recv0NLZoKjKvx'}], 'total': 4}, 'msg': 'success'}
|
||
2025-12-12 10:30:32,957 - src.integrations.workorder_sync - INFO - 从飞书获取 4 条记录
|
||
2025-12-12 10:30:32,957 - src.integrations.workorder_sync - INFO - 开始生成AI建议...
|
||
2025-12-12 10:30:32,958 - src.integrations.workorder_sync - INFO - 第一条记录结构示例: record_id=rec253kqBfXae4, 有fields字段=True
|
||
2025-12-12 10:30:32,958 - src.integrations.workorder_sync - INFO - 第一条记录的fields示例: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source']
|
||
2025-12-12 10:30:32,958 - src.integrations.workorder_sync - INFO - 第一条记录的AI建议字段内容: 1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正
|
||
2025-12-12 10:30:32,958 - src.integrations.ai_suggestion_service - INFO - 记录 rec253kqBfXae4 - 现有AI建议长度: 190
|
||
2025-12-12 10:30:32,959 - src.integrations.ai_suggestion_service - INFO - 记录 rec253kqBfXae4 - 现有AI建议前100字符: 1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于
|
||
2025-12-12 10:30:32,960 - src.dialogue.realtime_chat - INFO - 创建新会话: session_ai_suggestion_service_1765506632
|
||
2025-12-12 10:30:32,962 - src.knowledge_base.knowledge_manager - WARNING - 知识库中没有活跃条目
|
||
2025-12-12 10:30:35,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:35] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:37,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:39,480 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:39] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:30:39,502 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:39] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:42,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:30:42,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:44,491 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:44] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:47,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:50,285 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:50] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:30:50,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:52,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:30:52,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:55,951 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:55] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:30:55,963 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:55] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:30:57,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:30:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:30:59,685 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-12 10:30:59,694 - src.integrations.ai_suggestion_service - INFO - AI生成原始内容: 您好,感谢您对奇瑞汽车智能座舱体验的关注。针对“天气小部件(Weather Widget)无法工作”的问题,结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业、分阶段...
|
||
2025-12-12 10:30:59,694 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 您好,感谢您对奇瑞汽车智能座舱体验的关注。针对“天气小部件(Weather Widget)无法工作”的问题,结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业、分阶段
|
||
2025-12-12 10:30:59,694 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 您好,感谢您对奇瑞汽车智能座舱体验的关注。针对“天气小部件(Weather Widget)无法工作”的问题,结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业、分阶段
|
||
2025-12-12 10:30:59,695 - src.integrations.ai_suggestion_service - INFO - AI建议清理后: 您好,感谢您对奇瑞汽车智能座舱体验的关注。针对“天气小部件(Weather Widget)无法工作”的问题,结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业、分阶段...
|
||
2025-12-12 10:30:59,695 - src.integrations.ai_suggestion_service - INFO - _format_ai_suggestion_with_numbering 调用 - time_str=1212, existing长度=190
|
||
2025-12-12 10:30:59,696 - src.integrations.ai_suggestion_service - INFO - 为记录 rec253kqBfXae4 生成AI建议,新建议长度: 311
|
||
2025-12-12 10:30:59,696 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLSh2a2S7 - 现有AI建议长度: 231
|
||
2025-12-12 10:30:59,696 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLSh2a2S7 - 现有AI建议前100字符: 1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属
|
||
2025-12-12 10:30:59,697 - src.dialogue.realtime_chat - INFO - 创建新会话: session_ai_suggestion_service_1765506659
|
||
2025-12-12 10:30:59,699 - src.knowledge_base.knowledge_manager - WARNING - 知识库中没有活跃条目
|
||
2025-12-12 10:31:00,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:00,320 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:02,286 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:02,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:05,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:05] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:07,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:10,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:10] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:10,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:10] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:12,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:12] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:12,323 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:15,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:15] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:17,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:20,287 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:20] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:20,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:20] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:22,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:22,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:25,033 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-12 10:31:25,041 - src.integrations.ai_suggestion_service - INFO - AI生成原始内容: 该工单问题已明确定性为TBOX自2023年10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止上传、APP端数据滞留(最后更新为10月19日)、且无任何TBOX日志记录——这表...
|
||
2025-12-12 10:31:25,041 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 该工单问题已明确定性为TBOX自2023年10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止上传、APP端数据滞留(最后更新为10月19日)、且无任何TBOX日志记录——这表
|
||
2025-12-12 10:31:25,042 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 该工单问题已明确定性为TBOX自2023年10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止上传、APP端数据滞留(最后更新为10月19日)、且无任何TBOX日志记录——这表
|
||
2025-12-12 10:31:25,043 - src.integrations.ai_suggestion_service - INFO - AI建议清理后: 该工单问题已明确定性为TBOX自2023年10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止上传、APP端数据滞留(最后更新为10月19日)、且无任何TBOX日志记录——这表...
|
||
2025-12-12 10:31:25,043 - src.integrations.ai_suggestion_service - INFO - _format_ai_suggestion_with_numbering 调用 - time_str=1212, existing长度=231
|
||
2025-12-12 10:31:25,044 - src.integrations.ai_suggestion_service - INFO - 为记录 recv0NLSh2a2S7 生成AI建议,新建议长度: 378
|
||
2025-12-12 10:31:25,044 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLZoKLlRJ - 现有AI建议长度: 197
|
||
2025-12-12 10:31:25,045 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLZoKLlRJ - 现有AI建议前100字符: 1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。
|
||
模拟LLM响应:
|
||
作为技术支
|
||
2025-12-12 10:31:25,046 - src.dialogue.realtime_chat - INFO - 创建新会话: session_ai_suggestion_service_1765506685
|
||
2025-12-12 10:31:25,047 - src.knowledge_base.knowledge_manager - WARNING - 知识库中没有活跃条目
|
||
2025-12-12 10:31:25,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:25] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:27,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:30,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:30] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:30,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:30] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:32,290 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:32,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:35,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:35] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:37,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:40,289 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:40] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:40,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:40] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:42,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:42,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:45,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:45] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:47,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:48,976 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-12 10:31:48,984 - src.integrations.ai_suggestion_service - INFO - AI生成原始内容: 经分析当前工单进展:用户无法通过手机号或二维码任一方式进入会员中心,且已提供DMC日志(含完整鉴权流程记录)及实操视频(1024时间戳),远程复现充分,可排除用户端输入错误、网络临时中断或操作流程误触...
|
||
2025-12-12 10:31:48,985 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 经分析当前工单进展:用户无法通过手机号或二维码任一方式进入会员中心,且已提供DMC日志(含完整鉴权流程记录)及实操视频(1024时间戳),远程复现充分,可排除用户端输入错误、网络临时中断或操作流程误触
|
||
2025-12-12 10:31:48,986 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 经分析当前工单进展:用户无法通过手机号或二维码任一方式进入会员中心,且已提供DMC日志(含完整鉴权流程记录)及实操视频(1024时间戳),远程复现充分,可排除用户端输入错误、网络临时中断或操作流程误触
|
||
2025-12-12 10:31:48,987 - src.integrations.ai_suggestion_service - INFO - AI建议清理后: 经分析当前工单进展:用户无法通过手机号或二维码任一方式进入会员中心,且已提供DMC日志(含完整鉴权流程记录)及实操视频(1024时间戳),远程复现充分,可排除用户端输入错误、网络临时中断或操作流程误触...
|
||
2025-12-12 10:31:48,987 - src.integrations.ai_suggestion_service - INFO - _format_ai_suggestion_with_numbering 调用 - time_str=1212, existing长度=197
|
||
2025-12-12 10:31:48,988 - src.integrations.ai_suggestion_service - INFO - 为记录 recv0NLZoKLlRJ 生成AI建议,新建议长度: 310
|
||
2025-12-12 10:31:48,988 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLZoKjKvx - 现有AI建议长度: 212
|
||
2025-12-12 10:31:48,988 - src.integrations.ai_suggestion_service - INFO - 记录 recv0NLZoKjKvx - 现有AI建议前100字符: 1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:
|
||
|
||
2025-12-12 10:31:48,990 - src.dialogue.realtime_chat - INFO - 创建新会话: session_ai_suggestion_service_1765506708
|
||
2025-12-12 10:31:48,992 - src.knowledge_base.knowledge_manager - WARNING - 知识库中没有活跃条目
|
||
2025-12-12 10:31:50,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:50] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:50,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:52,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:31:52,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:31:55,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:31:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:32:17,690 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-12 10:32:17,697 - src.integrations.ai_suggestion_service - INFO - AI生成原始内容: 您好,感谢您对奇瑞汽车技术支持的信任。针对当前“Abnormal traffic consumption”(异常流量消耗)工单,结合已有处理进展与技术特征,现提供专业分析与闭环处理建议如下:
|
||
|
||
一、问...
|
||
2025-12-12 10:32:17,698 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 您好,感谢您对奇瑞汽车技术支持的信任。针对当前“Abnormal traffic consumption”(异常流量消耗)工单,结合已有处理进展与技术特征,现提供专业分析与闭环处理建议如下:
|
||
|
||
一、问
|
||
2025-12-12 10:32:17,698 - src.integrations.ai_suggestion_service - INFO - 未找到需要替换的内容: 您好,感谢您对奇瑞汽车技术支持的信任。针对当前“Abnormal traffic consumption”(异常流量消耗)工单,结合已有处理进展与技术特征,现提供专业分析与闭环处理建议如下:
|
||
2025-12-12 10:32:17,698 - src.integrations.ai_suggestion_service - INFO - AI建议清理后: 您好,感谢您对奇瑞汽车技术支持的信任。针对当前“Abnormal traffic consumption”(异常流量消耗)工单,结合已有处理进展与技术特征,现提供专业分析与闭环处理建议如下:...
|
||
2025-12-12 10:32:17,699 - src.integrations.ai_suggestion_service - INFO - _format_ai_suggestion_with_numbering 调用 - time_str=1212, existing长度=212
|
||
2025-12-12 10:32:17,699 - src.integrations.ai_suggestion_service - INFO - 为记录 recv0NLZoKjKvx 生成AI建议,新建议长度: 313
|
||
2025-12-12 10:32:17,699 - src.integrations.feishu_client - INFO - 发送飞书API请求: PUT https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records/rec253kqBfXae4
|
||
2025-12-12 10:32:17,700 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104ccakLJU4WR564C...
|
||
2025-12-12 10:32:20,460 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-12 10:32:20,460 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'record': {'fields': {'AI建议': "1212:您好,感谢您对奇瑞汽车智能座舱体验的关注。针对“天气小部件(Weather Widget)无法工作”的问题,结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业、分阶段的技术分析与升级处理建议如下:\n1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题..."}, 'id': 'rec253kqBfXae4', 'record_id': 'rec253kqBfXae4'}}, 'msg': 'success'}
|
||
2025-12-12 10:32:20,462 - src.integrations.workorder_sync - INFO - 更新飞书记录 rec253kqBfXae4 的AI建议
|
||
2025-12-12 10:32:20,462 - src.integrations.feishu_client - INFO - 发送飞书API请求: PUT https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records/recv0NLSh2a2S7
|
||
2025-12-12 10:32:20,462 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104ccakLJU4WR564C...
|
||
2025-12-12 10:32:22,466 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-12 10:32:22,467 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'record': {'fields': {'AI建议': '1212:该工单问题已明确定性为TBOX自2023年10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止上传、APP端数据滞留(最后更新为10月19日)、且无任何TBOX日志记录——这表明TBOX未执行常规唤醒周期(如定时心跳、CAN总线活动触发唤醒或远程指令唤醒),\n1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...'}, 'id': 'recv0NLSh2a2S7', 'record_id': 'recv0NLSh2a2S7'}}, 'msg': 'success'}
|
||
2025-12-12 10:32:22,468 - src.integrations.workorder_sync - INFO - 更新飞书记录 recv0NLSh2a2S7 的AI建议
|
||
2025-12-12 10:32:22,469 - src.integrations.feishu_client - INFO - 发送飞书API请求: PUT https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records/recv0NLZoKLlRJ
|
||
2025-12-12 10:32:22,469 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104ccakLJU4WR564C...
|
||
2025-12-12 10:32:24,719 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-12 10:32:24,720 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'record': {'fields': {'AI建议': '1212:经分析当前工单进展:用户无法通过手机号或二维码任一方式进入会员中心,且已提供DMC日志(含完整鉴权流程记录)及实操视频(1024时间戳),远程复现充分,可排除用户端输入错误、网络临时中断或操作流程误触等基础性问题。\n1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...'}, 'id': 'recv0NLZoKLlRJ', 'record_id': 'recv0NLZoKLlRJ'}}, 'msg': 'success'}
|
||
2025-12-12 10:32:24,722 - src.integrations.workorder_sync - INFO - 更新飞书记录 recv0NLZoKLlRJ 的AI建议
|
||
2025-12-12 10:32:24,722 - src.integrations.feishu_client - INFO - 发送飞书API请求: PUT https://open.feishu.cn/open-apis/bitable/v1/apps/XXnEbiCmEaMblSs6FDJcFCqsnIg/tables/tblnl3vJPpgMTSiP/records/recv0NLZoKjKvx
|
||
2025-12-12 10:32:24,722 - src.integrations.feishu_client - INFO - 请求头: Authorization: Bearer t-g104ccakLJU4WR564C...
|
||
2025-12-12 10:32:26,647 - src.integrations.feishu_client - INFO - 飞书API响应状态码: 200
|
||
2025-12-12 10:32:26,647 - src.integrations.feishu_client - INFO - 飞书API响应内容: {'code': 0, 'data': {'record': {'fields': {'AI建议': '1212:您好,感谢您对奇瑞汽车技术支持的信任。针对当前“Abnormal traffic consumption”(异常流量消耗)工单,结合已有处理进展与技术特征,现提供专业分析与闭环处理建议如下:\n1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...'}, 'id': 'recv0NLZoKjKvx', 'record_id': 'recv0NLZoKjKvx'}}, 'msg': 'success'}
|
||
2025-12-12 10:32:26,648 - src.integrations.workorder_sync - INFO - 更新飞书记录 recv0NLZoKjKvx 的AI建议
|
||
2025-12-12 10:32:26,652 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': "1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:The widget weather doesn't work \n\n相关背景信息:\n无相关背景信息\n\n请提供:\n1. 问题...", 'Created by': 'Evgeniy', 'Date creation': 1745769600000, 'Module(模块)': 'local O&M', 'Source': 'Mail', 'TR Description': "The widget weather doesn't work ", 'TR Level': 'Low', 'TR Number': 'TR559', 'TR Status': 'Processing', 'TR tracking': '28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.', 'Type of problem': 'HU troubles', 'VIN|sim': 'LVTDD24B8RG019153 ', 'Vehicle Type01': 'EXEED RX(T22)', 'Wilfulness(责任人)': 'Evgeniy', '处理过程': '0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志', '当前问题状态': '1027:天气小部件无法使用,已确认TBOX及IHU登录正常、流量绑定正常,建议已完成手机热点连接测试并尝试抓取IHU日志,若问题仍存在,建议进站进行系统诊断或软件版本升级排查。\n0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志'}
|
||
2025-12-12 10:32:26,653 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-12 10:32:26,654 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 1208:您好,感谢您反馈天气小部件异常问题。结合当前处理进度(0428已确认TBOX/IHU登录正常、流量绑定正常),现提供专业分析与升级处理建议如下:
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:The widget weather doesn't work
|
||
|
||
相关背景信息:
|
||
无相关背景信息
|
||
|
||
请提供:
|
||
1. 问题...
|
||
2025-12-12 10:32:26,654 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Evgeniy
|
||
2025-12-12 10:32:26,655 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1745769600000
|
||
2025-12-12 10:32:26,655 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: local O&M
|
||
2025-12-12 10:32:26,655 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-12 10:32:26,656 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: The widget weather doesn't work
|
||
2025-12-12 10:32:26,656 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-12 10:32:26,656 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR559
|
||
2025-12-12 10:32:26,657 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Processing
|
||
2025-12-12 10:32:26,657 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 28/04:Local feedback weather widget does not work, query TBOX and IHU login record is normal, traffic binding is normal, we suggest users to use mobile phone hotspot to connect to the car, observe whether the widget is restored, if not, try to capture the IHU logs.
|
||
2025-12-12 10:32:26,658 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: HU troubles
|
||
2025-12-12 10:32:26,658 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: LVTDD24B8RG019153
|
||
2025-12-12 10:32:26,658 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: EXEED RX(T22)
|
||
2025-12-12 10:32:26,658 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: Evgeniy
|
||
2025-12-12 10:32:26,658 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 0428:属地反馈天气小部件不起作用,查询TBOX及IHU登录记录正常,流量绑定正常,建议用户使用手机热点连接车机,观察小部件是否恢复,如不恢复,尝试抓取IHU日志
|
||
2025-12-12 10:32:26,663 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-12 10:32:26,663 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-12 10:32:26,664 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-12 10:32:26,664 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-12 10:32:26,664 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-12 10:32:26,666 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': '1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Vehicle data is not updated in the app => dated from October,...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': 'TBOX', 'Source': 'Mail', 'TR Description': 'Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.\n', 'TR Level': 'Low', 'TR Number': 'TR863', 'TR Status': 'Processing', 'TR tracking': '24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi', 'Type of problem': 'Remote control ', 'VIN|sim': 'LNNBDDEZ8SD345645 ', 'Vehicle Type01': 'JAECOO J7(T1EJ)', 'Wilfulness(责任人)': '刘娇龙', '处理过程': '1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志', '当前问题状态': '1027:车辆自10月19日进入深度睡眠,TBOX无远程连接,建议客户尽快进站提取TBOX及DMC日志,进行本地诊断分析,排查电源管理或通信模块异常原因,确认硬件状态及软件配置是否正常。\n1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志'}
|
||
2025-12-12 10:32:26,666 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-12 10:32:26,666 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 1208:该工单问题已明确为TBOX自10月19日起持续处于深度睡眠(Deep Sleep)状态,导致车辆数据停止更新、APP端数据滞留、且无任何TBOX日志上传——这已超出远程唤醒与诊断能力范围,属典型TBOX通信链路或电源管理异常。
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Vehicle data is not updated in the app => dated from October,...
|
||
2025-12-12 10:32:26,667 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Vsevolod Tsoi
|
||
2025-12-12 10:32:26,667 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1761148800000
|
||
2025-12-12 10:32:26,667 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: TBOX
|
||
2025-12-12 10:32:26,667 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-12 10:32:26,667 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: Vehicle data is not updated in the app => dated from October, 19 - thus, they are old one. No TBOX log in since October, 19. TBOX is in deep sleep since October, 19.
|
||
|
||
2025-12-12 10:32:26,668 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-12 10:32:26,668 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR863
|
||
2025-12-12 10:32:26,668 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Processing
|
||
2025-12-12 10:32:26,668 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 24/10:The vehicle is in deep sleep, and T-box logs cannot be remotely obtained. The problem is a bit complex and difficult to locate, so the customer needs to visit the station to retrieve T-box logs and DMC logs. @Vsevolod Tsoi
|
||
2025-12-12 10:32:26,669 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: Remote control
|
||
2025-12-12 10:32:26,669 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: LNNBDDEZ8SD345645
|
||
2025-12-12 10:32:26,669 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: JAECOO J7(T1EJ)
|
||
2025-12-12 10:32:26,669 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: 刘娇龙
|
||
2025-12-12 10:32:26,669 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 1024:车辆处于深度睡眠中,远程无法获取T-box日志,问题有点复杂不好定位,需要客户进站取T-box日志和DMC日志
|
||
2025-12-12 10:32:26,671 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-12 10:32:26,672 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-12 10:32:26,672 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-12 10:32:26,672 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-12 10:32:26,672 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-12 10:32:26,673 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': '1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:User not able to enter into member center neither mobile phon...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761148800000, 'Module(模块)': '生态/ecologically', 'Source': 'Mail', 'TR Description': 'User not able to enter into member center neither mobile phone nor QR code.', 'TR Level': 'Low', 'TR Number': 'TR864', 'TR Status': 'Processing', 'TR tracking': '23/10: DMC logs attached as well as vieos of the issue.', 'Type of problem': 'Problem with auth in member center', 'VIN|sim': 'LNNBDDEZXSD449358', 'Vehicle Type01': 'EXEED VX FL(M36T)', 'Wilfulness(责任人)': '袁清', '处理过程': '1024: DMC logs attached as well as vieos of the issue.', '当前问题状态': '1027:确认手机网络及APP版本正常,尝试清除APP缓存并重新登录,检查QR码扫描权限是否开启,重启手机和车机,若仍无法进入会员中心,建议联系售后进行远程诊断或进站排查系统故障。\n1024: DMC logs attached as well as vieos of the issue.'}
|
||
2025-12-12 10:32:26,674 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-12 10:32:26,674 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 1208:经分析当前工单进展:用户无法通过手机号或二维码登录会员中心,且已上传DMC日志及问题视频(时间戳1024),说明远程行为已完整复现,初步排除用户操作误触可能。
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:User not able to enter into member center neither mobile phon...
|
||
2025-12-12 10:32:26,675 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Vsevolod Tsoi
|
||
2025-12-12 10:32:26,675 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1761148800000
|
||
2025-12-12 10:32:26,675 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: 生态/ecologically
|
||
2025-12-12 10:32:26,676 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-12 10:32:26,676 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: User not able to enter into member center neither mobile phone nor QR code.
|
||
2025-12-12 10:32:26,676 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-12 10:32:26,676 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR864
|
||
2025-12-12 10:32:26,676 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Processing
|
||
2025-12-12 10:32:26,677 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 23/10: DMC logs attached as well as vieos of the issue.
|
||
2025-12-12 10:32:26,677 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: Problem with auth in member center
|
||
2025-12-12 10:32:26,677 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: LNNBDDEZXSD449358
|
||
2025-12-12 10:32:26,678 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: EXEED VX FL(M36T)
|
||
2025-12-12 10:32:26,678 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: 袁清
|
||
2025-12-12 10:32:26,678 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 1024: DMC logs attached as well as vieos of the issue.
|
||
2025-12-12 10:32:26,680 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-12 10:32:26,680 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-12 10:32:26,680 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-12 10:32:26,681 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-12 10:32:26,681 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-12 10:32:26,682 - src.integrations.workorder_sync - INFO - 开始转换飞书字段: {'AI建议': '1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:\n模拟LLM响应: \n作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:\n\n问题描述:Abnormal traffic consumption\n\n相关背景信息:\n相关知识库信息:\n- TR866 - Traf...', 'Created by': 'Vsevolod Tsoi', 'Date creation': 1761235200000, 'Module(模块)': 'DMC', 'Source': 'Mail', 'TR Description': 'Abnormal traffic consumption', 'TR Level': 'Low', 'TR Number': 'TR866', 'TR Status': 'Analysising', 'TR tracking': '24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi \n24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached', 'Type of problem': 'Traffic is over', 'VIN|sim': 'XEYDD14B3SA012164', 'Vehicle Type01': 'TEST', 'Wilfulness(责任人)': 'Vsevolod Tsoi', '处理过程': '1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf', '当前问题状态': '1027:流量异常可能与导航应用后台持续联网有关,建议关闭Navi自动更新地图功能并限制后台数据使用,检查车机系统是否存在异常进程,如问题依旧,建议进站检测DMC模块日志及SIM卡通信状态,必要时升级系统或更换模块。\n1024:建议用户抓去DMC日志回传分析\n1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf'}
|
||
2025-12-12 10:32:26,683 - src.integrations.flexible_field_mapper - INFO - 开始转换字段: ['AI建议', 'Created by', 'Date creation', 'Module(模块)', 'Source', 'TR Description', 'TR Level', 'TR Number', 'TR Status', 'TR tracking', 'Type of problem', 'VIN|sim', 'Vehicle Type01', 'Wilfulness(责任人)', '处理过程', '当前问题状态']
|
||
2025-12-12 10:32:26,683 - src.integrations.flexible_field_mapper - INFO - 映射字段 AI建议 -> ai_suggestion: 1208:您好,感谢您反馈异常流量消耗问题。结合当前工单进展(已建议抓取DMC日志、用户确认仅使用导航且3天消耗3.12GB,症状与E0X车型TR866案例高度一致),现提供专业分析与处理建议如下:
|
||
模拟LLM响应:
|
||
作为技术支持专家,请基于以下问题描述为工单提供专业的处理建议:
|
||
|
||
问题描述:Abnormal traffic consumption
|
||
|
||
相关背景信息:
|
||
相关知识库信息:
|
||
- TR866 - Traf...
|
||
2025-12-12 10:32:26,684 - src.integrations.flexible_field_mapper - INFO - 映射字段 Created by -> created_by: Vsevolod Tsoi
|
||
2025-12-12 10:32:26,684 - src.integrations.flexible_field_mapper - INFO - 映射字段 Date creation -> created_at: 1761235200000
|
||
2025-12-12 10:32:26,684 - src.integrations.flexible_field_mapper - INFO - 映射字段 Module(模块) -> module: DMC
|
||
2025-12-12 10:32:26,684 - src.integrations.flexible_field_mapper - INFO - 映射字段 Source -> source: Mail
|
||
2025-12-12 10:32:26,684 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Description -> description: Abnormal traffic consumption
|
||
2025-12-12 10:32:26,685 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Level -> priority: Low
|
||
2025-12-12 10:32:26,685 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Number -> order_id: TR866
|
||
2025-12-12 10:32:26,685 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR Status -> status: Analysising
|
||
2025-12-12 10:32:26,685 - src.integrations.flexible_field_mapper - INFO - 映射字段 TR tracking -> resolution: 24/10: It is recommended that users grab the DMC log back for analysis.@Vsevolod Tsoi
|
||
24/10: user states he use Navi only and no other apps. Consumption volume - 3.12 Gb for 3 days. Same symptom as E0X - traffic package size is plus mines the same - see pdf from MNO attached
|
||
2025-12-12 10:32:26,686 - src.integrations.flexible_field_mapper - INFO - 映射字段 Type of problem -> category: Traffic is over
|
||
2025-12-12 10:32:26,686 - src.integrations.flexible_field_mapper - INFO - 映射字段 VIN|sim -> vin_sim: XEYDD14B3SA012164
|
||
2025-12-12 10:32:26,686 - src.integrations.flexible_field_mapper - INFO - 映射字段 Vehicle Type01 -> vehicle_type: TEST
|
||
2025-12-12 10:32:26,687 - src.integrations.flexible_field_mapper - INFO - 映射字段 Wilfulness(责任人) -> wilfulness: Vsevolod Tsoi
|
||
2025-12-12 10:32:26,687 - src.integrations.flexible_field_mapper - INFO - 映射字段 处理过程 -> resolution: 1024:建议用户抓去DMC日志回传分析
|
||
1024:用户表示他只使用Navi,不使用其他应用程序。 消耗量-3.12 Gb,3天。 与E0X相同的症状-流量包大小加上地雷相同-见所附MNO的pdf
|
||
2025-12-12 10:32:26,689 - src.integrations.flexible_field_mapper - INFO - 飞书字段 当前问题状态 不存在于数据中
|
||
2025-12-12 10:32:26,690 - src.integrations.flexible_field_mapper - INFO - 字段转换完成: 已映射 15, 未映射 1
|
||
2025-12-12 10:32:26,690 - src.integrations.workorder_sync - INFO - 字段转换统计: 总字段 16, 已映射 15, 未映射 1
|
||
2025-12-12 10:32:26,690 - src.integrations.workorder_sync - WARNING - 未映射字段: ['当前问题状态']
|
||
2025-12-12 10:32:26,691 - src.integrations.workorder_sync - INFO - 字段 '当前问题状态' 的建议映射: {'local_field': 'status', 'similarity': 0.7, 'matched_pattern': '.*状态.*', 'confidence': 'medium', 'reason': "匹配模式 '.*状态.*'"}
|
||
2025-12-12 10:32:26,714 - src.integrations.workorder_sync - INFO - 飞书同步完成: {'success': True, 'total_records': 4, 'synced_count': 4, 'created_count': 3, 'updated_count': 1, 'ai_suggestions_generated': True, 'errors': []}
|
||
2025-12-12 10:32:26,714 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:32:26] "POST /api/feishu-sync/sync-from-feishu HTTP/1.1" 200 -
|
||
2025-12-12 10:32:26,727 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:32:26] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 10:32:55,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:32:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:32:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:32:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:32:55,317 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:32:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:32:55,328 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:32:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:33:55,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:33:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:33:55,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:33:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:33:55,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:33:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:33:55,327 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:33:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:34:55,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:34:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:34:55,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:34:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:34:55,319 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:34:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:34:55,335 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:34:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:35:55,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:35:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:35:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:35:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:35:55,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:35:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:35:55,332 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:35:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:36:55,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:36:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:36:55,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:36:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:36:55,324 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:36:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:36:55,341 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:36:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:37:55,317 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:37:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:37:55,328 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:37:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:37:55,335 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:37:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:37:55,356 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:37:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:38:55,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:38:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:38:55,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:38:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:38:55,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:38:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:38:55,333 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:38:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:39:55,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:39:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:39:55,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:39:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:39:55,327 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:39:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:39:55,341 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:39:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:39:59,648 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:39:59] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:39:59,664 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:39:59] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:39:59,671 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:39:59] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:39:59,684 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:39:59] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:40:02,287 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:40:02,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:07,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:12,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:12] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:40:12,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:17,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:22,287 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:40:22,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:27,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:32,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:40:32,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:37,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:42,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:40:42,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:47,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:52,289 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:40:52,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:55,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:40:55,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:40:57,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:40:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:41:55,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:41:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:41:55,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:41:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:41:55,323 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:41:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:41:55,339 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:41:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:05,149 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:05] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 10:42:05,992 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:05] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 10:42:06,009 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:06] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 10:42:06,020 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:06] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:42:06,031 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:06] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:42:11,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:11] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:16,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:16] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:42:16,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:16] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:21,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:21] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:26,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:26] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:42:26,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:26] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:31,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:31] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:36,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:36] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:42:36,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:36] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:41,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:41] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:46,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:46] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:42:46,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:46] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:51,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:51] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:55,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:42:55,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:55,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:42:55,328 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:42:56,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:56] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:42:56,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:42:56] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:43:01,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:43:01] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:43:06,287 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:43:06] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:43:06,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:43:06] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:43:55,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:43:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:43:55,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:43:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:43:55,326 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:43:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:43:55,327 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:43:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:43:55,343 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:43:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:43:55,360 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:43:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:44:55,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:44:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:44:55,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:44:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:44:55,321 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:44:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:44:55,327 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:44:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:44:55,343 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:44:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:44:55,359 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:44:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:45:55,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:45:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:45:55,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:45:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:45:55,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:45:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:45:55,320 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:45:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:45:55,336 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:45:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:45:55,352 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:45:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:46:55,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:46:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:46:55,321 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:46:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:46:55,328 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:46:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:46:55,335 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:46:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:46:55,350 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:46:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:46:55,360 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:46:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:47:47,574 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:47] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 10:47:47,585 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:47] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:47:47,596 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:47:47,601 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:47] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 10:47:47,613 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:47] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 10:47:52,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:47:52,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:47:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:47:55,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:47:55,326 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:47:55,341 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:47:57,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:47:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:02,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:48:02,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:07,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:12,285 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:12] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:48:12,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:17,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:22,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:48:22,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:27,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:32,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:48:32,317 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:37,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:42,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:48:42,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:47,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:55,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:48:55,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:48:55,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:48:55,325 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:55,341 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:48:55,358 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:48:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:49:55,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:49:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:49:55,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:49:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:49:55,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:49:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:49:55,317 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:49:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:49:55,332 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:49:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:49:55,348 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:49:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:50:55,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:50:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:50:55,320 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:50:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:50:55,328 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:50:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:50:55,329 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:50:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:50:55,349 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:50:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:50:55,367 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:50:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:51:55,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:51:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:51:55,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:51:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:51:55,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:51:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:51:55,319 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:51:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:51:55,334 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:51:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:51:55,351 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:51:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:52:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:52:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:52:55,319 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:52:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:52:55,328 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:52:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:52:55,332 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:52:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:52:55,350 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:52:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:52:55,361 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:52:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:53:55,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:53:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:53:55,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:53:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:53:55,320 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:53:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:53:55,326 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:53:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:53:55,340 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:53:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:53:55,355 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:53:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:54:55,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:54:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:54:55,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:54:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:54:55,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:54:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:54:55,324 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:54:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:54:55,339 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:54:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:54:55,356 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:54:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:55:55,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:55:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:55:55,325 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:55:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:55:55,337 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:55:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:55:55,347 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:55:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:55:55,370 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:55:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:55:55,386 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:55:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:56:55,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:56:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:56:55,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:56:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:56:55,323 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:56:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:56:55,330 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:56:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:56:55,346 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:56:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:56:55,361 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:56:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:57:55,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:57:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:57:55,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:57:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:57:55,320 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:57:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:57:55,328 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:57:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:57:55,343 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:57:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:57:55,356 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:57:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:58:55,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:58:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:58:55,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:58:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:58:55,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:58:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:58:55,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:58:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:58:55,330 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:58:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:58:55,346 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:58:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:59:55,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:59:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:59:55,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:59:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:59:55,321 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:59:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 10:59:55,326 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:59:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:59:55,342 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:59:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 10:59:55,357 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 10:59:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:00:55,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:00:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:00:55,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:00:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:00:55,322 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:00:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:00:55,329 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:00:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:00:55,347 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:00:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:00:55,369 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:00:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:01:55,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:01:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:01:55,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:01:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:01:55,317 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:01:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:01:55,323 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:01:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:01:55,339 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:01:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:01:55,352 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:01:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:02:55,286 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:02:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:02:55,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:02:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:02:55,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:02:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:02:55,319 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:02:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:02:55,333 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:02:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:02:55,347 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:02:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:03:55,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:03:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:03:55,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:03:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:03:55,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:03:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:03:55,323 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:03:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:03:55,338 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:03:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:03:55,353 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:03:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:04:55,289 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:04:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:04:55,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:04:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:04:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:04:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:04:55,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:04:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:04:55,327 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:04:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:04:55,343 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:04:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:05:25,742 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:25] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 11:05:25,759 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:25] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:05:25,771 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:25] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 11:05:25,771 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:25] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:05:25,789 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:25] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 11:05:27,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:05:32,289 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:05:32,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:05:37,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:05:42,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:05:42,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:05:47,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:05:52,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:05:52,339 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:05:55,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:05:55,328 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:05:55,341 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:05:55,360 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:05:57,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:05:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:02,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:06:02,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:07,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:12,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:12] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:06:12,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:17,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:22,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:06:22,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:40,866 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:40] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 11:06:40,881 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:40] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:06:40,896 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:40] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:40,900 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:40] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 11:06:40,918 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:40] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 11:06:42,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:06:42,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:47,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:52,286 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:06:52,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:55,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:06:55,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:06:55,321 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:55,339 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:06:57,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:06:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:02,289 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:07:02,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:07,305 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:12,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:12] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:07:12,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:17,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:19,874 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:19] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 11:07:22,288 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:22] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:07:22,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:22] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:27,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:27] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:32,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:32] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:07:32,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:32] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:37,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:37] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:39,927 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:39] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 11:07:39,937 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:39] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:07:39,939 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:39] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 11:07:39,957 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:39] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:39,960 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:39] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 11:07:41,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:41] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:42,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:07:42,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:46,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:46] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:07:46,317 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:46] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:47,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:51,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:51] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:52,287 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:07:52,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:55,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:07:55,321 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:56,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:56] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:07:56,309 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:56] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:07:57,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:07:57] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:01,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:01] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:02,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:02] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:02,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:02] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:06,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:06] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:06,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:06] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:07,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:07] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:11,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:11] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:12,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:12] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:12,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:12] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:16,318 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:16] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:16,338 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:16] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:17,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:17] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:21,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:21] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:26,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:26] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:26,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:26] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:31,307 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:31] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:36,285 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:36] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:36,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:36] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:39,193 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:39] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 11:08:39,207 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:39] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:39,223 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:39] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 11:08:39,225 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:39] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:39,242 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:39] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 11:08:42,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:42] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:42,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:42] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:47,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:47] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:52,269 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:52] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:52,286 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:52] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:55,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:55,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:08:55,321 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:08:55,336 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:08:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:00,360 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:00] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 11:09:00,370 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:00,380 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:00] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 11:09:00,393 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:00,402 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:00] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 11:09:00,898 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:01,242 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:01] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 11:09:01,254 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:01] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:01,260 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:01] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 11:09:01,275 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:01] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:01,284 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:01] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 11:09:05,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:05] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:06,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:06] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:06,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:06] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:10,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:10] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:10,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:10] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:11,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:11] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:15,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:15] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:16,287 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:16] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:16,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:16] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:20,286 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:20] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:20,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:20] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:21,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:21] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:25,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:25] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:26,296 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:26] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:26,311 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:26] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:30,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:30] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:30,316 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:30] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:31,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:31] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:35,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:35] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:36,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:36] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:36,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:36] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:40,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:40] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:40,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:40] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:41,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:41] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:45,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:45] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:46,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:46] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:46,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:46] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:50,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:50] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:50,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:51,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:51] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:55,313 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:09:56,290 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:56] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:09:56,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:09:56] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:00,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:10:00,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:14,404 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 11:10:14,719 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 11:10:14,720 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 11:10:16,639 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 11:10:16,648 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 11:10:16,755 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 11:10:16,756 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 11:10:16,780 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 11:10:16,787 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-12 11:10:16,787 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-12 11:10:22,708 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:22] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 11:10:22,795 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:22] "[36mGET /static/css/design-system.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-12 11:10:22,799 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:22] "[36mGET /static/css/style.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-12 11:10:22,801 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:22] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 11:10:22,803 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:22] "[36mGET /static/js/services/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 11:10:22,806 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:22] "[36mGET /static/js/components/NotificationManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 11:10:22,810 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:22] "[36mGET /static/js/components/AlertManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 11:10:22,814 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:22] "[36mGET /static/js/app-new.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 11:10:22,816 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:22] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 11:10:22,831 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:22] "[36mGET /static/css/design-system.css HTTP/1.1[0m" 304 -
|
||
2025-12-12 11:10:23,625 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,626 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,632 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,639 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,654 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,657 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,659 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,665 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,665 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,667 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,675 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,745 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,767 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,776 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 11:10:23,789 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:23] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 11:10:26,751 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:26] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:26,752 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:26] "GET /api/agent/tools/stats HTTP/1.1" 200 -
|
||
2025-12-12 11:10:27,501 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:27] "GET /api/alerts?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 11:10:28,637 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:28] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:28,660 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:28] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 11:10:28,671 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:28] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 11:10:28,681 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:28] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 11:10:29,053 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:29] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 11:10:30,928 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:30] "GET /api/workorders?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 11:10:33,628 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:33] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:10:33,641 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:33] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:36,081 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:36] "GET /api/workorders/4 HTTP/1.1" 200 -
|
||
2025-12-12 11:10:37,804 - src.knowledge_base.knowledge_manager - WARNING - 知识库中没有活跃条目
|
||
2025-12-12 11:10:38,639 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:38] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:40,980 - src.core.llm_client - INFO - API请求成功
|
||
2025-12-12 11:10:40,989 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:40] "POST /api/workorders/4/ai-suggestion HTTP/1.1" 200 -
|
||
2025-12-12 11:10:43,624 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:43] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:10:43,639 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:43] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:49,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:49] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:54,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:54] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:10:54,308 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 11:10:54,313 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 11:10:54,345 - src.core.database - ERROR - 数据库操作失败: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:10:54,348 - src.web.error_handlers - ERROR - 未处理错误 in get_health: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlite3.OperationalError: no such column: work_orders.assigned_module
|
||
|
||
The above exception was the direct cause of the following exception:
|
||
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2355, in _handle_dbapi_exception
|
||
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:10:54,350 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:54] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:54,365 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8) - None
|
||
2025-12-12 11:10:59,289 - src.core.database - ERROR - 数据库操作失败: <sqlite3.Connection object at 0x000001F67F6BCD60> returned NULL without setting an exception
|
||
2025-12-12 11:10:59,290 - src.web.error_handlers - ERROR - 未处理错误 in get_health: <sqlite3.Connection object at 0x000001F67F6BCD60> returned NULL without setting an exception
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2358, in _handle_dbapi_exception
|
||
raise exc_info[1].with_traceback(exc_info[2])
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
SystemError: <sqlite3.Connection object at 0x000001F67F6BCD60> returned NULL without setting an exception
|
||
2025-12-12 11:10:59,295 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:10:59] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:10:59,297 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: <sqlite3.Connection object at 0x000001F67F6BCD60> returned NULL without setting an exception - None
|
||
2025-12-12 11:11:04,297 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:04] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:11:04,306 - src.core.database - ERROR - 数据库操作失败: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:04,309 - src.web.error_handlers - ERROR - 未处理错误 in get_health: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlite3.OperationalError: no such column: work_orders.assigned_module
|
||
|
||
The above exception was the direct cause of the following exception:
|
||
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2355, in _handle_dbapi_exception
|
||
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:04,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:04] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:11:04,318 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8) - None
|
||
2025-12-12 11:11:11,602 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 11:11:11,965 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 11:11:11,966 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 11:11:13,992 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 11:11:14,002 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 11:11:14,115 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 11:11:14,115 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 11:11:14,138 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 11:11:14,144 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-12 11:11:14,145 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-12 11:11:14,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:14] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:11:14,307 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 11:11:14,312 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 11:11:14,329 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:14] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:11:14,339 - src.core.database - ERROR - 数据库操作失败: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:14,341 - src.web.error_handlers - ERROR - 未处理错误 in get_health: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlite3.OperationalError: no such column: work_orders.assigned_module
|
||
|
||
The above exception was the direct cause of the following exception:
|
||
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2355, in _handle_dbapi_exception
|
||
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:14,354 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8) - None
|
||
2025-12-12 11:11:19,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:19] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:11:19,304 - src.core.database - ERROR - 数据库操作失败: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:19,306 - src.web.error_handlers - ERROR - 未处理错误 in get_health: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlite3.OperationalError: no such column: work_orders.assigned_module
|
||
|
||
The above exception was the direct cause of the following exception:
|
||
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2355, in _handle_dbapi_exception
|
||
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:19,313 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8) - None
|
||
2025-12-12 11:11:24,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:24] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:11:24,306 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:24] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:11:24,307 - src.core.database - ERROR - 数据库操作失败: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:24,309 - src.web.error_handlers - ERROR - 未处理错误 in get_health: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlite3.OperationalError: no such column: work_orders.assigned_module
|
||
|
||
The above exception was the direct cause of the following exception:
|
||
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2355, in _handle_dbapi_exception
|
||
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:24,316 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8) - None
|
||
2025-12-12 11:11:29,292 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:29] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:11:29,301 - src.core.database - ERROR - 数据库操作失败: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:29,302 - src.web.error_handlers - ERROR - 未处理错误 in get_health: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlite3.OperationalError: no such column: work_orders.assigned_module
|
||
|
||
The above exception was the direct cause of the following exception:
|
||
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2355, in _handle_dbapi_exception
|
||
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:29,308 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8) - None
|
||
2025-12-12 11:11:34,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:34] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:11:34,311 - src.core.database - ERROR - 数据库操作失败: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:34,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:34] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:11:34,312 - src.web.error_handlers - ERROR - 未处理错误 in get_health: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlite3.OperationalError: no such column: work_orders.assigned_module
|
||
|
||
The above exception was the direct cause of the following exception:
|
||
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2355, in _handle_dbapi_exception
|
||
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:34,318 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8) - None
|
||
2025-12-12 11:11:39,301 - src.core.database - ERROR - 数据库操作失败: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:39,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:39] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:11:39,303 - src.web.error_handlers - ERROR - 未处理错误 in get_health: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlite3.OperationalError: no such column: work_orders.assigned_module
|
||
|
||
The above exception was the direct cause of the following exception:
|
||
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2355, in _handle_dbapi_exception
|
||
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:39,311 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8) - None
|
||
2025-12-12 11:11:44,299 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:44] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:11:44,313 - src.core.database - ERROR - 数据库操作失败: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:44,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:44] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:11:44,315 - src.web.error_handlers - ERROR - 未处理错误 in get_health: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlite3.OperationalError: no such column: work_orders.assigned_module
|
||
|
||
The above exception was the direct cause of the following exception:
|
||
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2355, in _handle_dbapi_exception
|
||
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:44,322 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8) - None
|
||
2025-12-12 11:11:55,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 11:11:55,313 - src.core.database - ERROR - 数据库操作失败: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:55,314 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 11:11:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 11:11:55,314 - src.web.error_handlers - ERROR - 未处理错误 in get_health: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
Traceback (most recent call last):
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlite3.OperationalError: no such column: work_orders.assigned_module
|
||
|
||
The above exception was the direct cause of the following exception:
|
||
|
||
Traceback (most recent call last):
|
||
File "D:\code\assist\src\web\error_handlers.py", line 20, in wrapper
|
||
return func(*args, **kwargs)
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\code\assist\src\web\blueprints\core.py", line 32, in get_health
|
||
open_wos = session.query(WorkOrder).filter(WorkOrder.status == 'open').count()
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 3112, in count
|
||
self._legacy_from_self(col).enable_eagerloads(False).scalar()
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2805, in scalar
|
||
ret = self.one()
|
||
^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2778, in one
|
||
return self._iter().one() # type: ignore
|
||
^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\query.py", line 2827, in _iter
|
||
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2362, in execute
|
||
return self._execute_internal(
|
||
^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\session.py", line 2247, in _execute_internal
|
||
result: Result[Any] = compile_state_cls.orm_execute_statement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\orm\context.py", line 293, in orm_execute_statement
|
||
result = conn.execute(
|
||
^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1418, in execute
|
||
return meth(
|
||
^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\sql\elements.py", line 515, in _execute_on_connection
|
||
return connection._execute_clauseelement(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1640, in _execute_clauseelement
|
||
ret = self._execute_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
|
||
return self._exec_single_context(
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
|
||
self._handle_dbapi_exception(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 2355, in _handle_dbapi_exception
|
||
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
|
||
self.dialect.do_execute(
|
||
File "D:\Programs\Python\Python311\Lib\site-packages\sqlalchemy\engine\default.py", line 941, in do_execute
|
||
cursor.execute(statement, parameters)
|
||
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 11:11:55,321 - src.web.error_handlers - ERROR - 错误响应: 服务器内部错误: (sqlite3.OperationalError) no such column: work_orders.assigned_module
|
||
[SQL: SELECT count(*) AS count_1
|
||
FROM (SELECT work_orders.id AS work_orders_id, work_orders.order_id AS work_orders_order_id, work_orders.title AS work_orders_title, work_orders.description AS work_orders_description, work_orders.category AS work_orders_category, work_orders.priority AS work_orders_priority, work_orders.status AS work_orders_status, work_orders.created_at AS work_orders_created_at, work_orders.updated_at AS work_orders_updated_at, work_orders.resolution AS work_orders_resolution, work_orders.satisfaction_score AS work_orders_satisfaction_score, work_orders.feishu_record_id AS work_orders_feishu_record_id, work_orders.assignee AS work_orders_assignee, work_orders.solution AS work_orders_solution, work_orders.ai_suggestion AS work_orders_ai_suggestion, work_orders.source AS work_orders_source, work_orders.module AS work_orders_module, work_orders.created_by AS work_orders_created_by, work_orders.wilfulness AS work_orders_wilfulness, work_orders.date_of_close AS work_orders_date_of_close, work_orders.vehicle_type AS work_orders_vehicle_type, work_orders.vin_sim AS work_orders_vin_sim, work_orders.app_remote_control_version AS work_orders_app_remote_control_version, work_orders.hmi_sw AS work_orders_hmi_sw, work_orders.parent_record AS work_orders_parent_record, work_orders.has_updated_same_day AS work_orders_has_updated_same_day, work_orders.operating_time AS work_orders_operating_time, work_orders.assigned_module AS work_orders_assigned_module, work_orders.module_owner AS work_orders_module_owner, work_orders.dispatcher AS work_orders_dispatcher, work_orders.dispatch_time AS work_orders_dispatch_time, work_orders.region AS work_orders_region
|
||
FROM work_orders
|
||
WHERE work_orders.status = ?) AS anon_1]
|
||
[parameters: ('open',)]
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8) - None
|
||
2025-12-12 13:31:39,178 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 13:31:39,482 - src.core.database - INFO - 数据库初始化成功
|
||
2025-12-12 13:31:39,483 - __main__ - INFO - 跳过系统检查,直接启动服务...
|
||
2025-12-12 13:31:41,339 - src.core.backup_manager - INFO - 备份数据库初始化成功: tsp_assistant.db
|
||
2025-12-12 13:31:41,350 - src.integrations.config_manager - INFO - 配置加载成功
|
||
2025-12-12 13:31:41,453 - werkzeug - INFO - [31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
|
||
* Running on all addresses (0.0.0.0)
|
||
* Running on http://127.0.0.1:5000
|
||
* Running on http://10.105.212.207:5000
|
||
2025-12-12 13:31:41,454 - werkzeug - INFO - [33mPress CTRL+C to quit[0m
|
||
2025-12-12 13:31:41,478 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:41,479 - src.web.websocket_server - INFO - 启动WebSocket服务器: ws://localhost:8765
|
||
2025-12-12 13:31:41,485 - websockets.server - INFO - server listening on 127.0.0.1:8765
|
||
2025-12-12 13:31:41,486 - websockets.server - INFO - server listening on [::1]:8765
|
||
2025-12-12 13:31:43,576 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:43] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 13:31:43,860 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:43] "[36mGET /static/css/design-system.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-12 13:31:43,865 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:43] "[36mGET /static/js/app-new.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 13:31:43,870 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:43] "[36mGET /static/js/dashboard.js?v=1.0.9 HTTP/1.1[0m" 304 -
|
||
2025-12-12 13:31:43,872 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:43] "[36mGET /static/css/style.css?v=1.0.0 HTTP/1.1[0m" 304 -
|
||
2025-12-12 13:31:43,881 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:43] "[36mGET /static/css/design-system.css HTTP/1.1[0m" 304 -
|
||
2025-12-12 13:31:43,916 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:43] "[36mGET /static/js/core/store.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 13:31:43,934 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:43] "[36mGET /static/js/components/AlertManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 13:31:43,963 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:43] "[36mGET /static/js/services/api.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 13:31:43,971 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:43] "[36mGET /static/js/components/NotificationManager.js HTTP/1.1[0m" 304 -
|
||
2025-12-12 13:31:44,397 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,400 - src.agent_assistant - INFO - TSP Agent助手初始化完成
|
||
2025-12-12 13:31:44,401 - src.web.service_manager - INFO - 服务 agent_assistant 已初始化
|
||
2025-12-12 13:31:44,405 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,415 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,422 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:44,426 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,429 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:44,437 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:44,440 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:44,443 - src.web.service_manager - INFO - 服务 chat_manager 已初始化
|
||
2025-12-12 13:31:44,445 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,446 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:44,447 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,451 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:44,453 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 13:31:44,457 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,458 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,459 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 13:31:44,460 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:44,475 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:44,483 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 13:31:44,496 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:44,500 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,502 - src.knowledge_base.knowledge_manager - INFO - 向量化器加载成功,包含 10 个条目
|
||
2025-12-12 13:31:44,507 - src.web.service_manager - INFO - 服务 assistant 已初始化
|
||
2025-12-12 13:31:44,527 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,529 - src.config.unified_config - WARNING - 无法加载默认LLM配置,使用内置默认值: No module named 'config.llm_config'
|
||
2025-12-12 13:31:44,530 - src.config.unified_config - INFO - 配置文件加载成功
|
||
2025-12-12 13:31:44,530 - src.integrations.ai_suggestion_service - INFO - 使用LLM配置: qwen - qwen-plus-latest
|
||
2025-12-12 13:31:44,533 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Number -> order_id
|
||
2025-12-12 13:31:44,538 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Description -> description
|
||
2025-12-12 13:31:44,539 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,541 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Type of problem -> category
|
||
2025-12-12 13:31:44,543 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Level -> priority
|
||
2025-12-12 13:31:44,545 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR Status -> status
|
||
2025-12-12 13:31:44,546 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Source -> source
|
||
2025-12-12 13:31:44,547 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date creation -> created_at
|
||
2025-12-12 13:31:44,549 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 处理过程 -> resolution
|
||
2025-12-12 13:31:44,550 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: TR tracking -> resolution
|
||
2025-12-12 13:31:44,552 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Created by -> created_by
|
||
2025-12-12 13:31:44,560 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,560 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Module(模块) -> module
|
||
2025-12-12 13:31:44,561 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Wilfulness(责任人) -> wilfulness
|
||
2025-12-12 13:31:44,562 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Date of close TR -> date_of_close
|
||
2025-12-12 13:31:44,565 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Vehicle Type01 -> vehicle_type
|
||
2025-12-12 13:31:44,567 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: VIN|sim -> vin_sim
|
||
2025-12-12 13:31:44,568 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,569 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: App remote control version -> app_remote_control_version
|
||
2025-12-12 13:31:44,571 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: HMI SW -> hmi_sw
|
||
2025-12-12 13:31:44,575 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: 父记录 -> parent_record
|
||
2025-12-12 13:31:44,578 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Has it been updated on the same day -> has_updated_same_day
|
||
2025-12-12 13:31:44,579 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Operating time -> operating_time
|
||
2025-12-12 13:31:44,581 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: AI建议 -> ai_suggestion
|
||
2025-12-12 13:31:44,583 - src.integrations.flexible_field_mapper - INFO - 添加字段映射: Issue Start Time -> updated_at
|
||
2025-12-12 13:31:44,584 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 13:31:44,593 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:44] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 13:31:46,065 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:46] "GET /api/alerts?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:48,331 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:48] "GET /api/knowledge?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,420 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,434 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,441 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,452 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,506 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET / HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,755 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET /static/css/design-system.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,831 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET /static/css/style.css?v=1.0.0 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,832 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET /static/js/core/store.js HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,834 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET /static/js/services/api.js HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,836 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET /static/js/components/NotificationManager.js HTTP/1.1" 200 -
|
||
2025-12-12 13:31:49,837 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:49] "GET /static/js/components/AlertManager.js HTTP/1.1" 200 -
|
||
2025-12-12 13:31:50,073 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:50] "GET /static/css/design-system.css HTTP/1.1" 200 -
|
||
2025-12-12 13:31:50,149 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:50] "GET /static/js/app-new.js HTTP/1.1" 200 -
|
||
2025-12-12 13:31:50,149 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:50] "GET /static/js/dashboard.js?v=1.0.9 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:50,788 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:50] "GET /api/rules HTTP/1.1" 200 -
|
||
2025-12-12 13:31:50,789 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:50] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 13:31:50,793 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:50] "GET /api/agent/status HTTP/1.1" 200 -
|
||
2025-12-12 13:31:50,804 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:50] "GET /api/chat/sessions HTTP/1.1" 200 -
|
||
2025-12-12 13:31:50,812 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:31:51,096 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:51] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:51,101 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:51] "GET /api/workorders HTTP/1.1" 200 -
|
||
2025-12-12 13:31:51,110 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:51] "GET /api/system/info HTTP/1.1" 200 -
|
||
2025-12-12 13:31:51,111 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:51] "GET /api/knowledge/stats HTTP/1.1" 200 -
|
||
2025-12-12 13:31:51,117 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:51] "GET /api/feishu-sync/config HTTP/1.1" 200 -
|
||
2025-12-12 13:31:51,122 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:51] "GET /api/feishu-sync/status HTTP/1.1" 200 -
|
||
2025-12-12 13:31:51,431 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:51] "GET /api/analytics?days=7&dimension=performance HTTP/1.1" 200 -
|
||
2025-12-12 13:31:51,682 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:51] "[33mGET /favicon.ico HTTP/1.1[0m" 404 -
|
||
2025-12-12 13:31:51,765 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:51] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 13:31:52,084 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:52] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 13:31:52,346 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:52] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 13:31:52,530 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:52] "GET /api/workorders?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:54,394 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:54] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 13:31:54,413 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:54] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:31:54,831 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:54] "GET /api/conversations?page=1&per_page=10 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:55,410 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:55] "GET /api/token-monitor/stats HTTP/1.1" 200 -
|
||
2025-12-12 13:31:55,431 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:55] "GET /api/token-monitor/records HTTP/1.1" 200 -
|
||
2025-12-12 13:31:55,434 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:55] "GET /api/token-monitor/chart HTTP/1.1" 200 -
|
||
2025-12-12 13:31:55,791 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:31:55,850 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:55] "GET /api/alerts?per_page=1000 HTTP/1.1" 200 -
|
||
2025-12-12 13:31:55,857 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:55] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 13:31:55,958 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:55] "GET /api/ai-monitor/stats HTTP/1.1" 200 -
|
||
2025-12-12 13:31:55,967 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:55] "GET /api/ai-monitor/model-comparison HTTP/1.1" 200 -
|
||
2025-12-12 13:31:55,971 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:55] "GET /api/ai-monitor/error-distribution HTTP/1.1" 200 -
|
||
2025-12-12 13:31:55,975 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:55] "GET /api/ai-monitor/error-log HTTP/1.1" 200 -
|
||
2025-12-12 13:31:56,174 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:56] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 13:31:57,938 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:57] "GET /api/token-monitor/stats HTTP/1.1" 200 -
|
||
2025-12-12 13:31:57,952 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:57] "GET /api/token-monitor/records HTTP/1.1" 200 -
|
||
2025-12-12 13:31:57,957 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:57] "GET /api/token-monitor/chart HTTP/1.1" 200 -
|
||
2025-12-12 13:31:59,408 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:59] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:31:59,479 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:31:59] "GET /api/settings HTTP/1.1" 200 -
|
||
2025-12-12 13:32:00,082 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:00] "GET /api/system-optimizer/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:00,090 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:00] "GET /api/analytics HTTP/1.1" 200 -
|
||
2025-12-12 13:32:00,141 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:00] "GET /api/system-optimizer/security-settings HTTP/1.1" 200 -
|
||
2025-12-12 13:32:00,143 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:00] "GET /api/system-optimizer/traffic-settings HTTP/1.1" 200 -
|
||
2025-12-12 13:32:00,144 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:00] "GET /api/system-optimizer/cost-settings HTTP/1.1" 200 -
|
||
2025-12-12 13:32:00,150 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:00] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 13:32:00,194 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:00] "GET /api/analytics?timeRange=30&dimension=workorders HTTP/1.1" 200 -
|
||
2025-12-12 13:32:00,789 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:00] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 13:32:00,811 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:05,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:05] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 13:32:05,324 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:05] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:10,303 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:10] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:15,293 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:15] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 13:32:15,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:15] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:20,304 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:20] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:25,300 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:25] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 13:32:25,312 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:25] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:30,310 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:30] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:35,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:35] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 13:32:35,315 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:35] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:40,298 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:40] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:45,291 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:45] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 13:32:45,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:45] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:50,302 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:50] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:32:55,294 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:55] "GET /api/alerts HTTP/1.1" 200 -
|
||
2025-12-12 13:32:55,308 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:32:55] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:33:00,301 - werkzeug - INFO - 127.0.0.1 - - [12/Dec/2025 13:33:00] "GET /api/monitor/status HTTP/1.1" 200 -
|
||
2025-12-12 13:34:25,979 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 13:34:47,469 - src.core.database - ERROR - 数据库初始化失败: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on 'jeason.online' ([WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。)")
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 13:34:47,470 - __main__ - ERROR - 数据库连接失败,退出启动
|
||
2025-12-12 13:35:02,972 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 13:35:24,389 - src.core.database - ERROR - 数据库初始化失败: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on 'jeason.online' ([WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。)")
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 13:35:24,391 - __main__ - ERROR - 数据库连接失败,退出启动
|
||
2025-12-12 13:37:51,892 - __main__ - INFO - 正在启动TSP智能助手综合管理平台...
|
||
2025-12-12 13:38:13,315 - src.core.database - ERROR - 数据库初始化失败: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on '43.134.68.207' ([WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。)")
|
||
(Background on this error at: https://sqlalche.me/e/20/e3q8)
|
||
2025-12-12 13:38:13,317 - __main__ - ERROR - 数据库连接失败,退出启动
|